sensor.h
Go to the documentation of this file.
1 
7 #ifndef SENSOR_H
8 #define SENSOR_H
9 
10 namespace argos {
11  class CComposableEntity;
12 }
13 
14 #include <argos3/core/utility/plugins/factory.h>
15 
16 namespace argos {
17 
25 
26  public:
27 
31  virtual ~CSimulatedSensor() {}
32 
43  virtual void SetRobot(CComposableEntity& c_entity) = 0;
44 
50  virtual void Update() = 0;
51  };
52 
53  /****************************************/
54  /****************************************/
55 
56 }
57 
63 #define REGISTER_SENSOR(CLASSNAME, \
64  LABEL, \
65  IMPLEMENTATION, \
66  AUTHOR, \
67  VERSION, \
68  BRIEF_DESCRIPTION, \
69  LONG_DESCRIPTION, \
70  STATUS) \
71  REGISTER_SYMBOL(CSimulatedSensor, \
72  CLASSNAME, \
73  LABEL " (" IMPLEMENTATION ")", \
74  AUTHOR, \
75  VERSION, \
76  BRIEF_DESCRIPTION, \
77  LONG_DESCRIPTION, \
78  STATUS)
79 
80 #endif
The namespace containing all the ARGoS related code.
Definition: ci_actuator.h:12
Basic class for an entity that contains other entities.
The basic interface for a simulated sensor.
Definition: sensor.h:24
virtual void Update()=0
Updates the state of the entity associated to this sensor, if the sensor is currently enabled.
virtual void SetRobot(CComposableEntity &c_entity)=0
Sets the entity associated to this sensor.
virtual ~CSimulatedSensor()
Class destructor.
Definition: sensor.h:31