mirror of
https://github.com/BotChain-Robots/control.git
synced 2026-03-09 16:22:26 +01:00
29 lines
777 B
C++
29 lines
777 B
C++
|
|
#ifndef CONTROL_ACTUATOR_H
|
|
#define CONTROL_ACTUATOR_H
|
|
|
|
#include <cstdint>
|
|
|
|
#include "Module.h"
|
|
#include "flatbuffers_generated/RobotModule_generated.h"
|
|
#include "flatbuffers_generated/TopologyMessage_generated.h"
|
|
|
|
class Actuator : public Module {
|
|
public:
|
|
explicit Actuator(uint8_t device_id) : Module(device_id) {};
|
|
|
|
Actuator(uint8_t device_id, ModuleType module_type) : Module(device_id, module_type) {};
|
|
|
|
Actuator(uint8_t device_id, ModuleType module_type, Messaging::ConnectionType connection_type,
|
|
uint8_t leader)
|
|
: Module(device_id, module_type, connection_type, leader) {};
|
|
|
|
protected:
|
|
virtual std::vector<uint8_t> get_actuation_message() = 0;
|
|
|
|
private:
|
|
[[noreturn]] void actuator_tx_loop();
|
|
};
|
|
|
|
#endif // CONTROL_MODULE_H
|