All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
DrawContext Class Reference

Base DrawContext class. More...

#include <drawContext.h>

Inheritance diagram for DrawContext:
D3D11DrawContext GLDrawContext

Classes

class  PatchArray
 
class  PatchArray
 
class  PatchDescriptor
 
class  PatchDescriptor
 

Public Types

typedef std::vector< PatchArrayPatchArrayVector
 
typedef std::vector< float > FVarData
 

Public Member Functions

 DrawContext ()
 Constructor. More...
 
virtual ~DrawContext ()
 Descrtuctor. More...
 
bool IsAdaptive () const
 
PatchArrayVector const & GetPatchArrays () const
 

Static Public Member Functions

static void ConvertPatchArrays (Far::PatchTables::PatchArrayVector const &farPatchArrays, DrawContext::PatchArrayVector &osdPatchArrays, int maxValence, int numElements)
 

Static Protected Member Functions

static void packFVarData (Far::PatchTables const &patchTables, int fvarWidth, FVarData const &src, FVarData &dst)
 

Protected Attributes

PatchArrayVector _patchArrays
 
bool _isAdaptive
 

Detailed Description

Base DrawContext class.

DrawContext derives several sub-classes with API specific functionality (GL, D3D11, ...).

Current specificiation GPU hardware tessellation limitations require transition patches to be split-up into several triangular bi-cubic sub-patches. DrawContext processes FarPatchArrays from Far::PatchTables and generates the additional sets of sub-patches.

Contexts interface the serialized topological data pertaining to the geometric primitives with the capabilities of the selected discrete compute device.

Definition at line 54 of file drawContext.h.

Member Typedef Documentation

typedef std::vector<float> FVarData

Definition at line 222 of file drawContext.h.

typedef std::vector<PatchArray> PatchArrayVector

Definition at line 209 of file drawContext.h.

Constructor & Destructor Documentation

DrawContext ( )
inline

Constructor.

Definition at line 198 of file drawContext.h.

virtual ~DrawContext ( )
virtual

Descrtuctor.

Member Function Documentation

static void ConvertPatchArrays ( Far::PatchTables::PatchArrayVector const &  farPatchArrays,
DrawContext::PatchArrayVector osdPatchArrays,
int  maxValence,
int  numElements 
)
static
PatchArrayVector const& GetPatchArrays ( ) const
inline

Definition at line 211 of file drawContext.h.

bool IsAdaptive ( ) const
inline

Returns true if the primitive attached to the context uses feature adaptive subdivision

Definition at line 205 of file drawContext.h.

static void packFVarData ( Far::PatchTables const &  patchTables,
int  fvarWidth,
FVarData const &  src,
FVarData dst 
)
staticprotected

Member Data Documentation

bool _isAdaptive
protected

Definition at line 232 of file drawContext.h.

PatchArrayVector _patchArrays
protected

Definition at line 230 of file drawContext.h.


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