// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen // SPDX-License-Identifier: BSD-3-Clause #ifndef vtkOpenGLVolumeRGBTable_h #define vtkOpenGLVolumeRGBTable_h #include "vtkOpenGLVolumeLookupTable.h" #include "vtkRenderingVolumeOpenGL2Module.h" // For export macro // Forward declarations VTK_ABI_NAMESPACE_BEGIN class vtkOpenGLRenderWindow; //---------------------------------------------------------------------------- class VTKRENDERINGVOLUMEOPENGL2_EXPORT vtkOpenGLVolumeRGBTable : public vtkOpenGLVolumeLookupTable { public: vtkTypeMacro(vtkOpenGLVolumeRGBTable, vtkOpenGLVolumeLookupTable); void PrintSelf(ostream& os, vtkIndent indent) override; static vtkOpenGLVolumeRGBTable* New(); protected: vtkOpenGLVolumeRGBTable(); /** * Update the internal texture object using the color transfer function */ void InternalUpdate(vtkObject* func, int blendMode, double sampleDistance, double unitDistance, int filterValue) override; private: vtkOpenGLVolumeRGBTable(const vtkOpenGLVolumeRGBTable&) = delete; void operator=(const vtkOpenGLVolumeRGBTable&) = delete; }; VTK_ABI_NAMESPACE_END #endif // vtkOpenGLVolumeRGBTable_h