33#ifndef DART_DYNAMICS_DETAIL_NODEPTR_HPP_ 
   34#define DART_DYNAMICS_DETAIL_NODEPTR_HPP_ 
   48template <
class NodeT, 
class BodyNodeT>
 
   52  template <
class, 
class>
 
   70  template <
class OtherNodeT, 
class OtherBodyNodeT>
 
   84  template <
class OtherNodeT, 
class OtherBodyNodeT>
 
   93  operator NodeT*() 
const 
 
 
  150template <
class NodeT, 
class BodyNodeT>
 
  154  template <
class, 
class>
 
  170  template <
class OtherNodeT, 
class OtherBodyNodeT>
 
  178  template <
class OtherNodeT, 
class OtherBodyNodeT>
 
  193  template <
class OtherNodeT, 
class OtherBodyNodeT>
 
  202  template <
class OtherNodeT, 
class OtherBodyNodeT>
 
  216    if (
nullptr == bodyNode)
 
  220    if (
nullptr == destructor)
 
 
  243  template <
class OtherNodeT, 
class OtherBodyNodeT>
 
 
TemplateBodyNodePtr is a templated class that enables users to create a reference-counting BodyNodePt...
Definition BodyNodePtr.hpp:110
TemplateNodePtr is a templated class that enables users to create a strong reference-counting NodePtr...
Definition NodePtr.hpp:50
NodeT * get() const
Get the raw Node pointer.
Definition NodePtr.hpp:111
TemplateNodePtr & operator=(NodeT *_ptr)
Assignment operator.
Definition NodePtr.hpp:77
NodeT & operator*() const
Dereferencing operator.
Definition NodePtr.hpp:99
TemplateBodyNodePtr< BodyNodeT > mBodyNodePtr
Hold onto a BodyNodePtr to the Node's associated BodyNode to make sure that the BodyNode stays alive.
Definition NodePtr.hpp:142
TemplateNodePtr & operator=(const TemplateNodePtr< OtherNodeT, OtherBodyNodeT > &_ptr)
Assignment operator for NodePtrs.
Definition NodePtr.hpp:85
TemplateNodePtr(const TemplateNodePtr< OtherNodeT, OtherBodyNodeT > &_ptr)
Constructor that takes in a strong NodePtr.
Definition NodePtr.hpp:71
TemplateNodePtr()
Default constructor.
Definition NodePtr.hpp:58
NodeT element_type
Definition NodePtr.hpp:55
std::shared_ptr< NodeDestructor > mDestructor
Hold onto a shared_ptr to the Node's Destructor to make sure the Node stays alive.
Definition NodePtr.hpp:138
TemplateNodePtr(NodeT *_ptr)
Typical constructor.
Definition NodePtr.hpp:64
NodeT * operator->() const
Dereferencing operation.
Definition NodePtr.hpp:105
NodeT * mNode
Node that this NodePtr refers to.
Definition NodePtr.hpp:134
void set(NodeT *_ptr)
Set the Node for this NodePtr.
Definition NodePtr.hpp:117
TemplateWeakBodyNodePtr is a templated class that enables users to create a non-reference-holding Wea...
Definition BodyNodePtr.hpp:224
TemplateWeakNodePtr is a templated class that enables users to create a weak non-reference-holding We...
Definition NodePtr.hpp:152
NodeT * mNode
Node that this pointer references.
Definition NodePtr.hpp:253
TemplateWeakNodePtr & operator=(NodeT *_ptr)
Assignment operator for raw Node pointers.
Definition NodePtr.hpp:186
std::weak_ptr< NodeDestructor > mWeakDestructor
Destructor for the Node.
Definition NodePtr.hpp:256
TemplateWeakNodePtr & operator=(const TemplateWeakNodePtr< OtherNodeT, OtherBodyNodeT > &_weakPtr)
Assignment operator for WeakNodePtrs.
Definition NodePtr.hpp:194
TemplateNodePtr< NodeT, BodyNodeT > lock() const
Locks the Node reference to ensure that the referenced Node is currently still available.
Definition NodePtr.hpp:213
TemplateWeakNodePtr()
Default constructor.
Definition NodePtr.hpp:158
TemplateWeakNodePtr(NodeT *_ptr)
Typical constructor.
Definition NodePtr.hpp:164
TemplateWeakNodePtr(const TemplateNodePtr< OtherNodeT, OtherBodyNodeT > &_strongPtr)
Constructor that takes in a strong NodePtr.
Definition NodePtr.hpp:179
TemplateWeakNodePtr & operator=(const TemplateNodePtr< OtherNodeT, OtherBodyNodeT > &_strongPtr)
Assignment operator for strong NodePtrs.
Definition NodePtr.hpp:203
void set(const TemplateWeakNodePtr< OtherNodeT, OtherBodyNodeT > &_weakPtr)
Set the Node for this WeakNodePtr based on another WeakNodePtr.
Definition NodePtr.hpp:244
void set(NodeT *_ptr)
Set the Node for this WeakNodePtr.
Definition NodePtr.hpp:227
TemplateWeakBodyNodePtr< BodyNodeT > mWeakBodyNodePtr
Pointer to the BodyNode that the Node is attached to.
Definition NodePtr.hpp:259
TemplateWeakNodePtr(const TemplateWeakNodePtr< OtherNodeT, OtherBodyNodeT > &_weakPtr)
Constructor that takes in a WeakNodePtr.
Definition NodePtr.hpp:171
Definition BulletCollisionDetector.cpp:65