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 
10 namespace argos {
11  class CCI_MagnetsActuator;
12 }
13 
14 #include <argos3/core/control_interface/ci_actuator.h>
15 
16 namespace 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 
41  virtual ~CCI_MagnetsActuator() {}
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
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)