ci_footbot_gripper_actuator.h
Go to the documentation of this file.
1 
15 #ifndef CCI_FOOTBOT_GRIPPER_ACTUATOR_H
16 #define CCI_FOOTBOT_GRIPPER_ACTUATOR_H
17 
18 /* To avoid dependency problems when including */
19 namespace argos {
20  class CCI_FootBotGripperActuator;
21 }
22 
23 #include <argos3/core/control_interface/ci_actuator.h>
24 #include <argos3/core/utility/math/angles.h>
25 
26 namespace argos {
27 
28  class CCI_FootBotGripperActuator : virtual public CCI_Actuator {
29 
30  public:
31 
32  /* Useful gripper aperture values */
36 
37  public:
38 
43 
48 
53  void SetAperture(const CRadians& c_aperture);
54 
58  virtual void EnableCheckForObjectGrippedRoutine() = 0;
59 
63  virtual void DisableCheckForObjectGrippedRoutine() = 0;
64 
68  void LockPositive();
69 
73  void LockNegative();
74 
78  void Unlock();
79 
80 #ifdef ARGOS_WITH_LUA
81  virtual void CreateLuaState(lua_State* pt_lua_state);
82 #endif
83 
84  protected:
85 
87 
88  };
89 
90 }
91 
92 #endif
The basic interface for all actuators.
Definition: ci_actuator.h:34
void SetAperture(const CRadians &c_aperture)
Sets the gripper aperture.
virtual void EnableCheckForObjectGrippedRoutine()=0
Enables the ASEBA routine that checks for a gripped object each time the gripper is opened...
void LockNegative()
Sets gripper aperture to lock, negative direction.
It defines the basic type CRadians, used to store an angle value in radians.
Definition: angles.h:42
void Unlock()
Unlock gripper: objects are released.
virtual ~CCI_FootBotGripperActuator()
Class destructor.
virtual void DisableCheckForObjectGrippedRoutine()=0
Disables the ASEBA routine that checks for a gripped object each time the gripper is opened...
The namespace containing all the ARGoS related code.
Definition: ci_actuator.h:12
void LockPositive()
Sets gripper aperture to lock, positive direction.