25#ifndef OPENSUBDIV3_OSD_GL_PATCH_TABLE_H
26#define OPENSUBDIV3_OSD_GL_PATCH_TABLE_H
28#include "../version.h"
30#include "../osd/nonCopyable.h"
31#include "../osd/opengl.h"
32#include "../osd/types.h"
37namespace OPENSUBDIV_VERSION {
52 void *deviceContext = NULL);
152using namespace OPENSUBDIV_VERSION;
std::vector< PatchArray > PatchArrayVector
Container for arrays of parametric patches.
GLuint VertexBufferBinding
std::vector< GLuint > _fvarIndexBuffers
PatchArrayVector const & GetPatchArrays() const
Returns the patch arrays for vertex index buffer data.
GLuint GetFVarPatchIndexBuffer(int fvarChannel=0) const
Returns the GL index buffer containing face-varying control vertices.
std::vector< GLuint > _fvarParamBuffers
GLuint GetPatchParamTextureBuffer() const
Returns the GL texture buffer containing the patch parameter.
GLuint _varyingIndexBuffer
bool allocate(Far::PatchTable const *farPatchTable)
static GLPatchTable * Create(Far::PatchTable const *farPatchTable, void *deviceContext=NULL)
GLuint _varyingIndexTexture
std::vector< GLuint > _fvarParamTextures
PatchArrayVector _patchArrays
GLuint GetPatchParamBuffer() const
Returns the GL index buffer containing the patch parameter.
GLuint GetFVarPatchParamBuffer(int fvarChannel=0) const
Returns the GL index buffer containing face-varying patch params.
GLuint _patchParamTexture
GLuint GetFVarPatchIndexTextureBuffer(int fvarChannel=0) const
Returns the GL texture buffer containing face-varying control vertices.
GLuint GetFVarPatchParamTextureBuffer(int fvarChannel=0) const
Returns the GL texture buffer containing face-varying patch params.
GLuint GetPatchIndexBuffer() const
Returns the GL index buffer containing the patch control vertices.
int GetNumFVarChannels() const
Returns the number of face-varying channel buffers.
PatchArrayVector const & GetFVarPatchArrays(int fvarChannel=0) const
Returns the patch arrays for face-varying index buffer data.
std::vector< GLuint > _fvarIndexTextures
GLuint _patchIndexTexture
std::vector< PatchArrayVector > _fvarPatchArrays
GLuint GetPatchIndexTextureBuffer() const
Returns the GL texture buffer containing the patch control vertices.
GLuint GetVaryingPatchIndexTextureBuffer() const
Returns the GL texture buffer containing the varying control vertices.
PatchArrayVector _varyingPatchArrays
GLuint GetVaryingPatchIndexBuffer() const
Returns the GL index buffer containing the varying control vertices.
PatchArrayVector const & GetVaryingPatchArrays() const
Returns the patch arrays for varying index buffer data.