13# ifdef COMPILING_DLL_SimulatedRealityOpenGL
14# define DIMENCOSR_API __declspec(dllexport)
16# define DIMENCOSR_API __declspec(dllimport)
41#pragma warning(suppress: 4251)
121 [[deprecated(
"Use the canWeave(...) functions that accept parameters")]]
131 bool canWeave(
unsigned int width,
unsigned int height);
142 bool canWeave(
unsigned int width,
unsigned int height,
unsigned int xOffset,
unsigned int yOffset);
151 void weave(
unsigned int width,
unsigned int height);
162 void weave(
unsigned int width,
unsigned int height,
unsigned int xOffset,
unsigned int yOffset);
187 [[deprecated(
"use the constructor of GLWeaver directly")]]
197 [[deprecated(
"For best performance use the PredictingGLWeaver interface")]]
226 [[deprecated(
"Use non-deprecated constructors")]]
enum DIMENCOSR_API WeaverACTMode
Definition: WeaverTypes.h:29
class to be used to add Weaving to OpenGL based SR applications
Definition: glweaver.h:33
GLuint getFrameBuffer()
Returns the buffer that will be used to create a weaved imaged. This buffer expects a side-by-side im...
WeaverACTMode getACTMode() const
Gets the anti-crosstalk mode.
void setACTMode(WeaverACTMode mode)
Sets the anti-crosstalk mode.
void enableLateLatching(bool enable)
Enables late latching. Note that late latching requires applications to call weave() once per frame,...
bool canWeave(unsigned int width, unsigned int height)
Used to determine if software weaving is possible for certain size and visibility to the currently bo...
void weave(unsigned int width, unsigned int height, unsigned int xOffset, unsigned int yOffset)
Can be called to render a weaved image of a certain size to the currently bound framebuffer.
void setContrast(float contrast)
Sets the weaving contrast.
bool canWeave()
Used to determine if software weaving is possible on this device.
void setInputFrameBuffer(GLuint frameBufferID, GLuint renderedTextureID)
Sets the buffer that will be used to create a weaved image.
void setShaderSRGBConversion(bool read, bool write)
Sets whether to apply shader sRGB<->Linear color space conversions to the input framebuffer during we...
void setWindowHandle(HWND handle)
Sets the window handle of the application window. If the weaver was created using a deprecated constr...
void weave(unsigned int width, unsigned int height)
Can be called to render a weaved image of a certain size to the currently bound framebuffer.
bool canWeave(unsigned int width, unsigned int height, unsigned int xOffset, unsigned int yOffset)
Used to determine if software weaving is possible for certain size and visibility to the currently bo...
float getCrosstalkDynamicFactor() const
Gets the anti-crosstalk dynamic factor.
std::unique_ptr< Impl > pimpl
Definition: glweaver.h:35
void setCrosstalkStaticFactor(float factor)
Sets the anti-crosstalk factor.
void setCrosstalkDynamicFactor(float factor)
Sets the anti-crosstalk dynamic factor.
float getCrosstalkStaticFactor() const
Gets the anti-crosstalk factor.
float getContrast() const
Gets the current weaving contrast.
bool isLateLatchingEnabled() const
Determines if late latching is enabled.
Definition: glweaver.h:175
GLWeaver(SR::SRContext &context, unsigned int width, unsigned int height, GLenum bufferFormat)
Constructs a class to be used for weaving an input image of a certain size.
static GLWeaver * create(SR::SRContext &context, unsigned int width, unsigned int height)
Constructs a class to be used for weaving an input image of a certain size.
~GLWeaver()
Handles proper destruction of all weaver related classes and buffers.
GLWeaver(SR::SRContext &context, unsigned int width, unsigned int height)
Constructs a class to be used for weaving an input image of a certain size.
Definition: glweaver.h:216
~PredictingGLWeaver()
Handles proper destruction of all weaver related classes and buffers.
PredictingGLWeaver(SR::SRContext &context, unsigned int width, unsigned int height)
Constructs a class to be used for weaving an input image of a certain size.
uint64_t getLatency()
Get the latency that is used by the weaver. If setLatency has been called, the value set by that func...
void setLatency(uint64_t latency)
Set the latency to match the expected duration of the full rendering pipeline.
PredictingGLWeaver(SR::SRContext &context, unsigned int width, unsigned int height, HWND window)
Constructs a class to be used for weaving an input image of a certain size.
void setLatencyInFrames(uint64_t latencyInFrames)
Set the latency to match the expected duration of the full rendering pipeline in number of frames....
PredictingGLWeaver(SR::SRContext &context, unsigned int width, unsigned int height, GLenum bufferFormat, HWND window)
Constructs a class to be used for weaving an input image of a certain size.
Maintains WorldObject and Sense objects during the application lifetime.
Definition: srcontext.h:75
#define DIMENCOSR_API
Definition: glweaver.h:19
unsigned int GLenum
Definition: glweaver.h:25
int GLsizei
Definition: glweaver.h:24
unsigned int GLuint
Definition: glweaver.h:23
Namespace containing all C++ Simulated Reality classes.
Definition: srconfiguration.h:20