OpenSubdiv::OPENSUBDIV_VERSION::Osd Namespace Reference

Classes | Typedefs | Enumerations | Functions
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 subvision. More...
class | CpuD3D11VertexBuffer
| Concrete vertex buffer class for Cpu subvision and DirectX drawing. More...
class | CpuEvaluator
class | CpuGLVertexBuffer
| Concrete vertex buffer class for cpu subvision and OpenGL drawing. More...
class | CpuPatchTable
| Cpu patch table. More...
class | CpuVertexBuffer
| Concrete vertex buffer class for cpu subvision. More...
class | CudaEvaluator
class | CudaPatchTable
| CUDA patch table. More...
class | CudaStencilTable
| CUDA stencil table. More...
class | CudaVertexBuffer
| Concrete vertex buffer class for Cuda subvision. More...
class | D3D11ComputeEvaluator
class | D3D11LegacyGregoryPatchTable
class | D3D11PatchTable
class | D3D11StencilTable
| D3D11 stencil table. More...
class | D3D11VertexBuffer
| Concrete vertex buffer class for DirectX subvision and DirectX drawing. More...
class | EvaluatorCacheT
class | GLComputeEvaluator
class | GLLegacyGregoryPatchTable
class | GLPatchTable
class | GLSLPatchShaderSource
class | GLStencilTableSSBO
| GL stencil table (Shader Storage buffer) More...
class | GLStencilTableTBO
| GL TextureBuffer stencil table. More...
class | GLVertexBuffer
| Concrete vertex buffer class for GLSL subvision and OpenGL drawing. More...
class | GLXFBEvaluator
class | HLSLPatchShaderSource
class | Mesh
class | MeshInterface
class | NonCopyable
class | OmpEvaluator
struct | PatchArray
struct | PatchCoord
| Coordinates set on a patch table. More...
struct | PatchParam
class | TbbEvaluator

## Typedefs
typedef MeshInterface< D3D11PatchTable > | D3D11MeshInterface
typedef MeshInterface< GLPatchTable > | GLMeshInterface
typedef std::bitset< NUM_MESH_BITS > | MeshBitset
typedef std::vector< PatchArray > | PatchArrayVector
typedef std::vector< PatchParam > | PatchParamVector

## Enumerations
enum | MeshBits { MeshAdaptive = 0, MeshInterleaveVarying = 1, MeshFVarData = 2, MeshFVarAdaptive = 3, MeshUseSingleCreasePatch = 4, MeshUseInfSharpPatch = 5, MeshEndCapBSplineBasis = 6, MeshEndCapGregoryBasis = 7, MeshEndCapLegacyGregory = 8, NUM_MESH_BITS = 9 }

## 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 | 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 | 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)

## Typedef Documentation

## ◆ D3D11MeshInterface

typedef MeshInterface<D3D11PatchTable> D3D11MeshInterface

Definition at line 38 of file d3d11Mesh.h.

## ◆ GLMeshInterface

typedef MeshInterface<GLPatchTable> GLMeshInterface

Definition at line 38 of file glMesh.h.

## ◆ MeshBitset

typedef std::bitset<NUM_MESH_BITS> MeshBitset

Definition at line 61 of file mesh.h.

## ◆ PatchArrayVector

typedef std::vector<PatchArray> PatchArrayVector

Definition at line 98 of file types.h.

## ◆ PatchParamVector

typedef std::vector<PatchParam> PatchParamVector

Definition at line 99 of file types.h.

## Enumeration Type Documentation

## ◆ MeshBits

enum MeshBits

Enumerator
MeshAdaptive |
MeshInterleaveVarying |
MeshFVarData |
MeshFVarAdaptive |
MeshUseSingleCreasePatch |
MeshUseInfSharpPatch |
MeshEndCapBSplineBasis |
MeshEndCapGregoryBasis |
MeshEndCapLegacyGregory |
NUM_MESH_BITS |

Definition at line 49 of file mesh.h.

## Function Documentation

## ◆ convertToCompatibleStencilTable()

STENCIL_TABLE const* OpenSubdiv::OPENSUBDIV_VERSION::Osd::convertToCompatibleStencilTable | ( | SRC_STENCIL_TABLE const * | table,
|  | DEVICE_CONTEXT * | context
| ) |  |

Definition at line 139 of file mesh.h.

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

Far::LimitStencilTable const* OpenSubdiv::OPENSUBDIV_VERSION::Osd::convertToCompatibleStencilTable< Far::LimitStencilTable, Far::LimitStencilTable, void > | ( | Far::LimitStencilTable const * | table,
|  | void * |
| ) |  |
| inline

Definition at line 157 of file mesh.h.

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

Far::StencilTable const* OpenSubdiv::OPENSUBDIV_VERSION::Osd::convertToCompatibleStencilTable< Far::StencilTable, Far::StencilTable, ID3D11DeviceContext > | ( | Far::StencilTable const * | table,
|  | ID3D11DeviceContext * |
| ) |  |
| inline

Definition at line 167 of file mesh.h.

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

Far::StencilTable const* OpenSubdiv::OPENSUBDIV_VERSION::Osd::convertToCompatibleStencilTable< Far::StencilTable, Far::StencilTable, void > | ( | Far::StencilTable const * | table,
|  | void * |
| ) |  |
| inline

Definition at line 147 of file mesh.h.

## ◆ OmpEvalStencils() [1/2]

void OpenSubdiv::OPENSUBDIV_VERSION::Osd::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
| ) |  |

## ◆ OmpEvalStencils() [2/2]

void OpenSubdiv::OPENSUBDIV_VERSION::Osd::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
| ) |  |

## ◆ TbbEvalPatches()

void OpenSubdiv::OPENSUBDIV_VERSION::Osd::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/2]

void OpenSubdiv::OPENSUBDIV_VERSION::Osd::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
| ) |  |

## ◆ TbbEvalStencils() [2/2]

void OpenSubdiv::OPENSUBDIV_VERSION::Osd::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
| ) |  |