28enum class JogSpeed : uint8_t { Slow, Normal, Fast };
Receives parsed commands; implemented by the controller (device) and fakes (tests).
Definition remote_command.h:54
virtual void submit(const Command &cmd)=0
Delivers one parsed command (called from the httpd task).
CommandKind
What a /commands message asks for. Poll is the keepalive and anything unrecognised.
Definition remote_command.h:15
RemoteMode
Operating mode requested by the HUD.
Definition remote_command.h:18
JogSpeed
HUD jog magnitude setting.
Definition remote_command.h:28
CalAction
Calibration action requested by the HUD; same semantics as the physical button.
Definition remote_command.h:21
@ Point
like a short press while calibrating
@ Start
like a long press when not calibrating
@ Cancel
like a long press while calibrating
Command parse(std::string_view message)
Parses one message.
Definition remote_command.cpp:108
One parsed message. Only the fields matching kind are meaningful.
Definition remote_command.h:31
JogSpeed speed
Speed only.
Definition remote_command.h:40
int16_t aim_x
Aim only: image pixel, 0..319.
Definition remote_command.h:38
CalAction cal
Calibrate only.
Definition remote_command.h:37
int16_t aim_y
Aim only: image pixel, 0..239.
Definition remote_command.h:39
bool fire_on
Fire only.
Definition remote_command.h:36
RemoteMode mode
Mode only.
Definition remote_command.h:35
int8_t tilt
Move only: -1 down, 0, +1 up (up = larger tilt angle)
Definition remote_command.h:34
int8_t pan
Move only: -1 left, 0, +1 right.
Definition remote_command.h:33