OpenSubdiv
Loading...
Searching...
No Matches
OpenSubdiv::OPENSUBDIV_VERSION::Osd Namespace Reference

Classes

struct  BufferDescriptor
 BufferDescriptor is a struct which describes buffer elements in interleaved data buffers. Almost all Osd Evaluator APIs take BufferDescriptors along with device-specific buffer objects. More...
 
class  CLEvaluator
 
class  CLPatchTable
 CL patch table. More...
 
class  CLStencilTable
 OpenCL stencil table. More...
 
class  CLVertexBuffer
 Concrete vertex buffer class for OpenCL subdivision. More...
 
class  CpuD3D11VertexBuffer
 Concrete vertex buffer class for Cpu subdivision and DirectX drawing. More...
 
class  CpuEvaluator
 
class  CpuGLVertexBuffer
 Concrete vertex buffer class for cpu subdivision and OpenGL drawing. More...
 
class  CPUMTLVertexBuffer
 
class  CpuPatchTable
 Cpu patch table. More...
 
class  CpuVertexBuffer
 Concrete vertex buffer class for CPU subdivision. More...
 
class  CudaEvaluator
 
class  CudaPatchTable
 CUDA patch table. More...
 
class  CudaStencilTable
 CUDA stencil table. More...
 
class  CudaVertexBuffer
 Concrete vertex buffer class for Cuda subdivision. More...
 
class  D3D11ComputeEvaluator
 
class  D3D11LegacyGregoryPatchTable
 
class  D3D11PatchTable
 
class  D3D11StencilTable
 D3D11 stencil table. More...
 
class  D3D11VertexBuffer
 Concrete vertex buffer class for DirectX subdivision and DirectX drawing. More...
 
class  EvaluatorCacheT
 
class  GLComputeEvaluator
 
class  GLLegacyGregoryPatchTable
 
class  GLPatchTable
 
class  GLSLPatchShaderSource
 Provides shader source which can be used by client code. More...
 
class  GLStencilTableSSBO
 GL stencil table (Shader Storage buffer) More...
 
class  GLStencilTableTBO
 GL TextureBuffer stencil table. More...
 
class  GLVertexBuffer
 Concrete vertex buffer class for GLSL subdivision and OpenGL drawing. More...
 
class  GLXFBEvaluator
 
class  HLSLPatchShaderSource
 Provides shader source which can be used by client code. More...
 
class  Mesh
 
class  MeshInterface
 
class  MTLComputeEvaluator
 
class  MTLContext
 
class  MTLLegacyGregoryPatchTable
 
class  MTLPatchShaderSource
 Provides shader source which can be used by client code. More...
 
class  MTLPatchTable
 
class  MTLStencilTable
 
class  OmpEvaluator
 
struct  PatchArray
 
struct  PatchCoord
 Coordinates set on a patch table. More...
 
struct  PatchParam
 
class  TbbEvaluator
 

Typedefs

typedef MeshInterface< D3D11PatchTableD3D11MeshInterface
 
typedef MeshInterface< GLPatchTableGLMeshInterface
 
typedef std::bitset< NUM_MESH_BITSMeshBitset
 
typedef MeshInterface< MTLPatchTableMTLMeshInterface
 
typedef std::vector< PatchArrayPatchArrayVector
 
typedef std::vector< PatchParamPatchParamVector
 

Enumerations

enum  MeshBits {
  MeshAdaptive = 0 ,
  MeshInterleaveVarying = 1 ,
  MeshFVarData = 2 ,
  MeshFVarAdaptive = 3 ,
  MeshUseSmoothCornerPatch = 4 ,
  MeshUseSingleCreasePatch = 5 ,
  MeshUseInfSharpPatch = 6 ,
  MeshEndCapBilinearBasis = 7 ,
  MeshEndCapBSplineBasis = 8 ,
  MeshEndCapGregoryBasis = 9 ,
  MeshEndCapLegacyGregory = 10 ,
  NUM_MESH_BITS = 11
}
 

Functions

template<typename STENCIL_TABLE , typename SRC_STENCIL_TABLE , typename DEVICE_CONTEXT >
STENCIL_TABLE const * convertToCompatibleStencilTable (SRC_STENCIL_TABLE const *table, DEVICE_CONTEXT *context)
 
template<>
Far::StencilTable const * convertToCompatibleStencilTable< Far::StencilTable, Far::StencilTable, void > (Far::StencilTable const *table, void *)
 
template<>
Far::LimitStencilTable const * convertToCompatibleStencilTable< Far::LimitStencilTable, Far::LimitStencilTable, void > (Far::LimitStencilTable const *table, void *)
 
template<>
Far::StencilTable const * convertToCompatibleStencilTable< Far::StencilTable, Far::StencilTable, ID3D11DeviceContext > (Far::StencilTable const *table, ID3D11DeviceContext *)
 
void OmpEvalStencils (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, int const *sizes, int const *offsets, int const *indices, float const *weights, int start, int end)
 
void OmpEvalStencils (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, float *dstDu, BufferDescriptor const &dstDuDesc, float *dstDv, BufferDescriptor const &dstDvDesc, int const *sizes, int const *offsets, int const *indices, float const *weights, float const *duWeights, float const *dvWeights, int start, int end)
 
void OmpEvalStencils (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, float *dstDu, BufferDescriptor const &dstDuDesc, float *dstDv, BufferDescriptor const &dstDvDesc, float *dstDuu, BufferDescriptor const &dstDuuDesc, float *dstDuv, BufferDescriptor const &dstDuvDesc, float *dstDvv, BufferDescriptor const &dstDvvDesc, int const *sizes, int const *offsets, int const *indices, float const *weights, float const *duWeights, float const *dvWeights, float const *duuWeights, float const *duvWeights, float const *dvvWeights, int start, int end)
 
void TbbEvalStencils (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, int const *sizes, int const *offsets, int const *indices, float const *weights, int start, int end)
 
void TbbEvalStencils (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, float *dstDu, BufferDescriptor const &dstDuDesc, float *dstDv, BufferDescriptor const &dstDvDesc, int const *sizes, int const *offsets, int const *indices, float const *weights, float const *duWeights, float const *dvWeights, int start, int end)
 
void TbbEvalStencils (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, float *dstDu, BufferDescriptor const &dstDuDesc, float *dstDv, BufferDescriptor const &dstDvDesc, float *dstDuu, BufferDescriptor const &dstDuuDesc, float *dstDuv, BufferDescriptor const &dstDuvDesc, float *dstDvv, BufferDescriptor const &dstDvvDesc, int const *sizes, int const *offsets, int const *indices, float const *weights, float const *duWeights, float const *dvWeights, float const *duuWeights, float const *duvWeights, float const *dvvWeights, int start, int end)
 
void TbbEvalPatches (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, float *dstDu, BufferDescriptor const &dstDuDesc, float *dstDv, BufferDescriptor const &dstDvDesc, int numPatchCoords, const PatchCoord *patchCoords, const PatchArray *patchArrayBuffer, const int *patchIndexBuffer, const PatchParam *patchParamBuffer)
 
void TbbEvalPatches (float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, float *dstDu, BufferDescriptor const &dstDuDesc, float *dstDv, BufferDescriptor const &dstDvDesc, float *dstDuu, BufferDescriptor const &dstDuuDesc, float *dstDuv, BufferDescriptor const &dstDuvDesc, float *dstDvv, BufferDescriptor const &dstDvvDesc, int numPatchCoords, const PatchCoord *patchCoords, const PatchArray *patchArrayBuffer, const int *patchIndexBuffer, const PatchParam *patchParamBuffer)
 

Typedef Documentation

◆ D3D11MeshInterface

Definition at line 38 of file d3d11Mesh.h.

◆ GLMeshInterface

Definition at line 38 of file glMesh.h.

◆ MeshBitset

typedef std::bitset<NUM_MESH_BITS> MeshBitset

Definition at line 63 of file mesh.h.

◆ MTLMeshInterface

Definition at line 38 of file mtlMesh.h.

◆ PatchArrayVector

typedef std::vector<PatchArray> PatchArrayVector

Definition at line 132 of file types.h.

◆ PatchParamVector

typedef std::vector<PatchParam> PatchParamVector

Definition at line 133 of file types.h.

Enumeration Type Documentation

◆ MeshBits

enum MeshBits
Enumerator
MeshAdaptive 
MeshInterleaveVarying 
MeshFVarData 
MeshFVarAdaptive 
MeshUseSmoothCornerPatch 
MeshUseSingleCreasePatch 
MeshUseInfSharpPatch 
MeshEndCapBilinearBasis 
MeshEndCapBSplineBasis 
MeshEndCapGregoryBasis 
MeshEndCapLegacyGregory 
NUM_MESH_BITS 

Definition at line 49 of file mesh.h.

Function Documentation

◆ convertToCompatibleStencilTable()

STENCIL_TABLE const * convertToCompatibleStencilTable ( SRC_STENCIL_TABLE const *  table,
DEVICE_CONTEXT *  context 
)

Definition at line 141 of file mesh.h.

◆ convertToCompatibleStencilTable< Far::LimitStencilTable, Far::LimitStencilTable, void >()

Definition at line 158 of file mesh.h.

◆ convertToCompatibleStencilTable< Far::StencilTable, Far::StencilTable, ID3D11DeviceContext >()

Far::StencilTable const * convertToCompatibleStencilTable< Far::StencilTable, Far::StencilTable, ID3D11DeviceContext > ( Far::StencilTable const *  table,
ID3D11DeviceContext *   
)
inline

Definition at line 168 of file mesh.h.

◆ convertToCompatibleStencilTable< Far::StencilTable, Far::StencilTable, void >()

Definition at line 148 of file mesh.h.

◆ OmpEvalStencils() [1/3]

void OmpEvalStencils ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
float *  dstDu,
BufferDescriptor const &  dstDuDesc,
float *  dstDv,
BufferDescriptor const &  dstDvDesc,
float *  dstDuu,
BufferDescriptor const &  dstDuuDesc,
float *  dstDuv,
BufferDescriptor const &  dstDuvDesc,
float *  dstDvv,
BufferDescriptor const &  dstDvvDesc,
int const *  sizes,
int const *  offsets,
int const *  indices,
float const *  weights,
float const *  duWeights,
float const *  dvWeights,
float const *  duuWeights,
float const *  duvWeights,
float const *  dvvWeights,
int  start,
int  end 
)

◆ OmpEvalStencils() [2/3]

void OmpEvalStencils ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
float *  dstDu,
BufferDescriptor const &  dstDuDesc,
float *  dstDv,
BufferDescriptor const &  dstDvDesc,
int const *  sizes,
int const *  offsets,
int const *  indices,
float const *  weights,
float const *  duWeights,
float const *  dvWeights,
int  start,
int  end 
)

◆ OmpEvalStencils() [3/3]

void OmpEvalStencils ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
int const *  sizes,
int const *  offsets,
int const *  indices,
float const *  weights,
int  start,
int  end 
)

◆ TbbEvalPatches() [1/2]

void TbbEvalPatches ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
float *  dstDu,
BufferDescriptor const &  dstDuDesc,
float *  dstDv,
BufferDescriptor const &  dstDvDesc,
float *  dstDuu,
BufferDescriptor const &  dstDuuDesc,
float *  dstDuv,
BufferDescriptor const &  dstDuvDesc,
float *  dstDvv,
BufferDescriptor const &  dstDvvDesc,
int  numPatchCoords,
const PatchCoord patchCoords,
const PatchArray patchArrayBuffer,
const int *  patchIndexBuffer,
const PatchParam patchParamBuffer 
)

◆ TbbEvalPatches() [2/2]

void TbbEvalPatches ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
float *  dstDu,
BufferDescriptor const &  dstDuDesc,
float *  dstDv,
BufferDescriptor const &  dstDvDesc,
int  numPatchCoords,
const PatchCoord patchCoords,
const PatchArray patchArrayBuffer,
const int *  patchIndexBuffer,
const PatchParam patchParamBuffer 
)

◆ TbbEvalStencils() [1/3]

void TbbEvalStencils ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
float *  dstDu,
BufferDescriptor const &  dstDuDesc,
float *  dstDv,
BufferDescriptor const &  dstDvDesc,
float *  dstDuu,
BufferDescriptor const &  dstDuuDesc,
float *  dstDuv,
BufferDescriptor const &  dstDuvDesc,
float *  dstDvv,
BufferDescriptor const &  dstDvvDesc,
int const *  sizes,
int const *  offsets,
int const *  indices,
float const *  weights,
float const *  duWeights,
float const *  dvWeights,
float const *  duuWeights,
float const *  duvWeights,
float const *  dvvWeights,
int  start,
int  end 
)

◆ TbbEvalStencils() [2/3]

void TbbEvalStencils ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
float *  dstDu,
BufferDescriptor const &  dstDuDesc,
float *  dstDv,
BufferDescriptor const &  dstDvDesc,
int const *  sizes,
int const *  offsets,
int const *  indices,
float const *  weights,
float const *  duWeights,
float const *  dvWeights,
int  start,
int  end 
)

◆ TbbEvalStencils() [3/3]

void TbbEvalStencils ( float const *  src,
BufferDescriptor const &  srcDesc,
float *  dst,
BufferDescriptor const &  dstDesc,
int const *  sizes,
int const *  offsets,
int const *  indices,
float const *  weights,
int  start,
int  end 
)