Open Lighting Architecture: ola::plugin::artnet::RDMCommand Class Reference

| Open Lighting Architecture 0.10.9

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
ola::plugin::artnet::RDMCommand Class Referenceabstract

## Detailed Description

The base class that all RDM requests & responses inherit from.

Note
  RDMCommands may hold more than 231 bytes of data. Use the RDMCommandSerializer class if you want the wire format.

Inheritance diagram for ola::plugin::artnet::RDMCommand:

## 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.
virtual void | Print (CommandPrinter *printer, bool summarize, bool unpack_param_data) const
| Output the contents of the command to a CommandPrinter.
bool | operator== (const RDMCommand &other) const
| Test for equality.
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.

## Static Public Attributes
static const uint8_t | START_CODE = 0xcc
| The RDM Start Code.

## 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.
std::ostream & | operator<< (std::ostream &out, const RDMCommand &command)
| Output an RDMCommand object to an ostream.

## Member Enumeration Documentation

## ◆ RDMCommandClass

enum ola::rdm::RDMCommand::RDMCommandClass

A set of values representing CommandClasses in E1.20.

Note
  Please see section 6.2.10 of ANSI E1.20 for more information.

Enumerator
DISCOVER_COMMAND | Discovery Command
DISCOVER_COMMAND_RESPONSE | Discovery Response
GET_COMMAND | Get Command
GET_COMMAND_RESPONSE | Get Response
SET_COMMAND | Set Command
SET_COMMAND_RESPONSE | Set Response
INVALID_COMMAND | Invalid Command, specific to OLA

## Member Function Documentation

## ◆ Checksum()

virtual uint16_t ola::rdm::RDMCommand::Checksum | ( | uint16_t | checksum | ) | const
| inlinevirtual

Modify the calculated checksum for this command.

Parameters

  checksum | The original calculated checksum of the command.

Returns
  The new checksum to use for the command.

This can be used to generate commands with invalid checksums.

## ◆ Print()

virtual void ola::rdm::RDMCommand::Print | ( | CommandPrinter * | printer,
|  | bool | summarize,
|  | bool | unpack_param_data ) const
| inlinevirtual

Output the contents of the command to a CommandPrinter.

Parameters

  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.

The documentation for this class was generated from the following files:

- include/ola/rdm/RDMCommand.h
- common/rdm/RDMCommand.cpp