#ifndef REMOTE_H #define REMOTE_H #include "constants.h" #include "radio.h" class Radio; class Remote { public: Remote(Radio *radio, uint32_t serial, const char *name); ~Remote(); uint32_t getSerial(); String getSerialString(); const char *getName(); bool registerCommandListener(std::function callback); bool unregisterCommandListener(std::function callback); void callback(byte command, byte options); private: Radio *radio; uint32_t serial; const char *name; String serialString; std::function commandListeners[constants::MAX_COMMAND_LISTENERS]; uint8_t numCommandListeners = 0; }; #endif