Class Command
Defined in File command.hpp
Nested Relationships
Nested Types
Inheritance Relationships
Base Type
public packet_handler::payloadBase
(Class payloadBase)
Class Documentation
-
class Command : public packet_handler::payloadBase
Public Types
-
enum Name
These values are used to detect the type of sub-payload that is ensuing.
Values:
-
enumerator BaseControl
-
enumerator Sound
-
enumerator SoundSequence
-
enumerator RequestExtra
-
enumerator ChangeFrame
-
enumerator RequestEeprom
-
enumerator SetDigitalOut
-
enumerator SetController
-
enumerator GetController
-
enumerator BaseControl
-
enum VersionFlag
Values:
-
enumerator HardwareVersion
-
enumerator FirmwareVersion
-
enumerator UniqueDeviceID
-
enumerator HardwareVersion
-
typedef ecl::PushAndPop<unsigned char> Buffer
Public Functions
-
inline virtual ~Command()
-
virtual bool serialise(ecl::PushAndPop<unsigned char> &byteStream)
-
inline virtual bool deserialise(ecl::PushAndPop<unsigned char>&)
Unused
Public Static Functions
-
static Command SetLedArray(const enum LedNumber &number, const enum LedColour &colour, Command::Data ¤t_data)
-
static Command SetDigitalOutput(const DigitalOutput &digital_output, Command::Data ¤t_data)
-
static Command SetExternalPower(const DigitalOutput &digital_output, Command::Data ¤t_data)
-
static Command PlaySoundSequence(const enum SoundSequences &number)
-
struct Data
Data structure containing data for commands.
It is important to keep this state as it will have to retain knowledge of the last known command in some instances - e.g. for gp_out commands, quite often the incoming command is only to set the output for a single led while keeping the rest of the current gp_out values as is.
For generating individual commands we modify the data here, then copy the command class (avoid doing mutexes) and spin it off for sending down to the device.
Public Functions
-
inline Data()
-
inline Data()
-
enum Name