|
Public Types |
| enum | ShareMode { SHARE_NONE = 0x00,
SHARE_TEXTURES = 0x01,
SHARE_STATESETS = 0x02,
SHARE_ALL
} |
Public Member Functions |
| | SharedStateManager () |
| void | setShareMode (unsigned int mode) |
| unsigned int | getShareMode () |
| void | prune () |
| void | share (osg::Node *node, OpenThreads::Mutex *mt=0) |
| void | apply (osg::Node &node) |
| void | apply (osg::Geode &geode) |
Protected Types |
typedef std::set< osg::ref_ptr<
osg::StateAttribute > > | TextureSet |
typedef std::set< osg::ref_ptr<
osg::StateSet > > | StateSetSet |
typedef std::pair< osg::StateAttribute *,
bool > | TextureSharePair |
typedef std::map< osg::StateAttribute *,
TextureSharePair > | TextureTextureSharePairMap |
typedef std::pair< osg::StateSet *,
bool > | StateSetSharePair |
typedef std::map< osg::StateSet *,
StateSetSharePair > | StateSetStateSetSharePairMap |
Protected Member Functions |
| void | process (osg::StateSet *ss, osg::Object *parent) |
| osg::StateAttribute * | find (osg::StateAttribute *sa) |
| osg::StateSet * | find (osg::StateSet *ss) |
| void | setStateSet (osg::StateSet *ss, osg::Object *object) |
| void | shareTextures (osg::StateSet *ss) |
Protected Attributes |
| TextureSet | _sharedTextureList |
| StateSetSet | _sharedStateSetList |
| TextureTextureSharePairMap | tmpSharedTextureList |
| StateSetStateSetSharePairMap | tmpSharedStateSetList |
| unsigned int | shareMode |
| OpenThreads::Mutex * | mutex |