VTK  9.2.6
vtkOpenGLVolumeLookupTables.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOpenGLVolumeLookupTables.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
16 /*=============================================================================
17 Copyright and License information
18 =============================================================================*/
25 #ifndef vtkOpenGLVolumeLookupTables_h
26 #define vtkOpenGLVolumeLookupTables_h
27 
28 #include "vtkObject.h"
29 
30 #include <vector> // for std::vector
31 
32 // Forward declarations
33 class vtkWindow;
34 
35 template <class T>
37 {
38 public:
40  void PrintSelf(ostream& os, vtkIndent indent) override;
41 
43 
47  virtual void Create(std::size_t numberOfTables);
48 
52  T* GetTable(std::size_t i) const;
53 
57  std::size_t GetNumberOfTables() const;
58 
63 
64 protected:
65  vtkOpenGLVolumeLookupTables() = default;
67 
68  std::vector<T*> Tables;
69 
70 private:
72  void operator=(const vtkOpenGLVolumeLookupTables&) = delete;
73 };
74 
75 #include "vtkOpenGLVolumeLookupTables.txx" // template implementations
76 
77 #endif // vtkOpenGLVolumeLookupTables_h
78 // VTK-HeaderTest-Exclude: vtkOpenGLVolumeLookupTables.h
abstract base class for most VTK objects
Definition: vtkObject.h:62
virtual void Create(std::size_t numberOfTables)
Create internal lookup tables.
T * GetTable(std::size_t i) const
Get access to the raw table pointer.
window superclass for vtkRenderWindow
Definition: vtkWindow.h:38
~vtkOpenGLVolumeLookupTables() override
a simple class to control print indentation
Definition: vtkIndent.h:39
void ReleaseGraphicsResources(vtkWindow *win)
Release graphics resources.
std::size_t GetNumberOfTables() const
Get number of tables.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Internal class that manages multiple lookup tables.
static vtkOpenGLVolumeLookupTables< T > * New()