Aruna
ActuatorSet.h
Go to the documentation of this file.
1 //
2 // Created by noeel on 30-07-19.
3 //
4 
5 #ifndef ARUNA_ACTUATORSET_H
6 #define ARUNA_ACTUATORSET_H
7 
8 #include <aruna.h>
9 #include "Actuator.h"
10 
11 namespace aruna {
12  namespace movement {
13  class ActuatorSet : public Actuator {
14  private:
15  err_t _set(axis_mask_t axisMask, int16_t speed) override;
16  public:
17  struct transform_t {
22 
27 
32 
37 
42 // TODO make speed_percentage optional
43  };
44 
45 
52 
53 
54  private:
56  const size_t transform_size;
58 
64 
65 
66  err_t err_check();
67  };
68  }
69 }
70 #endif //ARUNA_ACTUATORSET_H
static aruna::log::channel_t log
Definition: ActuatorSet.h:57
Definition: comm.cpp:14
err_t _set(axis_mask_t axisMask, int16_t speed) override
Implementation of axis movement, this function is called from set(...).
Definition: ActuatorSet.cpp:20
Actuator * driver
pointer to driver
Definition: ActuatorSet.h:21
float speed_percentage
speed percentage
Definition: ActuatorSet.h:41
axis_mask_t transform_to
axis this driver can transform to
Definition: ActuatorSet.h:26
ActuatorSet(transform_t *transform, size_t transform_size)
put diffrent drivers in a driver set to allow them to cooperate and transform into a different axis w...
Definition: ActuatorSet.cpp:13
axis_mask_t compute_axis()
Get alle the axis from all inside the set and put them together.
Definition: ActuatorSet.cpp:43
bool flip_direction
flip direction on transform?
Definition: ActuatorSet.h:31
axis_mask_t axis
axis to be set on driver to accomplish transform
Definition: ActuatorSet.h:36