27 #ifndef vtkTransformFeedback_h
28 #define vtkTransformFeedback_h
30 #include "vtkRenderingOpenGL2Module.h"
45 void PrintSelf(ostream &os,
vtkIndent indent) override;
61 : Role(role), Identifier(id) {}
81 return this->Varyings;
87 static size_t GetBytesPerVertex(VaryingRole role);
105 vtkSetMacro(NumberOfVertices,
size_t)
106 void SetNumberOfVertices(
int drawMode,
size_t inputVerts);
107 vtkGetMacro(NumberOfVertices,
size_t)
114 size_t GetBufferSize() const;
147 vtkSetMacro(PrimitiveMode,
int)
148 vtkGetMacro(PrimitiveMode,
int)
158 void Allocate(
int nbBuffers,
size_t size,
unsigned int hint);
166 void BindBuffer(
bool allocateOneBuffer = true);
181 vtkGetMacro(BufferData,
void*)
187 void ReleaseGraphicsResources();
194 void ReleaseBufferData(
bool freeBuffer = true);
207 size_t NumberOfVertices;
213 unsigned char *BufferData;
222 case Vertex_ClipCoordinate_F:
223 return 4 *
sizeof(
float);
225 return 4 *
sizeof(
float);
227 return 3 *
sizeof(
float);
232 vtkGenericWarningMacro(
"Unknown role enum value: " << role);
236 #endif // vtkTransformFeedback_h