ARGoS 3
A parallel, multi-engine simulator for swarm robotics
ci_magnets_actuator.h
Go to the documentation of this file.
1
7#ifndef CI_MAGNETS_ACTUATOR_H
8#define CI_MAGNETS_ACTUATOR_H
9
10namespace argos {
11 class CCI_MagnetsActuator;
12}
13
14#include <argos3/core/control_interface/ci_actuator.h>
15
16namespace argos {
17
18 class CCI_MagnetsActuator : virtual public CCI_Actuator {
19
20 public:
21
22 struct SInterface {
23 SInterface(const std::string& str_id,
24 Real f_current = 0.0f) :
25 Id(str_id),
26 Current(f_current) {}
27 std::string Id;
29 using TVector = std::vector<SInterface>;
30 };
31
32 public:
33
42
43 public:
44
50
51#ifdef ARGOS_WITH_LUA
52 virtual void CreateLuaState(lua_State* pt_lua_state);
53#endif
54
55 protected:
56
58
59 };
60}
61
62#endif
float Real
Collects all ARGoS code.
Definition datatypes.h:39
The namespace containing all the ARGoS related code.
Definition ci_actuator.h:12
The basic interface for all actuators.
Definition ci_actuator.h:34
virtual void CreateLuaState(lua_State *pt_lua_state)=0
Creates the Lua state for this actuator.
SInterface::TVector & GetInterfaces()
Returns a reference to the magnet interfaces.
SInterface::TVector m_vecInterfaces
virtual ~CCI_MagnetsActuator()
Destructor.
SInterface(const std::string &str_id, Real f_current=0.0f)