ARGoS 3
A parallel, multi-engine simulator for swarm robotics
ci_camera_sensor.h
Go to the documentation of this file.
1
7#ifndef CI_CAMERAS_SENSOR_H
8#define CI_CAMERAS_SENSOR_H
9
10namespace argos {
11 class CCI_CameraSensor;
12}
13
14#include <argos3/core/control_interface/ci_sensor.h>
15#include <argos3/plugins/robots/generic/control_interface/ci_camera_sensor_algorithm.h>
16
17namespace argos {
18
19 class CCI_CameraSensor: virtual public CCI_Sensor {
20
21 public:
22
23 struct SInterface {
24 SInterface(const std::string& str_id,
25 const std::vector<CCI_CameraSensorAlgorithm*>& vec_algorithms) :
26 Id(str_id),
27 Algorithms(vec_algorithms) {}
28 std::string Id;
29 std::vector<CCI_CameraSensorAlgorithm*> Algorithms;
30 typedef std::vector<SInterface> TVector;
31 };
32
33 public:
34
39
43 virtual ~CCI_CameraSensor() {}
44
45 public:
46
52
53#ifdef ARGOS_WITH_LUA
54 virtual void CreateLuaState(lua_State* pt_lua_state);
55
56 virtual void ReadingsToLuaState(lua_State* pt_lua_state);
57#endif
58
59 protected:
60
62
63 };
64
65}
66
67#endif
The namespace containing all the ARGoS related code.
Definition ci_actuator.h:12
The basic interface for all sensors.
Definition ci_sensor.h:34
const SInterface::TVector & GetInterfaces() const
Returns a const reference to the camera interfaces.
virtual ~CCI_CameraSensor()
Destructor.
SInterface::TVector m_vecInterfaces
SInterface(const std::string &str_id, const std::vector< CCI_CameraSensorAlgorithm * > &vec_algorithms)
std::vector< SInterface > TVector
std::vector< CCI_CameraSensorAlgorithm * > Algorithms