All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
CLPatchTable Class Reference

CL patch table. More...

#include <clPatchTable.h>

Inheritance diagram for CLPatchTable:
NonCopyable< CLPatchTable >

Public Member Functions

 ~CLPatchTable ()
 Destructor. More...
 
cl_mem GetPatchArrayBuffer () const
 Returns the CL memory of the array of Osd::PatchArray buffer. More...
 
cl_mem GetPatchIndexBuffer () const
 Returns the CL memory of the patch control vertices. More...
 
cl_mem GetPatchParamBuffer () const
 Returns the CL memory of the array of Osd::PatchParam buffer. More...
 
cl_mem GetVaryingPatchArrayBuffer () const
 Returns the CL memory of the array of Osd::PatchArray buffer. More...
 
cl_mem GetVaryingPatchIndexBuffer () const
 Returns the CL memory of the varying control vertices. More...
 
int GetNumFVarChannels () const
 Returns the number of face-varying channel buffers. More...
 
cl_mem GetFVarPatchArrayBuffer (int fvarChannel=0) const
 Returns the CL memory of the array of Osd::PatchArray buffer. More...
 
cl_mem GetFVarPatchIndexBuffer (int fvarChannel=0) const
 Returns the CL memory of the face-varying control vertices. More...
 
cl_mem GetFVarPatchParamBuffer (int fvarChannel=0) const
 Returns the CL memory of the array of Osd::PatchParam buffer. More...
 

Static Public Member Functions

static CLPatchTableCreate (Far::PatchTable const *patchTable, cl_context clContext)
 Creator. Returns NULL if error. More...
 
template<typename DEVICE_CONTEXT >
static CLPatchTableCreate (Far::PatchTable const *patchTable, DEVICE_CONTEXT context)
 

Protected Member Functions

 CLPatchTable ()
 
bool allocate (Far::PatchTable const *patchTable, cl_context clContext)
 

Protected Attributes

cl_mem _patchArrays
 
cl_mem _indexBuffer
 
cl_mem _patchParamBuffer
 
cl_mem _varyingPatchArrays
 
cl_mem _varyingIndexBuffer
 
std::vector< cl_mem > _fvarPatchArrays
 
std::vector< cl_mem > _fvarIndexBuffers
 
std::vector< cl_mem > _fvarParamBuffers
 

Detailed Description

CL patch table.

This class is a CL buffer representation of Far::PatchTable.

CLEvaluator consumes this table to evaluate on the patches.

Definition at line 52 of file clPatchTable.h.

Constructor & Destructor Documentation

Destructor.

CLPatchTable ( )
protected

Member Function Documentation

bool allocate ( Far::PatchTable const *  patchTable,
cl_context  clContext 
)
protected
static CLPatchTable* Create ( Far::PatchTable const *  patchTable,
cl_context  clContext 
)
static

Creator. Returns NULL if error.

static CLPatchTable* Create ( Far::PatchTable const *  patchTable,
DEVICE_CONTEXT  context 
)
inlinestatic

Definition at line 59 of file clPatchTable.h.

cl_mem GetFVarPatchArrayBuffer ( int  fvarChannel = 0) const
inline

Returns the CL memory of the array of Osd::PatchArray buffer.

Definition at line 86 of file clPatchTable.h.

cl_mem GetFVarPatchIndexBuffer ( int  fvarChannel = 0) const
inline

Returns the CL memory of the face-varying control vertices.

Definition at line 89 of file clPatchTable.h.

cl_mem GetFVarPatchParamBuffer ( int  fvarChannel = 0) const
inline

Returns the CL memory of the array of Osd::PatchParam buffer.

Definition at line 92 of file clPatchTable.h.

int GetNumFVarChannels ( ) const
inline

Returns the number of face-varying channel buffers.

Definition at line 83 of file clPatchTable.h.

cl_mem GetPatchArrayBuffer ( ) const
inline

Returns the CL memory of the array of Osd::PatchArray buffer.

Definition at line 68 of file clPatchTable.h.

cl_mem GetPatchIndexBuffer ( ) const
inline

Returns the CL memory of the patch control vertices.

Definition at line 71 of file clPatchTable.h.

cl_mem GetPatchParamBuffer ( ) const
inline

Returns the CL memory of the array of Osd::PatchParam buffer.

Definition at line 74 of file clPatchTable.h.

cl_mem GetVaryingPatchArrayBuffer ( ) const
inline

Returns the CL memory of the array of Osd::PatchArray buffer.

Definition at line 77 of file clPatchTable.h.

cl_mem GetVaryingPatchIndexBuffer ( ) const
inline

Returns the CL memory of the varying control vertices.

Definition at line 80 of file clPatchTable.h.

Member Data Documentation

std::vector<cl_mem> _fvarIndexBuffers
protected

Definition at line 107 of file clPatchTable.h.

std::vector<cl_mem> _fvarParamBuffers
protected

Definition at line 108 of file clPatchTable.h.

std::vector<cl_mem> _fvarPatchArrays
protected

Definition at line 106 of file clPatchTable.h.

cl_mem _indexBuffer
protected

Definition at line 100 of file clPatchTable.h.

cl_mem _patchArrays
protected

Definition at line 99 of file clPatchTable.h.

cl_mem _patchParamBuffer
protected

Definition at line 101 of file clPatchTable.h.

cl_mem _varyingIndexBuffer
protected

Definition at line 104 of file clPatchTable.h.

cl_mem _varyingPatchArrays
protected

Definition at line 103 of file clPatchTable.h.


The documentation for this class was generated from the following file: