7 #ifndef DIRECTIONAL_LED_ENTITY_H
8 #define DIRECTIONAL_LED_ENTITY_H
11 class CDirectionalLEDEntity;
12 class CDirectionalLEDMedium;
15 #include <argos3/core/simulator/entity/positional_entity.h>
16 #include <argos3/core/utility/datatypes/set.h>
17 #include <argos3/core/utility/datatypes/color.h>
18 #include <argos3/core/utility/math/vector3.h>
19 #include <argos3/core/simulator/space/positional_indices/space_hash.h>
20 #include <argos3/core/simulator/space/positional_indices/grid.h>
30 typedef std::vector<CDirectionalLEDEntity*>
TList;
38 const std::string& str_id,
102 return "directional_led";
signed int SInt32
32-bit signed integer.
virtual std::string GetTypeDescription() const
Returns a string label for this class.
virtual void operator()(CAbstractSpaceHash< CDirectionalLEDEntity > &c_space_hash, CDirectionalLEDEntity &c_element)
Updates the necessary cells of a space hash.
CRadians m_cObservableAngle
The abstract definition of a space hash.
virtual void SetEnabled(bool b_enabled)
Enables or disables an entity.
ticpp::Element TConfigurationNode
The ARGoS configuration XML node.
Defines a very simple double-linked list that stores unique elements.
It defines the basic type CRadians, used to store an angle value in radians.
const CRadians & GetObservableAngle() const
Returns the observable angle of the LED.
Basic class for an entity that contains other entities.
std::vector< CDirectionalLEDEntity * > TList
CDirectionalLEDMedium & GetMedium() const
Returns the medium associated to this directional LED.
bool HasMedium() const
Returns true if this directional LED is associated to a medium.
virtual void Init(TConfigurationNode &t_tree)
Initializes the state of the entity from the XML configuration tree.
void SetMedium(CDirectionalLEDMedium &c_medium)
Sets the medium associated to this entity.
virtual void Reset()
Resets the state of the entity to whatever it was after Init() or the standalone constructor was call...
CDirectionalLEDMedium * m_pcMedium
Defines the basic cell updater of the space hash.
CSet< CDirectionalLEDEntity * > TSet
const CColor & GetColor() const
Returns the current color of the LED.
virtual void Destroy()
Destroys the entity, undoing whatever was done by Init() or by the standalone constructor.
The namespace containing all the ARGoS related code.
virtual bool operator()(CDirectionalLEDEntity &c_entity)
CDirectionalLEDEntityGridUpdater(CGrid< CDirectionalLEDEntity > &c_grid)
CDirectionalLEDEntity(CComposableEntity *pc_parent)
const CColor & GetInitColor() const
Returns the color with which the LED was initialized.
void SetInitColor(const CColor &c_color)
Sets the initialization color for this LED.
virtual ~CDirectionalLEDEntity()
void SetColor(const CColor &c_color)
Sets the current color of the LED.