![]() |
VR-Forces 4.10 Class Documentation
|
contains the information which indirect needs for all geometry found by the geometry aggregator after it runs. More...
Public Member Functions | |
| virtual | ~DtAggregatedGeometry () |
| destructor More... | |
| virtual void | releaseGLObjects (osg::State *state) const |
| used to release resources More... | |
| virtual void | addGeometryToLoad (const DtCopyModelDataStructure &cds) |
| add geometry descriptor to the queue for future async loading. More... | |
| virtual bool | hasDataToAsyncLoad () const |
| checks if there's data to start loading and isn't currently running an async task More... | |
| virtual bool | hasDataToCopy () const |
| checks if there's data to start loading More... | |
| virtual boost::mutex & | copyDataMutex () |
| access to copy data mutex More... | |
| virtual int | isCopyingData () const |
| access to copy data atomic More... | |
| virtual int | numModels (void) const |
| number of models registered here More... | |
| virtual int | modelId (int index) const |
| the actual model id of the model with index More... | |
| virtual DtAggregateModelInfo * | getOrCreateModelInfoFor (int modelId) |
| the actual modelinfo from the modelid More... | |
| virtual DtAggregateModelInfo * | getModelInfoFor (int modelId) |
| the actual modelinfo from the modelid More... | |
| virtual const DtIndirectSwitchManager::DequeNodeSwitchInfoPairsArray & | getVectorSwitchPaths (int modelId) const |
| vector of the 'switch paths' for the model More... | |
| virtual const DtIndirectLodManager::DequeIndirectLodInfoArray & | getVectorLodStacks (int modelId) const |
| vector of the lod stacks for a model More... | |
| virtual const DtIndirectDofManager::DequeNodeDofInfoPairs & | getVectorDofPaths (int modelId) const |
| virtual int | vertexAndAttributesBufferSize (void) const |
| size of all vertex attributes (vertices, normals, colors, texture coords) More... | |
| virtual const osg::Geometry * | aggregatedGeometry (void) const |
| accessor for the underlying osg::Geometry that holds all the vertex information. More... | |
| virtual osg::Geometry * | aggregatedGeometry (void) |
| accessor for the underlying osg::Geometry that holds all the vertex information. More... | |
| virtual void | testDrawUsingDrawElements () |
| debugging More... | |
| virtual unsigned int | vertexAndAttributesBufferHandle () const |
| handle for accessing the vertex and attributes buffer. More... | |
| virtual unsigned int | colorBufferHandle () const |
| handle for accessing the vertex color buffer. More... | |
| virtual unsigned int | normalBufferHandle () const |
| handle for accessing the vertex normal buffer. More... | |
| virtual unsigned int | uvBufferHandle () const |
| handle for accessing the vertex uv buffer. More... | |
| virtual unsigned int | indexBufferHandle () const |
| handle for accessing the vertex index buffer. More... | |
| virtual GLenum | indicesType (void) const |
| the indices' type (unsigned short or unsigned int, usually unsigned int) More... | |
| virtual void | copyDataQueue () |
| run through the data that needs to be copied and copy until canceled More... | |
| virtual void | printVertexBuffer (std::ostream &os) |
| print the osg side vertex buffer More... | |
| virtual void | printIndexBuffer (std::ostream &os) |
| print the osg side index buffer More... | |
| virtual void | printStats (std::ostream &os) |
| print brief summary More... | |
| virtual bool | updateBuffers () |
| returns true if buffers were successfully filled out More... | |
| virtual void | bindBuffers () |
| sets up vbo so it's ready to draw More... | |
| virtual void | unbindBuffers () |
| resets vertex buffer state More... | |
Public Attributes | |
| friend | DtAggregatedGeometryCreator |
| only creator can create More... | |
Protected Types | |
| typedef std::map< int, DtAggregateModelInfo * > | MapModelsToModelInfo |
Protected Member Functions | |
| DtAggregatedGeometry (DtDe &de) | |
| constructor. protected. only creator can create More... | |
| virtual void | configureBuffers () |
| called from the constructor, just a helper function for the 2 different creation paths. More... | |
| virtual void | reserveMaxMemory () |
| reserve as much memory as the last values in the copy data list More... | |
| virtual void | copyData (DtCopyModelDataStructure &data) |
| copy data described in structure into the aggregate geometry, usually called by async thread. More... | |
| virtual unsigned int | vertexBufferSizeInBytes () const |
| Accessors for the Vertex Buffer/Size total size in bytes = (num of vertices * num elements * sizeof(float)) More... | |
| virtual unsigned int | vertexBufferNumElements () const |
| num of elements in each vertex (3 if (x,y,z), 4 if (x,y,z,w), etc More... | |
| virtual unsigned int | numVertices (void) const |
| num of vertices More... | |
| virtual const void * | verticesPointer () const |
| the vertex pointer More... | |
| virtual unsigned int | normalBufferSizeInBytes () const |
| Accessors for the Normals' Buffer/Size. More... | |
| virtual unsigned int | normalBufferNumElements () const |
| virtual const void * | normalsPointer () const |
| virtual unsigned int | numNormals (void) const |
| virtual unsigned int | colorBufferSizeInBytes () const |
| Accessors for the Colors' Buffer/Size. More... | |
| virtual unsigned int | colorBufferNumElements () const |
| virtual const void * | colorsPointer () const |
| virtual unsigned int | numColors (void) const |
| virtual unsigned int | textureCoordsBufferSizeInBytes (unsigned int unit) const |
| Accessors for the Texture Coordinates' Buffer/Size. More... | |
| virtual unsigned int | textureCoordsBufferNumElements (unsigned int unit) const |
| virtual const void * | textureCoordsPointer (unsigned int unit) const |
| virtual unsigned int | numTextureCoords (unsigned int unit) const |
| virtual unsigned int | textureBufferSizeInBytes () const |
| size of the texture buffer in bytes More... | |
| virtual void | copyTextureData (DtGlBuffer *vertexAndAttributesBuffer, int &offset) const |
| virtual const void * | indexBufferPointer () const |
| Accessors for the Index Buffer/Size. More... | |
| virtual unsigned int | indexBufferSizeInBytes () const |
Protected Attributes | |
| DtGlBuffer * | myVertexAndAttributesBuffer |
| DtGlBuffer * | myColorBuffer |
| DtGlBuffer * | myNormalBuffer |
| DtGlBuffer * | myUVBuffer |
| DtGlBuffer * | myIndexBuffer |
| std::vector< int > | myEnabledVertexAttribArrays |
| MapModelsToModelInfo | myMapModelsToModelInfo |
| std::vector< int > | myScratchIndices |
| DtIndirectAggregateHelper | myAggregateHelper |
| osg::ref_ptr< osg::Geometry > | myAggregatedGeometry |
| tbb::concurrent_queue < DtCopyModelDataStructure > | myModelDataToCopy |
| int | myLastVertex |
| int | myLastIndex |
| tbb::atomic< int > | myIsCopyingData |
| boost::mutex | myCopyDataMutex |
| boost::mutex | myMutableMapModelsToModelInfoMutex |
| mutex needs to be used in const functions so must be mutable. More... | |
| DtDe & | myDe |
| reference to De More... | |
| tbb::atomic< int > | myCancelTask |
Private Member Functions | |
| DtAggregatedGeometry ()=delete | |
| not allowed More... | |
| DtAggregatedGeometry (const DtAggregatedGeometry &other)=delete | |
| Copy Constructor not implemented – Copy Not Allowed. More... | |
| DtAggregatedGeometry & | operator= (const DtAggregatedGeometry &other)=delete |
| Assignment Operator Not implemented – Assignment Not Allowed. More... | |
contains the information which indirect needs for all geometry found by the geometry aggregator after it runs.
It is owned by the Indirect geometry registrar.
|
protected |
|
virtual |
destructor
|
protected |
constructor. protected. only creator can create
|
privatedelete |
not allowed
|
privatedelete |
Copy Constructor not implemented – Copy Not Allowed.
|
privatedelete |
Assignment Operator Not implemented – Assignment Not Allowed.
|
virtual |
used to release resources
|
virtual |
add geometry descriptor to the queue for future async loading.
|
virtual |
checks if there's data to start loading and isn't currently running an async task
|
virtual |
checks if there's data to start loading
|
virtual |
access to copy data mutex
|
virtual |
access to copy data atomic
|
virtual |
number of models registered here
the actual model id of the model with index
|
virtual |
the actual modelinfo from the modelid
|
virtual |
the actual modelinfo from the modelid
|
virtual |
vector of the 'switch paths' for the model
|
virtual |
vector of the lod stacks for a model
|
virtual |
|
virtual |
size of all vertex attributes (vertices, normals, colors, texture coords)
|
virtual |
accessor for the underlying osg::Geometry that holds all the vertex information.
|
virtual |
accessor for the underlying osg::Geometry that holds all the vertex information.
non-const version
|
virtual |
debugging
|
virtual |
handle for accessing the vertex and attributes buffer.
Used by the cull compute shader to access the light source info.
handle for accessing the vertex color buffer.
Used by the cull compute shader to access the light source info.
handle for accessing the vertex normal buffer.
Used by the cull compute shader to access the light source info.
handle for accessing the vertex uv buffer.
handle for accessing the vertex index buffer.
|
virtual |
the indices' type (unsigned short or unsigned int, usually unsigned int)
|
virtual |
run through the data that needs to be copied and copy until canceled
|
virtual |
print the osg side vertex buffer
|
virtual |
print the osg side index buffer
|
virtual |
print brief summary
|
virtual |
returns true if buffers were successfully filled out
|
virtual |
sets up vbo so it's ready to draw
|
virtual |
resets vertex buffer state
|
protectedvirtual |
called from the constructor, just a helper function for the 2 different creation paths.
|
protectedvirtual |
reserve as much memory as the last values in the copy data list
|
protectedvirtual |
copy data described in structure into the aggregate geometry, usually called by async thread.
|
protectedvirtual |
Accessors for the Vertex Buffer/Size total size in bytes = (num of vertices * num elements * sizeof(float))
|
protectedvirtual |
num of elements in each vertex (3 if (x,y,z), 4 if (x,y,z,w), etc
num of vertices
|
protectedvirtual |
the vertex pointer
|
protectedvirtual |
Accessors for the Normals' Buffer/Size.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Accessors for the Colors' Buffer/Size.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Accessors for the Texture Coordinates' Buffer/Size.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
size of the texture buffer in bytes
|
protectedvirtual |
|
protectedvirtual |
Accessors for the Index Buffer/Size.
|
protectedvirtual |
| friend makVrv::DtAggregatedGeometry::DtAggregatedGeometryCreator |
only creator can create
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
mutex needs to be used in const functions so must be mutable.
|
protected |
reference to De
|
protected |