OpenSubdiv
Loading...
Searching...
No Matches
CudaPatchTable Class Reference

CUDA patch table. More...

#include <cudaPatchTable.h>

Inheritance diagram for CudaPatchTable:

Public Member Functions

 ~CudaPatchTable ()
 Destructor.
void * GetPatchArrayBuffer () const
 Returns the cuda memory of the array of Osd::PatchArray buffer.
void * GetPatchIndexBuffer () const
 Returns the cuda memory of the patch control vertices.
void * GetPatchParamBuffer () const
 Returns the cuda memory of the array of Osd::PatchParam buffer.
void * GetVaryingPatchArrayBuffer () const
 Returns the cuda memory of the array of Osd::PatchArray buffer.
void * GetVaryingPatchIndexBuffer () const
 Returns the cuda memory of the array of varying control vertices.
int GetNumFVarChannels () const
 Returns the number of face-varying channels buffers.
void * GetFVarPatchArrayBuffer (int fvarChannel) const
 Returns the cuda memory of the array of Osd::PatchArray buffer.
void * GetFVarPatchIndexBuffer (int fvarChannel=0) const
 Returns the cuda memory of the array of face-varying control vertices.
void * GetFVarPatchParamBuffer (int fvarChannel=0) const
 Returns the cuda memory of the array of face-varying param.

Static Public Member Functions

static CudaPatchTableCreate (Far::PatchTable const *patchTable, void *deviceContext=NULL)
 Creator. Returns NULL if error.

Protected Member Functions

 CudaPatchTable ()
bool allocate (Far::PatchTable const *patchTable)

Protected Attributes

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

Detailed Description

CUDA patch table.

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

CudaEvaluator consumes this table to evaluate on the patches.

Definition at line 51 of file cudaPatchTable.h.

Constructor & Destructor Documentation

◆ ~CudaPatchTable()

Destructor.

◆ CudaPatchTable()

CudaPatchTable ( )
protected

Member Function Documentation

◆ allocate()

bool allocate ( Far::PatchTable const * patchTable)
protected

◆ Create()

CudaPatchTable * Create ( Far::PatchTable const * patchTable,
void * deviceContext = NULL )
static

Creator. Returns NULL if error.

◆ GetFVarPatchArrayBuffer()

void * GetFVarPatchArrayBuffer ( int fvarChannel) const
inline

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

Definition at line 81 of file cudaPatchTable.h.

◆ GetFVarPatchIndexBuffer()

void * GetFVarPatchIndexBuffer ( int fvarChannel = 0) const
inline

Returns the cuda memory of the array of face-varying control vertices.

Definition at line 86 of file cudaPatchTable.h.

◆ GetFVarPatchParamBuffer()

void * GetFVarPatchParamBuffer ( int fvarChannel = 0) const
inline

Returns the cuda memory of the array of face-varying param.

Definition at line 91 of file cudaPatchTable.h.

◆ GetNumFVarChannels()

int GetNumFVarChannels ( ) const
inline

Returns the number of face-varying channels buffers.

Definition at line 78 of file cudaPatchTable.h.

◆ GetPatchArrayBuffer()

void * GetPatchArrayBuffer ( ) const
inline

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

Definition at line 60 of file cudaPatchTable.h.

◆ GetPatchIndexBuffer()

void * GetPatchIndexBuffer ( ) const
inline

Returns the cuda memory of the patch control vertices.

Definition at line 63 of file cudaPatchTable.h.

◆ GetPatchParamBuffer()

void * GetPatchParamBuffer ( ) const
inline

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

Definition at line 66 of file cudaPatchTable.h.

◆ GetVaryingPatchArrayBuffer()

void * GetVaryingPatchArrayBuffer ( ) const
inline

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

Definition at line 69 of file cudaPatchTable.h.

◆ GetVaryingPatchIndexBuffer()

void * GetVaryingPatchIndexBuffer ( ) const
inline

Returns the cuda memory of the array of varying control vertices.

Definition at line 73 of file cudaPatchTable.h.

Member Data Documentation

◆ _fvarIndexBuffers

std::vector<void *> _fvarIndexBuffers
protected

Definition at line 108 of file cudaPatchTable.h.

◆ _fvarParamBuffers

std::vector<void *> _fvarParamBuffers
protected

Definition at line 109 of file cudaPatchTable.h.

◆ _fvarPatchArrays

std::vector<void *> _fvarPatchArrays
protected

Definition at line 107 of file cudaPatchTable.h.

◆ _indexBuffer

void* _indexBuffer
protected

Definition at line 101 of file cudaPatchTable.h.

◆ _patchArrays

void* _patchArrays
protected

Definition at line 100 of file cudaPatchTable.h.

◆ _patchParamBuffer

void* _patchParamBuffer
protected

Definition at line 102 of file cudaPatchTable.h.

◆ _varyingIndexBuffer

void* _varyingIndexBuffer
protected

Definition at line 105 of file cudaPatchTable.h.

◆ _varyingPatchArrays

void* _varyingPatchArrays
protected

Definition at line 104 of file cudaPatchTable.h.


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