|
TrueReality
v0.1.1912
|
Base class for creating all the scenegraphs nodes. More...
#include <NodeBase.h>


Public Types | |
| using | BaseClass = trBase::Base |
| using | NodeMask = osg::Node::NodeMask |
| Holds the class type name for efficient comparisons. More... | |
Public Types inherited from trBase::Base | |
| using | BaseClass = trBase::SmrtClass |
Public Types inherited from trBase::SmrtClass | |
| using | BaseClass = osg::Referenced |
Public Member Functions | |
| NodeBase (const std::string name=CLASS_TYPE) | |
| ctor More... | |
| virtual const std::string & | GetType () const override |
| Returns the class type. More... | |
| virtual void | SetName (const std::string &name) |
| Sets this instances name. More... | |
| virtual osg::Node * | AsOSGNode () |
| Returns a pointer to the internal OSG Node. More... | |
| virtual const osg::Node * | AsOSGNode () const |
| Returns a constant pointer to the internal OSG Node. More... | |
| virtual trBase::UserDataContainer * | GetUserData () |
| Returns the custom user data that could be stored in the class instance Note, that if the user did not set any data, a NULL will be returned. More... | |
| virtual const trBase::UserDataContainer * | GetUserData () const |
| Returns the custom user data that could be stored in the class instance Note, that if the user did not set any data, a NULL will be returned. More... | |
| virtual void | SetUserData (trBase::UserDataContainer *data) |
| Sets the user data for the current instance. More... | |
Public Member Functions inherited from trBase::Base | |
| Base (const std::string &name=CLASS_TYPE) | |
| Holds the class type name for efficient comparisons. More... | |
| virtual const std::string & | GetName () |
| Returns this instances name. More... | |
| virtual const std::string & | GetName () const |
| Returns this instances name. More... | |
| virtual void | SetUUID (const trBase::UniqueId &id) |
| Overwrites the default internal UUID with the passed in one. More... | |
| virtual const trBase::UniqueId & | GetUUID (void) |
| Returns the instances Universally Unique ID. More... | |
Public Member Functions inherited from trBase::SmrtClass | |
| SmrtClass () | |
| Adds an easy and swappable access to the base class. More... | |
| SmrtClass (bool threadSafeRefUnref) | |
| Constructor. More... | |
| SmrtClass (const SmrtClass &inst) | |
| Copy constructor. More... | |
| virtual bool | GetThreadSafeRefUnref () |
| Get whether a mutex is used to ensure Ref() and UnRef() are thread safe. More... | |
| OpenThreads::Mutex * | GetRefMutex () const |
| Get the mutex used to ensure thread safety of Ref()/UnRef(). More... | |
| int | Ref () const |
| Increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
| int | Unref () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
| int | UnRefNoDelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
| int | ReferenceCount () const |
| Return the number of pointers currently referencing this object. More... | |
Static Public Attributes | |
| static const trUtil::RefStr | CLASS_TYPE = trUtil::RefStr("trBase::NodeBase") |
| Adds an easy and swappable access to the base class. More... | |
Static Public Attributes inherited from trBase::Base | |
| static const trUtil::RefStr | CLASS_TYPE = trUtil::RefStr("trBase::Base") |
| Adds an easy and swappable access to the base class. More... | |
Protected Member Functions | |
| ~NodeBase () | |
| dtor More... | |
Protected Member Functions inherited from trBase::Base | |
| ~Base () | |
| Base destructor. More... | |
Protected Member Functions inherited from trBase::SmrtClass | |
| ~SmrtClass () | |
Protected Attributes | |
| trBase::SmrtPtr< osg::Node > | mNode |
Private Attributes | |
| trBase::SmrtPtr< trBase::UserDataContainer > | mUserData |
Additional Inherited Members | |
Static Public Member Functions inherited from trBase::SmrtClass | |
| static OpenThreads::Mutex * | GetGlobalReferencedMutex () |
| Get the optional global Referenced mutex, this can be shared between all trBase::SmrtClass. More... | |
Base class for creating all the scenegraphs nodes.
Internally it contains an OSG Node, that can be accessed by user if additional functionality is required.
Definition at line 40 of file NodeBase.h.
Definition at line 44 of file NodeBase.h.
| using trBase::NodeBase::NodeMask = osg::Node::NodeMask |
Holds the class type name for efficient comparisons.
This is a set of bits (flags) that represent the Node. The default value is 0xffffffff (all bits set).
The most common use of these is during traversal of the scene graph.
For example, if a Node has a NodeMask value of 0x02 (only 2nd bit set) and the Camera has a CullMask of 0x4 (2nd bit not set) then during cull traversal, which takes it's TraversalMask from the Camera's CullMask, the node and any children would be ignored and thereby treated as "culled" and thus not rendered. Conversely, if the Camera CullMask were 0x3 (2nd bit set) then the node would be processed and child Nodes would be examined.
Definition at line 61 of file NodeBase.h.
| trBase::NodeBase::NodeBase | ( | const std::string | name = CLASS_TYPE | ) |
|
protected |
dtor
Definition at line 36 of file NodeBase.cpp.
|
virtual |
Returns a pointer to the internal OSG Node.
Definition at line 54 of file NodeBase.cpp.
References trBase::SmrtPtr< T >::Get(), and mNode.

|
virtual |
Returns a constant pointer to the internal OSG Node.
Definition at line 60 of file NodeBase.cpp.
References trBase::SmrtPtr< T >::Get(), and mNode.

|
overridevirtual |
Returns the class type.
Implements trBase::Base.
Definition at line 41 of file NodeBase.cpp.
References CLASS_TYPE.
|
virtual |
Returns the custom user data that could be stored in the class instance Note, that if the user did not set any data, a NULL will be returned.
Definition at line 66 of file NodeBase.cpp.
References mUserData.
|
virtual |
Returns the custom user data that could be stored in the class instance Note, that if the user did not set any data, a NULL will be returned.
Definition at line 72 of file NodeBase.cpp.
References mUserData.
|
virtual |
Sets this instances name.
Reimplemented from trBase::Base.
Definition at line 47 of file NodeBase.cpp.
References mNode, and trBase::Base::SetName().

|
virtual |
Sets the user data for the current instance.
Definition at line 78 of file NodeBase.cpp.
References mUserData.
|
static |
Adds an easy and swappable access to the base class.
Definition at line 46 of file NodeBase.h.
Referenced by GetType().
|
protected |
Definition at line 107 of file NodeBase.h.
Referenced by AsOSGNode(), NodeBase(), and SetName().
|
private |
Definition at line 116 of file NodeBase.h.
Referenced by GetUserData(), and SetUserData().