33 #ifndef __vtkOpenGLGPUVolumeRayCastMapper_h
34 #define __vtkOpenGLGPUVolumeRayCastMapper_h
36 #include "vtkRenderingVolumeOpenGLModule.h"
43 class vtkUnsupportedRequiredExtensionsStringStream;
44 class vtkMapDataArrayTextureId;
45 class vtkMapMaskTextureId;
51 class vtkOpacityTable;
53 class vtkKWScalarField;
56 class vtkOpacityTables;
85 static const char *OpenGLErrorMessage(
unsigned int errorCode);
89 static void PrintError(
const char *headerMessage);
102 double datasetBounds[6],
103 double scalarRange[2],
104 int numberOfScalarComponents,
105 unsigned int numberOfLevels);
113 int numberOfScalarComponents);
121 const char *extensionName);
165 int textureExtent[6],
174 int UpdateColorTransferFunction(
vtkVolume *vol,
175 int numberOfScalarComponents);
182 int UpdateOpacityTransferFunction(
vtkVolume *vol,
183 int numberOfScalarComponents,
195 double worldBounds[6],
203 int RenderClippedBoundingBox(
int tcoordFlag,
205 size_t numberOfBlocks,
211 void CopyFBOToTexture();
214 void CleanupRender();
221 int PowerOfTwoGreaterOrEqual(
int x);
224 void CheckFrameBufferStatus();
231 void DisplayReadAndDrawBuffers();
234 void DisplayFrameBufferAttachments();
237 void DisplayFrameBufferAttachment(
unsigned int uattachment);
247 int parallelProjection,
250 int componentMethod);
254 void GetLightingStatus();
265 void ComputeReductionFactor(
double allocatedTime);
288 void ComputeNumberOfCroppingRegions();
291 unsigned int *internalFormat,
292 unsigned int *format,
296 bool TestLoadingScalar(
unsigned int internalFormat,
302 void SlabsFromDatasetToIndex(
double slabsDataSet[6],
303 double slabsPoints[6]);
305 void SlabsFromIndexToDataset(
double slabsPoints[6],
306 double slabsDataSet[6]);
308 const char *GetEnabledString(
unsigned char value);
309 void GetOpenGLState();
313 void UpdateNoiseTexture();
320 double ComputeMinimalSampleDistancePerPixel(
vtkRenderer *renderer,
337 double BoundingBox[8][3];
357 unsigned int TextureObjects[5];
383 double TableRange[2];
410 double LoadedBounds[6];