8 #include <argos3/core/simulator/simulator.h>
9 #include <argos3/core/simulator/space/space.h>
10 #include <argos3/plugins/simulator/media/led_medium.h>
27 const std::string& str_id,
32 m_cInitColor(c_color),
120 c_space_hash.
UpdateCell(m_nI, m_nJ, m_nK, c_element);
138 m_cGrid.PositionToCell(m_nI, m_nJ, m_nK, c_entity.
GetPosition());
140 m_cGrid.UpdateCell(m_nI, m_nJ, m_nK, c_entity);
virtual void Init(TConfigurationNode &t_tree)
Initializes the state of the entity from the XML configuration tree.
void AddEntity(ENTITY &c_entity)
Adds an entity of the given type.
void SetMedium(CLEDMedium &c_medium)
Sets the medium associated to this entity.
virtual void SetEnabled(bool b_enabled)
Enables or disables an entity.
virtual void Destroy()
Destroys the entity, undoing whatever was done by Init() or by the standalone constructor.
void RemoveEntity(ENTITY &c_entity)
Removes an entity of the given type.
#define THROW_ARGOSEXCEPTION(message)
This macro throws an ARGoS exception with the passed message.
virtual bool operator()(CLEDEntity &c_entity)
The abstract definition of a space hash.
virtual void Init(TConfigurationNode &t_tree)
Initializes the state of the entity from the XML configuration tree.
const CColor & GetColor() const
Returns the current color of the LED.
ticpp::Element TConfigurationNode
The ARGoS configuration XML node.
void RemoveEntity(CLEDEntity &c_entity)
Removes the specified entity from the list of managed entities.
virtual void SetEnabled(bool b_enabled)
Enables or disables an entity.
CLEDEntity(CComposableEntity *pc_parent)
#define THROW_ARGOSEXCEPTION_NESTED(message, nested)
This macro throws an ARGoS exception with the passed message and nesting the passed exception...
const CVector3 & GetPosition() const
REGISTER_SPACE_OPERATION(CSpaceOperationAddEntity, CSpaceOperationAddCFloorEntity, CFloorEntity)
void ApplyTo(CSpace &c_space, CLEDEntity &c_entity)
virtual void Reset()
Resets the state of the entity to whatever it was after Init() or the standalone constructor was call...
Basic class for an entity that contains other entities.
ssize_t GetIndex() const
Returns the entity index.
bool IsEnabled() const
Returns true if the entity is enabled.
virtual SInt32 SpaceToHashTable(Real f_coord, UInt32 un_axis)
Converts a single space coordinate into a space hash cell coordinate.
virtual void operator()(CAbstractSpaceHash< CLEDEntity > &c_space_hash, CLEDEntity &c_element)
Updates the necessary cells of a space hash.
CLEDEntityGridUpdater(CGrid< CLEDEntity > &c_grid)
void GetNodeAttribute(TConfigurationNode &t_node, const std::string &str_attribute, T &t_buffer)
Returns the value of a node's attribute.
The exception that wraps all errors in ARGoS.
virtual void UpdateCell(SInt32 n_x, SInt32 n_y, SInt32 n_z, ENTITY &c_entity)=0
Adds an entity to a cell of the space hash.
void Disable()
Disables the entity.
void AddEntity(CLEDEntity &c_entity)
Adds the specified entity to the list of managed entities.
const std::string & GetId() const
Returns the id of this entity.
CLEDMedium & GetMedium() const
Returns the medium associated to this LED.
The namespace containing all the ARGoS related code.
std::string GetContext() const
Returns the context of this entity.
void SetColor(const CColor &c_color)
Sets the current color of the LED.
void ApplyTo(CSpace &c_space, CLEDEntity &c_entity)