Go to the documentation of this file.
28 #ifndef vtkOpenGLRenderWindow_h
29 #define vtkOpenGLRenderWindow_h
31 #include "vtkRenderingOpenGLModule.h"
51 static void SetGlobalMaximumNumberOfMultiSamples(
int val);
52 static int GetGlobalMaximumNumberOfMultiSamples();
69 virtual unsigned char *
GetPixelData(
int x,
int y,
int x2,
int y2,
int front);
70 virtual int GetPixelData(
int x,
int y,
int x2,
int y2,
int front,
86 int front,
int blend=0);
88 int front,
int blend=0);
95 unsigned char *
data,
int front,
107 virtual int GetZbufferData(
int x1,
int y1,
int x2,
int y2,
float* z );
110 virtual int SetZbufferData(
int x1,
int y1,
int x2,
int y2,
float *buffer );
118 void RegisterTextureResource (GLuint
id);
135 virtual void SetSize(
int a[2]);
142 virtual void OpenGLInit();
145 virtual void OpenGLInitState();
148 virtual void OpenGLInitContext();
157 unsigned int GetBackLeftBuffer();
166 unsigned int GetBackRightBuffer();
175 unsigned int GetFrontLeftBuffer();
184 unsigned int GetFrontRightBuffer();
193 unsigned int GetBackBuffer();
202 unsigned int GetFrontBuffer();
253 int GetPixelData(
int x,
int y,
int x2,
int y2,
int front,
unsigned char*
data);
256 unsigned char*
data);
267 int CreateHardwareOffScreenWindow(
int width,
int height);
269 int CreateHardwareOffScreenBuffers(
int width,
int height,
bool bind =
false);
270 void BindHardwareOffScreenBuffers();
277 void DestroyHardwareOffScreenWindow();
279 void UnbindHardwareOffScreenBuffers();
280 void DestroyHardwareOffScreenBuffers();
292 unsigned int TextureObjects[4];
295 int HardwareBufferSize[2];
302 virtual void CreateAWindow() = 0;
307 virtual void DestroyWindow() = 0;
virtual void SetSize(int, int)
virtual int SetRGBACharPixelData(int x, int y, int x2, int y2, unsigned char *data, int front, int blend=0)=0
int NumberOfFrameBuffers
Variables used by the framebuffer-based offscreen method.
virtual bool GetUseOffScreenBuffers()
virtual int GetColorBufferSizes(int *rgba)=0
Get the size of the color buffer.
virtual int GetDepthBufferSize()=0
This method should be defined by the subclass.
dynamic, self-adjusting array of float
virtual int SetRGBAPixelData(int x, int y, int x2, int y2, float *, int front, int blend=0)=0
record modification and/or execution time
virtual int SetUseOffScreenBuffers(bool)
Create and bind offscreen rendering buffers without destroying the current OpenGL context.
vtkTextureUnitManager * TextureUnitManager
dynamic, self-adjusting array of unsigned char
unsigned int FrameBufferObject
int OffScreenUseFrameBuffer
Flag telling if a framebuffer-based offscreen is currently in use.
unsigned int FrontRightBuffer
vtkTypeUInt64 vtkMTimeType
vtkTimeStamp ContextCreationTime
Interface class for querying and using OpenGL extensions.
allocate/free texture units.
bool HardwareOffScreenBuffersBind
int OwnContext
Flag telling if the context has been created here or was inherited.
virtual float * GetZbufferData(int x, int y, int x2, int y2)=0
Set/Get the zbuffer data from the frame buffer.
virtual unsigned char * GetRGBACharPixelData(int x, int y, int x2, int y2, int front)=0
a simple class to control print indentation
unsigned int FrontLeftBuffer
list of point or cell ids
virtual void WaitForCompletion()=0
Block the thread until the actual rendering is finished().
virtual int SetPixelData(int x, int y, int x2, int y2, unsigned char *data, int front)=0
Set/Get the pixel data of an image, transmitted as RGBRGBRGB.
virtual unsigned char * GetPixelData(int x, int y, int x2, int y2, int front)=0
Get the pixel data of an image, transmitted as RGBRGBRGB.
virtual int SetZbufferData(int x, int y, int x2, int y2, float *z)=0
unsigned int BackRightBuffer
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual void StereoUpdate()
Update the system, if needed, due to stereo rendering.
virtual void ReleaseRGBAPixelData(float *data)=0
unsigned int BackLeftBuffer
create a window for renderers to draw into
virtual const char * GetRenderingBackend()
What rendering backend has the user requested.
Wrapper around std::string to keep symbols short.
unsigned int DepthRenderBufferObject
vtkIdList * TextureResourceIds
virtual float * GetRGBAPixelData(int x, int y, int x2, int y2, int front)=0
Same as Get/SetPixelData except that the image also contains an alpha component.