25 #ifndef OSD_GLSL_COMPUTE_CONTEXT_H
26 #define OSD_GLSL_COMPUTE_CONTEXT_H
28 #include "../version.h"
30 #include "../osd/nonCopyable.h"
31 #include "../osd/opengl.h"
35 namespace OpenSubdiv {
36 namespace OPENSUBDIV_VERSION {
38 namespace Far{
class StencilTables; }
76 return _numControlVertices;
101 class GLSLStencilTables;
103 GLSLStencilTables * _vertexStencilTables,
104 * _varyingStencilTables;
106 int _numControlVertices;
112 using namespace OPENSUBDIV_VERSION;
116 #endif // OSD_GLSL_COMPUTE_CONTEXT_H
int GetNumControlVertices() const
Returns the number of control vertices.
GLSL-Compute Refine Context.
GLuint GetVertexStencilTablesOffsets() const
Returns the Cuda buffer containing vertex-stencil stencil offsets.
GLSLComputeContext(Far::StencilTables const *vertexStencilTables, Far::StencilTables const *varyingStencilTables)
bool HasVertexStencilTables() const
Returns true if the Context has a 'vertex' interpolation stencil table.
Table of subdivision stencils.
void BindVaryingStencilTables() const
Binds GL buffers containing stencils for 'varying' interpolation.
bool HasVaryingStencilTables() const
Returns true if the Context has a 'varying' interpolation stencil table.
virtual ~GLSLComputeContext()
Destructor.
GLuint GetVertexStencilTablesSizes() const
Returns the Cuda buffer containing vertex-stencil stencil sizes.
void BindVertexStencilTables() const
Binds GL buffers containing stencils for 'vertex' interpolation.
static GLSLComputeContext * Create(Far::StencilTables const *vertexStencilTables, Far::StencilTables const *varyingStencilTables=0)
void UnbindStencilTables() const
Unbinds GL stencil buffers.