Rendering/vtkVolumeProVG500Mapper.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00049 #ifndef __vtkVolumeProVG500Mapper_h
00050 #define __vtkVolumeProVG500Mapper_h
00051
00052 #include "vtkVolumeProMapper.h"
00053
00054 #ifdef _WIN32
00055
00056
00057
00058
00059 # if ( defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(_INC_IOSTREAM) )
00060 # define _INC_IOSTREAM
00061 # define _VTK_HACKED_UP_INCLUDE_BLOCKER
00062 # endif
00063 # include "VolumePro/inc/vli.h"
00064 # if defined(_VTK_HACKED_UP_INCLUDE_BLOCKER)
00065 # undef _INC_IOSTREAM
00066 # undef _VTK_HACKED_UP_INCLUDE_BLOCKER
00067 # endif
00068 #else
00069 # include "vli/include/vli.h"
00070 #endif
00071
00072 #ifdef VTK_USE_VOLUMEPRO
00073 #define VTK_VOLUMEPRO_EXPORT VTK_RENDERING_EXPORT
00074 #else
00075 #define VTK_VOLUMEPRO_EXPORT
00076 #endif
00077
00078 class VTK_VOLUMEPRO_EXPORT vtkVolumeProVG500Mapper : public vtkVolumeProMapper
00079 {
00080 public:
00081 vtkTypeRevisionMacro(vtkVolumeProVG500Mapper,vtkVolumeProMapper);
00082 static vtkVolumeProVG500Mapper *New();
00083 virtual void PrintSelf(ostream& os, vtkIndent indent);
00084
00086
00087 virtual void Render( vtkRenderer *, vtkVolume * );
00088 virtual int GetAvailableBoardMemory();
00089 virtual void GetLockSizesForBoardMemory( unsigned int type,
00090 unsigned int *xSize,
00091 unsigned int *ySize,
00092 unsigned int *zSize );
00094 protected:
00095 vtkVolumeProVG500Mapper();
00096 ~vtkVolumeProVG500Mapper();
00097
00098
00099 void UpdateCamera( vtkRenderer *, vtkVolume * );
00100
00101
00102 void UpdateLights( vtkRenderer *, vtkVolume * );
00103
00104
00105
00106 void UpdateProperties( vtkRenderer *, vtkVolume * );
00107
00108
00109
00110 void UpdateVolume( vtkRenderer *, vtkVolume * );
00111
00112
00113 void UpdateCropping( vtkRenderer *, vtkVolume * );
00114
00115
00116 void UpdateCursor( vtkRenderer *, vtkVolume * );
00117
00118
00119 void UpdateCutPlane( vtkRenderer *, vtkVolume * );
00120
00121
00122
00123 virtual void RenderHexagon( vtkRenderer * vtkNotUsed(ren),
00124 vtkVolume * vtkNotUsed(vol),
00125 VLIPixel * vtkNotUsed(basePlane),
00126 int size[2],
00127 VLIVector3D hexagon[6],
00128 VLIVector2D textureCoords[6] )
00129 {(void)size; (void)hexagon; (void)textureCoords;}
00130
00131
00132 void CorrectBasePlaneSize( VLIPixel *inBase, int inSize[2],
00133 VLIPixel **outBase, int outSize[2],
00134 VLIVector2D textureCoords[6] );
00135
00136
00137
00138
00139 int LoadedDataSize[3];
00140
00141 private:
00142 vtkVolumeProVG500Mapper(const vtkVolumeProVG500Mapper&);
00143 void operator=(const vtkVolumeProVG500Mapper&);
00144 };
00145
00146
00147
00148 #endif
00149
00150
00151