39 #ifndef vtkGPUVolumeRayCastMapper_h 
   40 #define vtkGPUVolumeRayCastMapper_h 
   41 #include <unordered_map>  
   45 #include <vtkRenderingVolumeModule.h>  
   65   vtkSetClampMacro(AutoAdjustSampleDistances, 
vtkTypeBool, 0, 1);
 
   66   vtkGetMacro(AutoAdjustSampleDistances, 
vtkTypeBool);
 
   67   vtkBooleanMacro(AutoAdjustSampleDistances, 
vtkTypeBool);
 
   76   vtkSetClampMacro(LockSampleDistanceToInputSpacing, 
vtkTypeBool, 0, 1);
 
   77   vtkGetMacro(LockSampleDistanceToInputSpacing, 
vtkTypeBool);
 
   78   vtkBooleanMacro(LockSampleDistanceToInputSpacing, 
vtkTypeBool);
 
  120   vtkSetMacro(SampleDistance, 
float);
 
  121   vtkGetMacro(SampleDistance, 
float);
 
  132   vtkSetClampMacro(ImageSampleDistance, 
float, 0.1f, 100.0f);
 
  133   vtkGetMacro(ImageSampleDistance, 
float);
 
  141   vtkSetClampMacro(MinimumImageSampleDistance, 
float, 0.1f, 100.0f);
 
  142   vtkGetMacro(MinimumImageSampleDistance, 
float);
 
  150   vtkSetClampMacro(MaximumImageSampleDistance, 
float, 0.1f, 100.0f);
 
  151   vtkGetMacro(MaximumImageSampleDistance, 
float);
 
  168   vtkSetMacro(FinalColorWindow, 
float);
 
  169   vtkGetMacro(FinalColorWindow, 
float);
 
  170   vtkSetMacro(FinalColorLevel, 
float);
 
  171   vtkGetMacro(FinalColorLevel, 
float);
 
  180   vtkSetMacro(MaxMemoryInBytes, 
vtkIdType);
 
  181   vtkGetMacro(MaxMemoryInBytes, 
vtkIdType);
 
  190   vtkSetClampMacro(MaxMemoryFraction, 
float, 0.1f, 1.0f);
 
  191   vtkGetMacro(MaxMemoryFraction, 
float);
 
  203   vtkSetMacro(ReportProgress, 
bool);
 
  204   vtkGetMacro(ReportProgress, 
bool);
 
  220     double viewDirection[3], 
double viewUp[3]);
 
  258   vtkSetMacro(MaskType, 
int);
 
  259   vtkGetMacro(MaskType, 
int);
 
  260   void SetMaskTypeToBinary();
 
  261   void SetMaskTypeToLabelMap();
 
  273   vtkSetClampMacro(MaskBlendFactor, 
float, 0.0f, 1.0f);
 
  274   vtkGetMacro(MaskBlendFactor, 
float);
 
  303   vtkSetMacro(DepthImageScalarType, 
int);
 
  304   vtkGetMacro(DepthImageScalarType, 
int);
 
  305   void SetDepthImageScalarTypeToUnsignedChar();
 
  306   void SetDepthImageScalarTypeToUnsignedShort();
 
  307   void SetDepthImageScalarTypeToFloat();
 
  324   vtkBooleanMacro(ClampDepthToBackface, 
vtkTypeBool);
 
  375   virtual void GetReductionRatio(
double ratio[3]) = 0;
 
  400   vtkSetMacro(ColorRangeType, 
int);
 
  401   vtkGetMacro(ColorRangeType, 
int);
 
  402   vtkSetMacro(ScalarOpacityRangeType, 
int);
 
  403   vtkGetMacro(ScalarOpacityRangeType, 
int);
 
  404   vtkSetMacro(GradientOpacityRangeType, 
int);
 
  405   vtkGetMacro(GradientOpacityRangeType, 
int);
 
  458   void TransformInput(
const int port);
 
  471   int ValidateInputs();
 
  490     double scalarRange[2], 
int numberOfScalarComponents, 
unsigned int numberOfLevels) = 0;
 
  495   virtual void PostRender(
vtkRenderer* ren, 
int numberOfScalarComponents) = 0;
 
  503   void SetCellFlag(
int cellFlag);
 
  504   void RemovePortInternal(
const int port);
 
  579   virtual void ClipCroppingRegionPlanes();
 
  581   using DataMap = std::unordered_map<int, vtkImageData*>;
 
  585   double ClippedCroppingRegionPlanes[6];