Open Lighting Architecture
Latest Git
|
The base class that all RDM requests & responses inherit from.
Public Types | |
enum | RDMCommandClass { DISCOVER_COMMAND = 0x10, DISCOVER_COMMAND_RESPONSE = 0x11, GET_COMMAND = 0x20, GET_COMMAND_RESPONSE = 0x21, SET_COMMAND = 0x30, SET_COMMAND_RESPONSE = 0x31, INVALID_COMMAND = 0xff } |
A set of values representing CommandClasses in E1.20. More... | |
Public Member Functions | |
virtual uint16_t | Checksum (uint16_t checksum) const |
Modify the calculated checksum for this command. More... | |
virtual void | Print (CommandPrinter *printer, bool summarize, bool unpack_param_data) const |
Output the contents of the command to a CommandPrinter. More... | |
bool | operator== (const RDMCommand &other) const |
Test for equality. More... | |
Accessors | |
virtual uint8_t | SubStartCode () const |
The Sub-Start code for the RDMCommand. | |
virtual uint8_t | MessageLength () const |
The Message length field. | |
const UID & | SourceUID () const |
Returns the Source UID of the RDMCommand. | |
const UID & | DestinationUID () const |
Returns the Destination UID of the RDMCommand. | |
uint8_t | TransactionNumber () const |
Returns the Transaction Number of the RDMCommand. | |
uint8_t | PortIdResponseType () const |
Returns the Port ID of the RDMCommand. | |
uint8_t | MessageCount () const |
Returns the Message Count of the RDMCommand. | |
uint16_t | SubDevice () const |
Returns the SubDevice of the RDMCommand. | |
virtual RDMCommandClass | CommandClass () const =0 |
The CommmandClass of this message. | |
uint16_t | ParamId () const |
Returns the Parameter ID of the RDMCommand. | |
unsigned int | ParamDataSize () const |
Returns the Size of the Parameter Data of the RDMCommand. | |
const uint8_t * | ParamData () const |
Returns the Parameter Data of the RDMCommand. | |
Static Public Member Functions | |
static RDMCommand * | Inflate (const uint8_t *data, unsigned int length) |
Extract a RDMCommand from raw data. More... | |
Static Public Attributes | |
static const uint8_t | START_CODE = ola::rdm::START_CODE |
The RDM Start Code. More... | |
Protected Member Functions | |
RDMCommand (const UID &source, const UID &destination, uint8_t transaction_number, uint8_t port_id, uint8_t message_count, uint16_t sub_device, uint16_t param_id, const uint8_t *data, unsigned int length) | |
Protected constructor for derived classes. | |
void | SetParamData (const uint8_t *data, unsigned int length) |
Static Protected Member Functions | |
static RDMStatusCode | VerifyData (const uint8_t *data, size_t length, RDMCommandHeader *command_message) |
static RDMCommandClass | ConvertCommandClass (uint8_t command_type) |
Protected Attributes | |
uint8_t | m_port_id |
UID | m_source |
UID | m_destination |
uint8_t | m_transaction_number |
String Methods | |
std::string | ToString () const |
Create a human readable string from the RDMCommand object. More... | |
std::ostream & | operator<< (std::ostream &out, const RDMCommand &command) |
Output an RDMCommand object to an ostream. More... | |
A set of values representing CommandClasses in E1.20.
|
inlinevirtual |
Modify the calculated checksum for this command.
checksum | The original calculated checksum of the command. |
This can be used to generate commands with invalid checksums.
Reimplemented in ola::rdm::RDMRequest.
|
inlinevirtual |
Output the contents of the command to a CommandPrinter.
printer | CommandPrinter which will use the information |
summarize | enable a one line summary |
unpack_param_data | if the summary isn't enabled, this controls if we unpack and display parameter data. |
Reimplemented in ola::rdm::RDMDiscoveryResponse, ola::rdm::RDMDiscoveryRequest, ola::rdm::RDMResponse, and ola::rdm::RDMRequest.
|
static |
The RDM Start Code.