13class VolumeAlgorithmFactory;
17class AnnotationParams;
62 void GetExtents(glm::vec3 *dataMin, glm::vec3 *dataMax, glm::vec3 *userMin, glm::vec3 *userMax)
const;
65 static std::map<std::string, VolumeAlgorithmFactory *> factories;
72 static std::string
GetName() {
return "NULL"; }
93 static_assert(std::is_base_of<VolumeAlgorithm, T>::value,
"Register is not derived from VolumeAlgorithm");
A class for describing visual features displayed in the visualizer.
Abstract base class for a 2D or 3D structured or unstructured grid.
Mixin class that prevents copying.
A class for describing the viewpoint and lights in a 3D VAPOR scene.
virtual VolumeAlgorithm * Create(GLManager *gl, VolumeRenderer *renderer)=0
VolumeAlgorithm::Type type
static std::string GetName()
int LoadSecondaryData(const Grid *grid)
int LoadData(const Grid *grid)
void GetFinalBlendingMode(int *src, int *dst)
void DeleteSecondaryData()
VolumeAlgorithmNull(GLManager *gl, VolumeRenderer *renderer)
bool RequiresChunkedRendering()
VolumeAlgorithm * Create(GLManager *gl, VolumeRenderer *renderer)
VolumeAlgorithmRegistrar()
Strategy pattern for volume rendering algorithms.
void GetExtents(glm::vec3 *dataMin, glm::vec3 *dataMax, glm::vec3 *userMin, glm::vec3 *userMax) const
virtual void SaveDepthBuffer(bool fast)
virtual ~VolumeAlgorithm()
static void Register(VolumeAlgorithmFactory *f)
virtual bool RequiresChunkedRendering()=0
virtual int LoadData(const Grid *grid)=0
AnnotationParams * GetAnnotationParams() const
virtual int CheckHardwareSupport(const Grid *grid) const
VolumeAlgorithm(GLManager *gl, VolumeRenderer *renderer)
virtual float GuestimateFastModeSpeedupFactor() const
virtual void DeleteSecondaryData()=0
static VolumeAlgorithm * NewAlgorithm(const std::string &name, GLManager *gl, VolumeRenderer *renderer)
virtual void GetFinalBlendingMode(int *src, int *dst)=0
VolumeParams * GetParams() const
virtual int LoadSecondaryData(const Grid *grid)=0
Transform * GetDatasetTransform() const
ViewpointParams * GetViewpointParams() const
virtual int Render(bool fast)=0
Contains references to context scope OpenGL data.