CpuPatchTable Class Reference

Cpu patch table. More...

#include <cpuPatchTable.h>

Public Member Functions

 CpuPatchTable (const Far::PatchTable *patchTable)
 
 ~CpuPatchTable ()
 
const PatchArrayGetPatchArrayBuffer () const
 
const int * GetPatchIndexBuffer () const
 
const PatchParamGetPatchParamBuffer () const
 
size_t GetNumPatchArrays () const
 
size_t GetPatchIndexSize () const
 
size_t GetPatchParamSize () const
 

Static Public Member Functions

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

Protected Attributes

PatchArrayVector _patchArrays
 
std::vector< int > _indexBuffer
 
PatchParamVector _patchParamBuffer
 

Detailed Description

Cpu patch table.

XXX: We can use just Far::PatchTable for typical CpuEval use cases.

Currently this class exists because of the template resolution for the CpuEvaluator's generic interface functions (glEvalLimit example uses), and device-specific patch tables such as GLPatchTables internally use as a staging buffer to splice patcharray and interleave sharpnesses.

Ideally Far::PatchTables should have the same data representation and accessors so that we don't have to copy data unnecessarily.

Definition at line 57 of file cpuPatchTable.h.

Constructor & Destructor Documentation

CpuPatchTable ( const Far::PatchTable patchTable)
explicit
~CpuPatchTable ( )
inline

Definition at line 66 of file cpuPatchTable.h.

Member Function Documentation

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

Definition at line 59 of file cpuPatchTable.h.

size_t GetNumPatchArrays ( ) const
inline

Definition at line 78 of file cpuPatchTable.h.

const PatchArray* GetPatchArrayBuffer ( ) const
inline

Definition at line 68 of file cpuPatchTable.h.

const int* GetPatchIndexBuffer ( ) const
inline

Definition at line 71 of file cpuPatchTable.h.

size_t GetPatchIndexSize ( ) const
inline

Definition at line 81 of file cpuPatchTable.h.

const PatchParam* GetPatchParamBuffer ( ) const
inline

Definition at line 74 of file cpuPatchTable.h.

size_t GetPatchParamSize ( ) const
inline

Definition at line 84 of file cpuPatchTable.h.

Member Data Documentation

std::vector<int> _indexBuffer
protected

Definition at line 90 of file cpuPatchTable.h.

PatchArrayVector _patchArrays
protected

Definition at line 89 of file cpuPatchTable.h.

PatchParamVector _patchParamBuffer
protected

Definition at line 91 of file cpuPatchTable.h.


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