A container of CTagEntity. More...
#include <tag_equipped_entity.h>
Classes | |
struct | SInstance |
Public Member Functions | |
ENABLE_VTABLE () | |
CTagEquippedEntity (CComposableEntity *pc_parent) | |
Class constructor. More... | |
CTagEquippedEntity (CComposableEntity *pc_parent, const std::string &str_id) | |
Class constructor. More... | |
virtual | ~CTagEquippedEntity () |
virtual void | Init (TConfigurationNode &t_tree) |
Initializes the state of the entity from the XML configuration tree. More... | |
virtual void | Enable () |
virtual void | Disable () |
void | AddTag (const std::string &str_id, const CVector3 &c_position, const CQuaternion &c_orientation, SAnchor &s_anchor, const CRadians &c_observable_angle, Real f_side_length, const std::string &str_payload) |
Programmatically creates a new tag. More... | |
CTagEntity & | GetTag (UInt32 un_index) |
Returns a tag by numeric index. More... | |
SInstance::TVector & | GetInstances () |
Returns the tags. More... | |
const SInstance::TVector & | GetInstances () const |
Returns the tags as a const reference. More... | |
void | SetTagPayload (UInt32 un_index, const std::string &str_payload) |
Sets the payload of a tag. More... | |
void | SetTagPayloads (const std::string &str_payload) |
Sets the payload of all the tags to the given payload. More... | |
void | SetTagPayloads (const std::vector< std::string > &vec_payloads) |
Sets the payload of each tags to the payload given in the passed vector. More... | |
void | SetMedium (CTagMedium &c_medium) |
Sets the medium associated to this entity. More... | |
virtual std::string | GetTypeDescription () const |
Returns a string label for this class. More... | |
Public Member Functions inherited from argos::CComposableEntity | |
ENABLE_VTABLE () | |
CComposableEntity (CComposableEntity *pc_parent) | |
Class constructor. More... | |
CComposableEntity (CComposableEntity *pc_parent, const std::string &str_id) | |
Class constructor. More... | |
virtual | ~CComposableEntity () |
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 | Update () |
Updates the status of this entity. More... | |
virtual void | SetEnabled (bool b_enabled) |
Enables or disables an entity. More... | |
void | AddComponent (CEntity &c_component) |
Adds a component to this composable entity. More... | |
CEntity & | RemoveComponent (const std::string &str_component) |
Removes a component from this composable entity. More... | |
CEntity & | GetComponent (const std::string &str_component) |
Returns the component with the passed string label. More... | |
template<class E > | |
E & | GetComponent (const std::string &str_component) |
Returns the component with the passed string label. More... | |
bool | HasComponent (const std::string &str_component) |
Returns true if this composable entity has a component with the given string label. More... | |
CEntity::TMultiMap::iterator | FindComponent (const std::string &str_component) |
Searches for a component with the given string label. More... | |
CEntity::TMultiMap & | GetComponentMap () |
Returns the map of all the components. More... | |
CEntity::TVector & | GetComponentVector () |
Returns the vector of all the components. More... | |
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 | 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... | |
CEntity & | GetRootEntity () |
Returns the root entity containing this entity. More... | |
const CEntity & | GetRootEntity () const |
Returns the root entity containing this entity. More... | |
CComposableEntity & | GetParent () |
Returns this entity's parent. More... | |
const CComposableEntity & | GetParent () const |
Returns this entity's parent. More... | |
void | SetParent (CComposableEntity &c_parent) |
Sets this entity's parent. 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... | |
TConfigurationNode * | GetConfigurationNode () |
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 |
Protected Member Functions | |
virtual void | UpdateComponents () |
Calls the Update() method on all the components. More... | |
Protected Attributes | |
SInstance::TVector | m_vecInstances |
List of the tags managed by this entity. More... | |
Additional Inherited Members | |
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... | |
A container of CTagEntity.
This is a convenience class that acts a container of CTagEntity objects. It is mostly useful when a robot is equipped with a number of tags, and you want to manage them comfortably.
Definition at line 30 of file tag_equipped_entity.h.
argos::CTagEquippedEntity::CTagEquippedEntity | ( | CComposableEntity * | pc_parent | ) |
Class constructor.
pc_parent | The parent entity. |
Definition at line 29 of file tag_equipped_entity.cpp.
argos::CTagEquippedEntity::CTagEquippedEntity | ( | CComposableEntity * | pc_parent, |
const std::string & | str_id | ||
) |
Class constructor.
pc_parent | The parent entity. |
str_id | The id of this entity. |
Definition at line 37 of file tag_equipped_entity.cpp.
|
inlinevirtual |
Definition at line 66 of file tag_equipped_entity.h.
void argos::CTagEquippedEntity::AddTag | ( | const std::string & | str_id, |
const CVector3 & | c_position, | ||
const CQuaternion & | c_orientation, | ||
SAnchor & | s_anchor, | ||
const CRadians & | c_observable_angle, | ||
Real | f_side_length, | ||
const std::string & | str_payload | ||
) |
Programmatically creates a new tag.
str_id | The identifier of the tag. |
c_position | The position of the tag. |
c_orientation | The orientation of the tag. |
s_anchor | The anchor of the tag. |
c_observable_angle | The observable angle of the tag. |
f_side_length | The side length of the tag. |
str_payload | The payload of the tag. |
Definition at line 116 of file tag_equipped_entity.cpp.
|
virtual |
Definition at line 104 of file tag_equipped_entity.cpp.
|
virtual |
Definition at line 92 of file tag_equipped_entity.cpp.
argos::CTagEquippedEntity::ENABLE_VTABLE | ( | ) |
|
inline |
Returns the tags.
Definition at line 107 of file tag_equipped_entity.h.
|
inline |
Returns the tags as a const reference.
Definition at line 116 of file tag_equipped_entity.h.
CTagEntity & argos::CTagEquippedEntity::GetTag | ( | UInt32 | un_index | ) |
Returns a tag by numeric index.
un_index | The index of the specified tag. |
Definition at line 145 of file tag_equipped_entity.cpp.
|
inlinevirtual |
Returns a string label for this class.
Reimplemented from argos::CComposableEntity.
Definition at line 151 of file tag_equipped_entity.h.
|
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()
.
CARGoSException | if a parse error occurred |
Reimplemented from argos::CEntity.
Definition at line 46 of file tag_equipped_entity.cpp.
void argos::CTagEquippedEntity::SetMedium | ( | CTagMedium & | c_medium | ) |
Sets the medium associated to this entity.
c_medium | The medium to associate to this entity. |
Definition at line 223 of file tag_equipped_entity.cpp.
void argos::CTagEquippedEntity::SetTagPayload | ( | UInt32 | un_index, |
const std::string & | str_payload | ||
) |
Sets the payload of a tag.
un_index | The index of the specified tag. |
c_payload | The payload of the tag. |
Definition at line 159 of file tag_equipped_entity.cpp.
void argos::CTagEquippedEntity::SetTagPayloads | ( | const std::string & | str_payload | ) |
Sets the payload of all the tags to the given payload.
c_payload | The payload for the tags. |
Definition at line 174 of file tag_equipped_entity.cpp.
void argos::CTagEquippedEntity::SetTagPayloads | ( | const std::vector< std::string > & | vec_payloads | ) |
Sets the payload of each tags to the payload given in the passed vector.
vec_payloads | A vector containing the payload for the tags. |
CARGoSException | if the size of the passed vector is different from the number of tags. |
Definition at line 183 of file tag_equipped_entity.cpp.
|
protectedvirtual |
Calls the Update() method on all the components.
Reimplemented from argos::CComposableEntity.
Definition at line 204 of file tag_equipped_entity.cpp.
|
protected |
List of the tags managed by this entity.
Definition at line 162 of file tag_equipped_entity.h.