#include <OSGCoredNodePtr.h>
Inheritance diagram for OSG::CoredNodePtr< Core >:

Public Member Functions | |
Constructors | |
| CoredNodePtr (void) | |
| CoredNodePtr (const CoredNodePtr< Core > &pCore) | |
| CoredNodePtr (const NodePtr &pNode) | |
| CoredNodePtr (const NodeCorePtr &pCore) | |
| CoredNodePtr (const typename Core::ObjPtr &pCore) | |
Destructor | |
| virtual | ~CoredNodePtr (void) |
Access | |
| void | coreChanged (void) |
| Core::ObjPtr | core (void) const |
| Core::ObjPtr & | operator-> (void) |
| operator NodePtr (void) | |
| operator typename Core::ObjPtr (void) | |
| CoredNodePtr< Core > & | operator= (const NodePtr &pNode) |
| CoredNodePtr< Core > & | operator= (const typename Core::ObjPtr &pCore) |
| CoredNodePtr< Core > & | operator= (const CoredNodePtr< Core > &pCNP) |
Access | |
| NodePtr | node (void) const |
Static Public Member Functions | |
Create | |
| static CoredNodePtr< Core > | create (void) |
Protected Types | |
| typedef CoredNodePtrBase | Inherited |
| typedef Core::ObjPtr | CorePtr |
Protected Member Functions | |
Access | |
| NodeCorePtr | getCoreV (void) const |
| void | setCore (const NodeCorePtr &pCore) |
| void | setCore (const typename Core::ObjPtr &pCore) |
| void | updateNode (void) |
Access | |
| void | setNode (NodePtrConstArg pNode) |
Private Attributes | |
| Core::ObjPtr | _pCore |
Definition at line 109 of file OSGCoredNodePtr.h.
typedef CoredNodePtrBase OSG::CoredNodePtr< Core >::Inherited [protected] |
Definition at line 171 of file OSGCoredNodePtr.h.
typedef Core::ObjPtr OSG::CoredNodePtr< Core >::CorePtr [protected] |
Definition at line 173 of file OSGCoredNodePtr.h.
| OSG::CoredNodePtr< Core >::CoredNodePtr | ( | void | ) | [inline] |
| OSG::CoredNodePtr< Core >::CoredNodePtr | ( | const CoredNodePtr< Core > & | pCore | ) | [inline] |
Definition at line 118 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, OSG::CoredNodePtrBase::node(), OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtrBase::setNode().
00118 : 00119 Inherited( ), 00120 _pCore (NullFC) 00121 { 00122 setCore(pCore._pCore ); 00123 setNode(pCore. node()); 00124 }
| OSG::CoredNodePtr< Core >::CoredNodePtr | ( | const NodePtr & | pNode | ) | [inline, explicit] |
Definition at line 90 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtrBase::node(), and OSG::CoredNodePtr< Core >::setCore().
00090 : 00091 Inherited(pNode), 00092 _pCore (NullFC) 00093 { 00094 setCore(dynamic_cast<CorePtr>(Inherited::node()->getCore())); 00095 }
| OSG::CoredNodePtr< Core >::CoredNodePtr | ( | const NodeCorePtr & | pCore | ) | [inline, explicit] |
Definition at line 98 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtr< Core >::updateNode().
00098 : 00099 Inherited( ), 00100 _pCore (NullFC) 00101 { 00102 setCore(dynamic_cast<CorePtr>(pCore)); 00103 00104 updateNode(); 00105 }
| OSG::CoredNodePtr< Core >::CoredNodePtr | ( | const typename Core::ObjPtr & | pCore | ) | [inline, explicit] |
Definition at line 108 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtr< Core >::updateNode().
00108 : 00109 Inherited( ), 00110 _pCore (NullFC) 00111 { 00112 setCore(pCore); 00113 00114 updateNode(); 00115 }
| OSG::CoredNodePtr< Core >::~CoredNodePtr | ( | void | ) | [inline, virtual] |
Definition at line 127 of file OSGCoredNodePtr.inl.
References NullFC, OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtrBase::setNode().
| CoredNodePtr< Core > OSG::CoredNodePtr< Core >::create | ( | void | ) | [inline, static] |
| void OSG::CoredNodePtr< Core >::coreChanged | ( | void | ) | [inline] |
Definition at line 140 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtrBase::node(), and OSG::CoredNodePtr< Core >::setCore().
| Core::ObjPtr OSG::CoredNodePtr< Core >::core | ( | void | ) | const [inline] |
Definition at line 146 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, FFASSERT, and OSG::CoredNodePtrBase::node().
00147 { 00148 #ifdef OSG_DEBUG 00149 FFASSERT((node()->getCore() == _pCore), false, 00150 ("CoredNodePtr::core: core changed!");); 00151 #endif 00152 00153 return _pCore; 00154 }
| Core::ObjPtr & OSG::CoredNodePtr< Core >::operator-> | ( | void | ) | [inline] |
Definition at line 157 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, FFASSERT, and OSG::CoredNodePtrBase::node().
00158 { 00159 #ifdef OSG_DEBUG 00160 FFASSERT((node()->getCore() == _pCore), false, 00161 ("CoredNodePtr::operator ->: core changed!");); 00162 #endif 00163 00164 return _pCore; 00165 }
| OSG::CoredNodePtr< Core >::operator NodePtr | ( | void | ) | [inline] |
Definition at line 168 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, FFASSERT, and OSG::CoredNodePtrBase::node().
00169 { 00170 #ifdef OSG_DEBUG 00171 FFASSERT((node()->getCore() == _pCore), false, 00172 ("CoredNodePtr::operator NodePtr: core changed!");); 00173 #endif 00174 00175 return node(); 00176 }
| OSG::CoredNodePtr< Core >::operator typename Core::ObjPtr | ( | void | ) | [inline] |
Definition at line 179 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, FFASSERT, and OSG::CoredNodePtrBase::node().
00180 { 00181 #ifdef OSG_DEBUG 00182 FFASSERT((node()->getCore() == _pCore), false, 00183 ("CoredNodePtr::operator Core::ObjPtr: core changed!");); 00184 #endif 00185 00186 return _pCore; 00187 }
| CoredNodePtr< Core > & OSG::CoredNodePtr< Core >::operator= | ( | const NodePtr & | pNode | ) | [inline] |
Definition at line 192 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtrBase::_pNode, NullFC, OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtrBase::setNode().
00193 { 00194 setNode(pNode); 00195 00196 if(_pNode != NullFC) 00197 { 00198 setCore(dynamic_cast<CorePtr>(pNode->getCore())); 00199 } 00200 else 00201 { 00202 setCore(NullFC); 00203 } 00204 00205 return *this; 00206 }
| CoredNodePtr< Core > & OSG::CoredNodePtr< Core >::operator= | ( | const typename Core::ObjPtr & | pCore | ) | [inline] |
Definition at line 209 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtr< Core >::updateNode().
00211 { 00212 setCore(pCore); 00213 00214 updateNode(); 00215 00216 return *this; 00217 }
| CoredNodePtr< Core > & OSG::CoredNodePtr< Core >::operator= | ( | const CoredNodePtr< Core > & | pCNP | ) | [inline] |
Definition at line 220 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, OSG::CoredNodePtrBase::node(), OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtrBase::setNode().
| NodeCorePtr OSG::CoredNodePtr< Core >::getCoreV | ( | void | ) | const [inline, protected, virtual] |
Implements OSG::CoredNodePtrBase.
Definition at line 230 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore.
00231 { 00232 return _pCore; 00233 }
| void OSG::CoredNodePtr< Core >::setCore | ( | const NodeCorePtr & | pCore | ) | [inline, protected] |
Definition at line 236 of file OSGCoredNodePtr.inl.
Referenced by OSG::CoredNodePtr< Core >::coreChanged(), OSG::CoredNodePtr< Core >::CoredNodePtr(), OSG::CoredNodePtr< Core >::operator=(), and OSG::CoredNodePtr< Core >::~CoredNodePtr().
00237 { 00238 setCore(dynamic_cast<CorePtr>(pCore)); 00239 }
| void OSG::CoredNodePtr< Core >::setCore | ( | const typename Core::ObjPtr & | pCore | ) | [inline, protected] |
Definition at line 242 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, and OSG::setRefd().
| void OSG::CoredNodePtr< Core >::updateNode | ( | void | ) | [inline, protected] |
Definition at line 251 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtr< Core >::_pCore, OSG::CoredNodePtrBase::node(), NullFC, and OSG::CoredNodePtrBase::setNode().
Referenced by OSG::CoredNodePtr< Core >::CoredNodePtr(), and OSG::CoredNodePtr< Core >::operator=().
00252 { 00253 if(node() == NullFC) 00254 { 00255 setNode(Node::create()); 00256 } 00257 00258 node()->setCore(_pCore); 00259 }
| NodePtr OSG::CoredNodePtrBase::node | ( | void | ) | const [inline, inherited] |
Definition at line 65 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtrBase::_pNode.
Referenced by OSG::CoredNodePtr< Core >::core(), OSG::CoredNodePtr< Core >::coreChanged(), OSG::CoredNodePtr< Core >::CoredNodePtr(), OSG::CoredNodePtr< Core >::operator NodePtr(), OSG::CoredNodePtr< Core >::operator typename Core::ObjPtr(), OSG::CoredNodePtr< Core >::operator->(), OSG::CoredNodePtr< Core >::operator=(), and OSG::CoredNodePtr< Core >::updateNode().
00066 { 00067 return _pNode; 00068 }
| void OSG::CoredNodePtrBase::setNode | ( | NodePtrConstArg | pNode | ) | [inline, protected, inherited] |
Definition at line 71 of file OSGCoredNodePtr.inl.
References OSG::CoredNodePtrBase::_pNode, and OSG::setRefd().
Referenced by OSG::CoredNodePtr< Core >::CoredNodePtr(), OSG::CoredNodePtrBase::CoredNodePtrBase(), OSG::CoredNodePtr< Core >::operator=(), OSG::CoredNodePtr< Core >::updateNode(), OSG::CoredNodePtr< Core >::~CoredNodePtr(), and OSG::CoredNodePtrBase::~CoredNodePtrBase().
Core::ObjPtr OSG::CoredNodePtr< Core >::_pCore [private] |
Definition at line 191 of file OSGCoredNodePtr.h.
Referenced by OSG::CoredNodePtr< Core >::core(), OSG::CoredNodePtr< Core >::CoredNodePtr(), OSG::CoredNodePtr< Core >::getCoreV(), OSG::CoredNodePtr< Core >::operator NodePtr(), OSG::CoredNodePtr< Core >::operator typename Core::ObjPtr(), OSG::CoredNodePtr< Core >::operator->(), OSG::CoredNodePtr< Core >::operator=(), OSG::CoredNodePtr< Core >::setCore(), and OSG::CoredNodePtr< Core >::updateNode().