argos::CDynamics3DModel::CAbstractBody Class Referenceabstract

#include <dynamics3d_model.h>

Inheritance diagram for argos::CDynamics3DModel::CAbstractBody:
Collaboration diagram for argos::CDynamics3DModel::CAbstractBody:

Classes

struct  SData
 

Public Types

using TVector = std::vector< std::shared_ptr< CAbstractBody > >
 
using TVectorIterator = std::vector< std::shared_ptr< CAbstractBody > >::iterator
 

Public Member Functions

 CAbstractBody (CDynamics3DModel &c_model, SAnchor *ps_anchor, const std::shared_ptr< btCollisionShape > &ptr_shape, const SData &s_data)
 
virtual ~CAbstractBody ()
 
CDynamics3DModelGetModel ()
 
SAnchorGetAnchor ()
 
btCollisionShape & GetShape ()
 
const SDataGetData () const
 
virtual void Reset ()=0
 
virtual void AddToWorld (btMultiBodyDynamicsWorld &c_world)=0
 
virtual void RemoveFromWorld (btMultiBodyDynamicsWorld &c_world)=0
 
virtual void ApplyForce (const btVector3 &c_force)=0
 
virtual void ApplyForce (const btVector3 &c_force, const btVector3 &c_offset)=0
 
virtual void ApplyTorque (const btVector3 &c_torque)=0
 
virtual btTransform & GetTransform ()=0
 
void UpdateAnchor ()
 

Protected Attributes

CDynamics3DModelm_cModel
 
SAnchorm_psAnchor
 
std::shared_ptr< btCollisionShape > m_ptrShape
 
SData m_sData
 

Detailed Description

Definition at line 51 of file dynamics3d_model.h.

Member Typedef Documentation

◆ TVector

using argos::CDynamics3DModel::CAbstractBody::TVector = std::vector<std::shared_ptr<CAbstractBody> >

Definition at line 55 of file dynamics3d_model.h.

◆ TVectorIterator

using argos::CDynamics3DModel::CAbstractBody::TVectorIterator = std::vector<std::shared_ptr<CAbstractBody> >::iterator

Definition at line 57 of file dynamics3d_model.h.

Constructor & Destructor Documentation

◆ CAbstractBody()

argos::CDynamics3DModel::CAbstractBody::CAbstractBody ( CDynamics3DModel c_model,
SAnchor ps_anchor,
const std::shared_ptr< btCollisionShape > &  ptr_shape,
const SData s_data 
)

Definition at line 38 of file dynamics3d_model.cpp.

◆ ~CAbstractBody()

virtual argos::CDynamics3DModel::CAbstractBody::~CAbstractBody ( )
inlinevirtual

Definition at line 97 of file dynamics3d_model.h.

Member Function Documentation

◆ AddToWorld()

virtual void argos::CDynamics3DModel::CAbstractBody::AddToWorld ( btMultiBodyDynamicsWorld &  c_world)
pure virtual

◆ ApplyForce() [1/2]

virtual void argos::CDynamics3DModel::CAbstractBody::ApplyForce ( const btVector3 &  c_force)
pure virtual

◆ ApplyForce() [2/2]

virtual void argos::CDynamics3DModel::CAbstractBody::ApplyForce ( const btVector3 &  c_force,
const btVector3 &  c_offset 
)
pure virtual

◆ ApplyTorque()

virtual void argos::CDynamics3DModel::CAbstractBody::ApplyTorque ( const btVector3 &  c_torque)
pure virtual

◆ GetAnchor()

SAnchor & argos::CDynamics3DModel::CAbstractBody::GetAnchor ( )

Definition at line 57 of file dynamics3d_model.cpp.

◆ GetData()

const CDynamics3DModel::CAbstractBody::SData & argos::CDynamics3DModel::CAbstractBody::GetData ( ) const

Definition at line 71 of file dynamics3d_model.cpp.

◆ GetModel()

CDynamics3DModel & argos::CDynamics3DModel::CAbstractBody::GetModel ( )

Definition at line 50 of file dynamics3d_model.cpp.

◆ GetShape()

btCollisionShape & argos::CDynamics3DModel::CAbstractBody::GetShape ( )

Definition at line 64 of file dynamics3d_model.cpp.

◆ GetTransform()

virtual btTransform& argos::CDynamics3DModel::CAbstractBody::GetTransform ( )
pure virtual

◆ RemoveFromWorld()

virtual void argos::CDynamics3DModel::CAbstractBody::RemoveFromWorld ( btMultiBodyDynamicsWorld &  c_world)
pure virtual

◆ Reset()

virtual void argos::CDynamics3DModel::CAbstractBody::Reset ( )
pure virtual

◆ UpdateAnchor()

void argos::CDynamics3DModel::CAbstractBody::UpdateAnchor ( )

Definition at line 78 of file dynamics3d_model.cpp.

Member Data Documentation

◆ m_cModel

CDynamics3DModel& argos::CDynamics3DModel::CAbstractBody::m_cModel
protected

Definition at line 125 of file dynamics3d_model.h.

◆ m_psAnchor

SAnchor* argos::CDynamics3DModel::CAbstractBody::m_psAnchor
protected

Definition at line 127 of file dynamics3d_model.h.

◆ m_ptrShape

std::shared_ptr<btCollisionShape> argos::CDynamics3DModel::CAbstractBody::m_ptrShape
protected

Definition at line 129 of file dynamics3d_model.h.

◆ m_sData

SData argos::CDynamics3DModel::CAbstractBody::m_sData
protected

Definition at line 131 of file dynamics3d_model.h.