OpenSceneGraph  3.5.1
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
osg::ObserverNodePath Class Reference

ObserverNodePath is an observer class for tracking changes to a NodePath, that automatically invalidates it when nodes are deleted. More...

Public Member Functions

 ObserverNodePath ()
 
 ObserverNodePath (const ObserverNodePath &rhs)
 
 ObserverNodePath (const osg::NodePath &nodePath)
 
 ~ObserverNodePath ()
 
ObserverNodePathoperator= (const ObserverNodePath &rhs)
 
void setNodePathTo (osg::Node *node)
 get the NodePath from the first parental chain back to root, plus the specified node. More...
 
void setNodePath (const osg::RefNodePath &nodePath)
 
void setNodePath (const osg::NodePath &nodePath)
 
void clearNodePath ()
 
bool getRefNodePath (RefNodePath &refNodePath) const
 Get a thread safe RefNodePath, return true if NodePath is valid. More...
 
bool getNodePath (NodePath &nodePath) const
 Get a lightweight NodePath that isn't thread safe but may be safely used in single threaded applications, or when its known that the NodePath won't be invalidated during usage of the NodePath. More...
 
bool empty () const
 

Protected Types

typedef std::vector< osg::observer_ptr< osg::Node > > ObsNodePath
 

Protected Member Functions

void _setNodePath (const osg::NodePath &nodePath)
 
void _clearNodePath ()
 

Protected Attributes

OpenThreads::Mutex _mutex
 
ObsNodePath _nodePath
 

Detailed Description

ObserverNodePath is an observer class for tracking changes to a NodePath, that automatically invalidates it when nodes are deleted.

Member Typedef Documentation

Constructor & Destructor Documentation

osg::ObserverNodePath::ObserverNodePath ( )
osg::ObserverNodePath::ObserverNodePath ( const ObserverNodePath rhs)
osg::ObserverNodePath::ObserverNodePath ( const osg::NodePath nodePath)
osg::ObserverNodePath::~ObserverNodePath ( )

Member Function Documentation

void osg::ObserverNodePath::_clearNodePath ( )
protected
void osg::ObserverNodePath::_setNodePath ( const osg::NodePath nodePath)
protected
void osg::ObserverNodePath::clearNodePath ( )
bool osg::ObserverNodePath::empty ( ) const
inline
bool osg::ObserverNodePath::getNodePath ( NodePath nodePath) const

Get a lightweight NodePath that isn't thread safe but may be safely used in single threaded applications, or when its known that the NodePath won't be invalidated during usage of the NodePath.

return true if NodePath is valid.

bool osg::ObserverNodePath::getRefNodePath ( RefNodePath refNodePath) const

Get a thread safe RefNodePath, return true if NodePath is valid.

ObserverNodePath& osg::ObserverNodePath::operator= ( const ObserverNodePath rhs)
void osg::ObserverNodePath::setNodePath ( const osg::RefNodePath nodePath)
void osg::ObserverNodePath::setNodePath ( const osg::NodePath nodePath)
void osg::ObserverNodePath::setNodePathTo ( osg::Node node)

get the NodePath from the first parental chain back to root, plus the specified node.

Member Data Documentation

OpenThreads::Mutex osg::ObserverNodePath::_mutex
mutableprotected
ObsNodePath osg::ObserverNodePath::_nodePath
protected

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

osg logo
Generated at Wed Nov 11 2015 22:14:38 for the OpenSceneGraph by doxygen 1.8.10.