NTRT Simulator  v1.1
 All Classes Namespaces Files Functions Variables Typedefs Friends Pages
tgGhostModel Class Reference

#include <tgGhostModel.h>

Inheritance diagram for tgGhostModel:
Collaboration diagram for tgGhostModel:

Public Member Functions

 tgGhostModel (btPairCachingGhostObject *pCollisionObject, const tgTags &tags)
 
virtual ~tgGhostModel ()
 
virtual void teardown ()
 
virtual void onVisit (const tgModelVisitor &v) const
 
virtual btPairCachingGhostObject * getPGhostObject ()
 
virtual void setup (tgWorld &world)
 
virtual void step (double dt)
 
void addChild (tgModel *pChild)
 
virtual std::string toString (std::string prefix="") const
 
template<typename T >
std::vector< T * > find (const tgTagSearch &tagSearch)
 
template<typename T >
std::vector< T * > find (const std::string &tagSearch)
 
std::vector< tgModel * > getDescendants () const
 
const std::vector
< abstractMarker > & 
getMarkers () const
 
void addMarker (abstractMarker a)
 
void addTags (const std::string &space_separated_tags)
 
void addTags (const tgTags &tags)
 
bool hasTag (const std::string tag) const
 
bool hasAllTags (std::string tags)
 
bool hasAnyTags (const std::string tags)
 
bool hasNoTags ()
 
tgTagsgetTags ()
 
const tgTagsgetTags () const
 
void setTags (tgTags tags)
 
std::string getTagStr (std::string delim=" ") const
 

Protected Attributes

btPairCachingGhostObject * m_pCollisionObject
 

Detailed Description

Holds a pointer to a btPairCachingGhostObject through the build process It could be used to keep additional functions away from MuscleNP in the future, by holding pointers to the dispatcher and similar

Definition at line 45 of file tgGhostModel.h.

Constructor & Destructor Documentation

tgGhostModel::~tgGhostModel ( )
virtual

A class with a virtual memeber function requires a virtual destructor.

Definition at line 51 of file tgGhostModel.cpp.

Member Function Documentation

void tgModel::addChild ( tgModel pChild)
inherited

Add a sub-model to this model. The model takes ownership of the child sub-model and is responsible for deallocating it.

Parameters
[in,out]pChilda pointer to a sub-model
Exceptions
std::invalid_argumentis pChild is NULL, this object, or already a descendant
Todo:
Make sure that every child appears no more than once in the tree.

Definition at line 124 of file tgModel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename T >
std::vector<T*> tgModel::find ( const tgTagSearch tagSearch)
inlineinherited

Get a vector of descendants sorted by type and a tagsearch. Useful for pulling out muscle groups, or similar.

Parameters
[in]tagSearch,atagSearch that contains the desired tags
Returns
a std::vector of pointers to members that match the tag search and typename T

Definition at line 125 of file tgModel.h.

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename T >
std::vector<T*> tgModel::find ( const std::string &  tagSearch)
inlineinherited

Get a vector of descendants sorted by type and a tagsearch. Useful for pulling out muscle groups, or similar.

Parameters
[in]tagSearch,astd::string& that contains the desired tags
Returns
a std::vector of pointers to members that match the tag search and typename T

Definition at line 138 of file tgModel.h.

Here is the call graph for this function:

std::vector< tgModel * > tgModel::getDescendants ( ) const
inherited

Return a std::vector of const pointers to all sub-models.

Todo:
examine whether this should be public, and perhaps create a read only version
Returns
a std::vector of const pointers all sub-models.
Todo:
Unnecessary copying can be avoided by pasing the result collection in the recursive step.

Definition at line 172 of file tgModel.cpp.

Here is the call graph for this function:

virtual btPairCachingGhostObject* tgGhostModel::getPGhostObject ( )
inlinevirtual

Getter for rigid body

Definition at line 62 of file tgGhostModel.h.

void tgGhostModel::onVisit ( const tgModelVisitor r) const
virtual

Call tgModelVisitor::render() on self and all descendants.

Parameters
[in,out]ra reference to a tgModelVisitor

Reimplemented from tgModel.

Definition at line 53 of file tgGhostModel.cpp.

Here is the call graph for this function:

void tgModel::step ( double  dt)
virtualinherited
void tgGhostModel::teardown ( )
virtual

Deletes the children (undoes setup)

Reimplemented from tgModel.

Definition at line 59 of file tgGhostModel.cpp.

std::string tgModel::toString ( std::string  prefix = "") const
virtualinherited

Returns the tag names of this model and its children

Parameters
[in]prefixa string to append to
Returns
the original string with this model and its children's tags appended

Definition at line 154 of file tgModel.cpp.

Here is the caller graph for this function:

Member Data Documentation

btPairCachingGhostObject* tgGhostModel::m_pCollisionObject
protected

The Bullet Physics implementation of the collision object.

Definition at line 77 of file tgGhostModel.h.


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