ARGoS 3
A parallel, multi-engine simulator for swarm robotics
ci_quadrotor_speed_actuator.h
Go to the documentation of this file.
1
7#ifndef CI_QUADROTOR_SPEED_ACTUATOR_H
8#define CI_QUADROTOR_SPEED_ACTUATOR_H
9
10/* To avoid dependency problems when including */
11namespace argos {
12 class CCI_QuadRotorSpeedActuator;
13}
14
15#include <argos3/core/control_interface/ci_actuator.h>
16#include <argos3/core/utility/math/vector3.h>
17
18namespace argos {
19
21
22 public:
23
25
30 virtual void SetLinearVelocity(const CVector3& c_velocity) = 0;
31
36 virtual void SetRotationalSpeed(const CRadians& c_speed) = 0;
37
38#ifdef ARGOS_WITH_LUA
39 virtual void CreateLuaState(lua_State* pt_lua_state);
40#endif
41
42 };
43
44}
45
46#endif
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.
It defines the basic type CRadians, used to store an angle value in radians.
Definition angles.h:42
A 3D vector class.
Definition vector3.h:31
virtual void SetLinearVelocity(const CVector3 &c_velocity)=0
Sets the linear velocity of the quadrotor.
virtual void SetRotationalSpeed(const CRadians &c_speed)=0
Sets the rotational velocity of the quadrotor around the local Z axis (yaw).