4#include "../Connectivity/Loom_Wifi/Loom_Wifi.h"
12#define SEND_BASE_UDP_PORT 8000
13#define RECV_BASE_UDP_PORT 9000
23 void measure()
override {};
25 void power_up()
override {};
26 void power_down()
override {};
27 void package()
override;
34 void operator() (UDP* p) {
42 using UDPPtr = std::unique_ptr<UDP, UDPDeletor>;
75 actuators.push_back(firstAct);
87 template<
typename T,
typename... Args>
89 get_variadic_parameters((
Actuator*)firstAct, (
Actuator*)additionalActuators...);
110 StaticJsonDocument<1000> messageJson;
112 std::vector<Actuator*> actuators;
121 T* get_variadic_parameters(T* v) {
122 actuators.push_back(v);
126 template<
typename T,
typename... Args>
127 T* get_variadic_parameters(T* first, Args*... args) {
128 actuators.push_back(first);
129 return get_variadic_parameters(args...);
Definition: Actuators.h:19
Definition: Loom_Max.h:20
void initialize() override
Definition: Loom_Max.cpp:33
bool publish()
Definition: Loom_Max.cpp:59
Loom_Max(Manager &man, Loom_WIFI &wifi, T *firstAct)
Definition: Loom_Max.h:73
bool subscribe()
Definition: Loom_Max.cpp:105
Loom_Max(Manager &man, Loom_WIFI &wifi, T *firstAct, Args *... additionalActuators)
Definition: Loom_Max.h:88
Definition: Loom_Wifi.h:32
Definition: Loom_Manager.h:18
void registerModule(Module *module)
Definition: Loom_Manager.cpp:13
Close the socket and delete the UDP object when the unique ptr dissapears.
Definition: Loom_Max.h:33