13 #include <osg/ref_ptr>
14 #include <osg/PrimitiveSet>
15 #include <unordered_map>
17 #include <boost/functional/hash.hpp>
50 void releaseResources();
53 void ts_clearInstancingCache();
56 osg::Drawable* getShapeInstance(ShapeType,
unsigned int faceCount);
62 osg::DrawElementsUInt* getCircularIndexBuffer(
unsigned int vertexCount,
63 unsigned int firstIndex,
unsigned int indexStep);
68 virtual osg::Drawable* createShapeInstance(ShapeType,
unsigned int faceCount);
86 boost::hash_combine(seed, p.
type);
93 typedef std::unordered_map<ShapeKey, osg::ref_ptr<osg::Drawable>,
106 return count == other.
count && initial == other.
initial &&
116 std::size_t seed = 0;
117 boost::hash_combine(seed, p.
count);
118 boost::hash_combine(seed, p.
initial);
119 boost::hash_combine(seed, p.
step);
124 typedef std::unordered_map<IndexBufferKey, osg::ref_ptr<osg::DrawElementsUInt>,
std::size_t operator()(IndexBufferKey const &p) const
Definition: DtOsgShapeCache.h:114
unsigned int step
Definition: DtOsgShapeCache.h:102
Definition: DtOsgShapeCache.h:98
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
ShapeType type
Definition: DtOsgShapeCache.h:72
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
unsigned int initial
Definition: DtOsgShapeCache.h:101
std::size_t operator()(ShapeKey const &p) const
Definition: DtOsgShapeCache.h:83
Definition: DtOsgShapeCache.h:112
Definition: DtOsgShapeCache.h:81
Contains makVrv::DtVirtualBaseClass class.
std::unordered_map< IndexBufferKey, osg::ref_ptr< osg::DrawElementsUInt >, IndexBufferKey_hash > IndexBufferMap
Definition: DtOsgShapeCache.h:125
Definition: DtOsgShapeCache.h:70
unsigned int faceCount
Definition: DtOsgShapeCache.h:73
ShapeMap myShapeMap
Definition: DtOsgShapeCache.h:95
A cache responsible for storing osg shape geodes. Each shape is a unit size (1x1x1).
Definition: DtOsgShapeCache.h:30
unsigned int count
Definition: DtOsgShapeCache.h:100
bool operator==(const DtTextureAtlasIndexParser::StringOrFloatAttrib &lhs, const DtTextureAtlasIndexParser::StringOrFloatAttrib &rhs)
needed for search comparison code
Definition: DtTextureAtlasIndexParser.h:160
Definition: DtOsgShapeCache.h:45
Contains DLL export macros.
IndexBufferMap myIndexBufferMap
Definition: DtOsgShapeCache.h:126
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
ShapeType
Definition: DtOsgShapeCache.h:43
Definition: DtOsgShapeCache.h:46
std::unordered_map< ShapeKey, osg::ref_ptr< osg::Drawable >, ShapeKey_hash > ShapeMap
Definition: DtOsgShapeCache.h:94