argos::CPrototypeLinkEntity Class Reference

#include <prototype_link_entity.h>

Inheritance diagram for argos::CPrototypeLinkEntity:
Collaboration diagram for argos::CPrototypeLinkEntity:

Public Types

enum  EGeometry { CYLINDER , BOX , SPHERE , CONVEX_HULL }
 
using TVector = std::vector< CPrototypeLinkEntity * >
 
using TVectorIterator = std::vector< CPrototypeLinkEntity * >::iterator
 
using TVectorConstIterator = std::vector< CPrototypeLinkEntity * >::const_iterator
 
- Public Types inherited from argos::CEntity
typedef std::vector< CEntity * > TVector
 A vector of entities. More...
 
typedef unordered_map< std::string, CEntity * > TMap
 A map of entities. More...
 
typedef std::multimap< std::string, CEntity * > TMultiMap
 A multi-map of entities. More...
 

Public Member Functions

 ENABLE_VTABLE ()
 
 CPrototypeLinkEntity (CComposableEntity *pc_parent)
 
virtual ~CPrototypeLinkEntity ()
 
virtual void Init (TConfigurationNode &t_tree)
 Initializes the state of the entity from the XML configuration tree. More...
 
virtual std::string GetTypeDescription () const
 Returns a string label for this class. More...
 
EGeometry GetGeometry () const
 
const CVector3GetExtents () const
 
const std::vector< CVector3 > & GetConvexHullPoints () const
 
const std::vector< CConvexHull::SFace > & GetConvexHullFaces () const
 
Real GetMass () const
 
SAnchorGetAnchor ()
 
const SAnchorGetAnchor () const
 
- Public Member Functions inherited from argos::CEntity
 ENABLE_VTABLE ()
 
 CEntity (CComposableEntity *pc_parent)
 Class constructor. More...
 
 CEntity (CComposableEntity *pc_parent, const std::string &str_id)
 Class constructor. More...
 
virtual ~CEntity ()
 Class destructor. More...
 
virtual void Reset ()
 Resets the state of the entity to whatever it was after Init() or the standalone constructor was called. More...
 
virtual void Destroy ()
 Destroys the entity, undoing whatever was done by Init() or by the standalone constructor. More...
 
const std::string & GetId () const
 Returns the id of this entity. More...
 
std::string GetContext () const
 Returns the context of this entity. More...
 
bool HasParent () const
 Returns true if this entity has a parent. More...
 
CEntityGetRootEntity ()
 Returns the root entity containing this entity. More...
 
const CEntityGetRootEntity () const
 Returns the root entity containing this entity. More...
 
CComposableEntityGetParent ()
 Returns this entity's parent. More...
 
const CComposableEntityGetParent () const
 Returns this entity's parent. More...
 
void SetParent (CComposableEntity &c_parent)
 Sets this entity's parent. More...
 
virtual void Update ()
 Updates the state of this entity. More...
 
ssize_t GetIndex () const
 Returns the entity index. More...
 
void SetIndex (ssize_t n_idx)
 Sets the entity index. More...
 
bool IsEnabled () const
 Returns true if the entity is enabled. More...
 
void Enable ()
 Enables the entity. More...
 
void Disable ()
 Disables the entity. More...
 
virtual void SetEnabled (bool b_enabled)
 Enables or disables an entity. More...
 
TConfigurationNodeGetConfigurationNode ()
 Returns a pointer to the configuration node that was used to create this entity. More...
 
- Public Member Functions inherited from argos::CBaseConfigurableResource
virtual ~CBaseConfigurableResource ()
 Class destructor. More...
 
- Public Member Functions inherited from argos::EnableVTableFor< CEntity >
size_t GetTagHelper (const DERIVED *) const
 

Detailed Description

Definition at line 24 of file prototype_link_entity.h.

Member Typedef Documentation

◆ TVector

Definition at line 30 of file prototype_link_entity.h.

◆ TVectorConstIterator

Definition at line 32 of file prototype_link_entity.h.

◆ TVectorIterator

Definition at line 31 of file prototype_link_entity.h.

Member Enumeration Documentation

◆ EGeometry

Enumerator
CYLINDER 
BOX 
SPHERE 
CONVEX_HULL 

Definition at line 35 of file prototype_link_entity.h.

Constructor & Destructor Documentation

◆ CPrototypeLinkEntity()

argos::CPrototypeLinkEntity::CPrototypeLinkEntity ( CComposableEntity pc_parent)

Definition at line 17 of file prototype_link_entity.cpp.

◆ ~CPrototypeLinkEntity()

virtual argos::CPrototypeLinkEntity::~CPrototypeLinkEntity ( )
inlinevirtual

Definition at line 46 of file prototype_link_entity.h.

Member Function Documentation

◆ ENABLE_VTABLE()

argos::CPrototypeLinkEntity::ENABLE_VTABLE ( )

◆ GetAnchor() [1/2]

SAnchor& argos::CPrototypeLinkEntity::GetAnchor ( )
inline

Definition at line 82 of file prototype_link_entity.h.

◆ GetAnchor() [2/2]

const SAnchor& argos::CPrototypeLinkEntity::GetAnchor ( ) const
inline

Definition at line 86 of file prototype_link_entity.h.

◆ GetConvexHullFaces()

const std::vector<CConvexHull::SFace>& argos::CPrototypeLinkEntity::GetConvexHullFaces ( ) const
inline

Definition at line 70 of file prototype_link_entity.h.

◆ GetConvexHullPoints()

const std::vector<CVector3>& argos::CPrototypeLinkEntity::GetConvexHullPoints ( ) const
inline

Definition at line 62 of file prototype_link_entity.h.

◆ GetExtents()

const CVector3& argos::CPrototypeLinkEntity::GetExtents ( ) const
inline

Definition at line 58 of file prototype_link_entity.h.

◆ GetGeometry()

EGeometry argos::CPrototypeLinkEntity::GetGeometry ( ) const
inline

Definition at line 54 of file prototype_link_entity.h.

◆ GetMass()

Real argos::CPrototypeLinkEntity::GetMass ( ) const
inline

Definition at line 78 of file prototype_link_entity.h.

◆ GetTypeDescription()

virtual std::string argos::CPrototypeLinkEntity::GetTypeDescription ( ) const
inlinevirtual

Returns a string label for this class.

Returns
A string label for this class.

Reimplemented from argos::CEntity.

Definition at line 50 of file prototype_link_entity.h.

◆ Init()

void argos::CPrototypeLinkEntity::Init ( TConfigurationNode t_tree)
virtual

Initializes the state of the entity from the XML configuration tree.

If the id of the entity has not been set yet, this method sets an id for the entity. If the entity has no parent, this method parses the passed XML tree and looks for the id attribute, setting its value as id. If, instead, this entity has a parent, the id is set as GetParent().GetId() + "." + GetTypeDescription().

Exceptions
CARGoSExceptionif a parse error occurred

Reimplemented from argos::CEntity.

Definition at line 27 of file prototype_link_entity.cpp.