ARGoS 3
A parallel, multi-engine simulator for swarm robotics
ci_eyebot_proximity_sensor.h
Go to the documentation of this file.
1
32#ifndef CCI_EYEBOT_PROXIMITY_SENSOR_H
33#define CCI_EYEBOT_PROXIMITY_SENSOR_H
34
35namespace argos {
36 class CCI_EyeBotProximitySensor;
37}
38
39#include <argos3/core/control_interface/ci_sensor.h>
40#include <argos3/core/utility/math/angles.h>
41
42namespace argos {
43
45
46 public:
47
48 struct SReading {
51
53 Value(0.0f) {}
54
55 SReading(Real f_value,
56 const CRadians& c_angle) :
57 Value(f_value),
58 Angle(c_angle) {}
59 };
60
61 typedef std::vector<SReading> TReadings;
62
63 public:
64
69
74
78 const TReadings& GetReadings() const;
79
80#ifdef ARGOS_WITH_LUA
81 virtual void CreateLuaState(lua_State* pt_lua_state);
82
83 virtual void ReadingsToLuaState(lua_State* pt_lua_state);
84#endif
85
86 protected:
87
89
90 };
91
92 std::ostream& operator<<(std::ostream& c_os, const CCI_EyeBotProximitySensor::SReading& s_reading);
93 std::ostream& operator<<(std::ostream& c_os, const CCI_EyeBotProximitySensor::TReadings& t_readings);
94
95}
96
97#endif
float Real
Collects all ARGoS code.
Definition datatypes.h:39
The namespace containing all the ARGoS related code.
Definition ci_actuator.h:12
std::ostream & operator<<(std::ostream &c_os, const CByteArray &c_byte_array)
The basic interface for all sensors.
Definition ci_sensor.h:34
It defines the basic type CRadians, used to store an angle value in radians.
Definition angles.h:42
virtual ~CCI_EyeBotProximitySensor()
Class destructor.
const TReadings & GetReadings() const
Returns the readings of this sensor.
SReading(Real f_value, const CRadians &c_angle)