Open Lighting Architecture  Latest Git
Public Member Functions | Static Public Member Functions | List of all members
ola::rdm::ResponderHelper Class Reference

Detailed Description

Helper methods for building RDM responders. These don't check that the request is for the specified pid, so be sure to get it right!

Public Member Functions

 PACK (struct sensor_value_s { uint8_t sensor;int16_t value;int16_t lowest;int16_t highest;int16_t recorded;})
 

Static Public Member Functions

static bool ExtractUInt8 (const RDMRequest *request, uint8_t *output)
 
static bool ExtractUInt16 (const RDMRequest *request, uint16_t *output)
 
static bool ExtractUInt32 (const RDMRequest *request, uint32_t *output)
 
static RDMResponseGetDeviceInfo (const RDMRequest *request, uint16_t device_model, rdm_product_category product_category, uint32_t software_version, uint16_t dmx_footprint, uint8_t current_personality, uint8_t personality_count, uint16_t dmx_start_address, uint16_t sub_device_count, uint8_t sensor_count, uint8_t queued_message_count=0)
 
static RDMResponseGetDeviceInfo (const RDMRequest *request, uint16_t device_model, rdm_product_category product_category, uint32_t software_version, const PersonalityManager *personality_manager, uint16_t dmx_start_address, uint16_t sub_device_count, uint8_t sensor_count, uint8_t queued_message_count=0)
 
static RDMResponseGetProductDetailList (const RDMRequest *request, const std::vector< rdm_product_detail > &product_details, uint8_t queued_message_count=0)
 
static RDMResponseGetPersonality (const RDMRequest *request, const PersonalityManager *personality_manager, uint8_t queued_message_count=0)
 
static RDMResponseSetPersonality (const RDMRequest *request, PersonalityManager *personality_manager, uint16_t start_address, uint8_t queued_message_count=0)
 
static RDMResponseGetPersonalityDescription (const RDMRequest *request, const PersonalityManager *personality_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetSlotInfo (const RDMRequest *request, const PersonalityManager *personality_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetSlotDescription (const RDMRequest *request, const PersonalityManager *personality_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetSlotDefaultValues (const RDMRequest *request, const PersonalityManager *personality_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetDmxAddress (const RDMRequest *request, const PersonalityManager *personality_manager, uint16_t start_address, uint8_t queued_message_count=0)
 
static RDMResponseSetDmxAddress (const RDMRequest *request, const PersonalityManager *personality_manager, uint16_t *dmx_address, uint8_t queued_message_count=0)
 
static RDMResponseGetSensorDefinition (const RDMRequest *request, const Sensors &sensor_list)
 
static RDMResponseGetSensorValue (const RDMRequest *request, const Sensors &sensor_list)
 
static RDMResponseSetSensorValue (const RDMRequest *request, const Sensors &sensor_list)
 
static RDMResponseRecordSensor (const RDMRequest *request, const Sensors &sensor_list)
 
static RDMResponseGetParamDescription (const RDMRequest *request, uint16_t pid, uint8_t pdl_size, rdm_data_type data_type, rdm_command_class command_class, rdm_pid_unit unit, rdm_pid_prefix prefix, uint32_t min_value, uint32_t default_value, uint32_t max_value, std::string description, uint8_t queued_message_count=0)
 
static RDMResponseGetASCIIParamDescription (const RDMRequest *request, uint16_t pid, rdm_command_class command_class, std::string description, uint8_t queued_message_count=0)
 
static RDMResponseGetBitFieldParamDescription (const RDMRequest *request, uint16_t pid, uint8_t pdl_size, rdm_command_class command_class, std::string description, uint8_t queued_message_count=0)
 
static RDMResponseGetRealTimeClock (const RDMRequest *request, uint8_t queued_message_count=0)
 
static RDMResponseGetListInterfaces (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetInterfaceLabel (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetInterfaceHardwareAddressType1 (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetIPV4CurrentAddress (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetIPV4DefaultRoute (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetDNSHostname (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetDNSDomainName (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetDNSNameServer (const RDMRequest *request, const NetworkManagerInterface *network_manager, uint8_t queued_message_count=0)
 
static RDMResponseGetIPV4Address (const RDMRequest *request, const ola::network::IPV4Address &value, uint8_t queued_message_count=0)
 
static RDMResponseGetString (const RDMRequest *request, const std::string &value, uint8_t queued_message_count=0, uint8_t max_length=MAX_RDM_STRING_LENGTH)
 Handle a request that returns a string. More...
 
static RDMResponseEmptyGetResponse (const RDMRequest *request, uint8_t queued_message_count=0)
 
static RDMResponseEmptySetResponse (const RDMRequest *request, uint8_t queued_message_count=0)
 
static RDMResponseSetString (const RDMRequest *request, std::string *value, uint8_t queued_message_count=0, uint8_t max_length=MAX_RDM_STRING_LENGTH)
 
static RDMResponseGetBoolValue (const RDMRequest *request, bool value, uint8_t queued_message_count=0)
 
static RDMResponseSetBoolValue (const RDMRequest *request, bool *value, uint8_t queued_message_count=0)
 
static RDMResponseGetUInt8Value (const RDMRequest *request, uint8_t value, uint8_t queued_message_count=0)
 
static RDMResponseGetUInt16Value (const RDMRequest *request, uint16_t value, uint8_t queued_message_count=0)
 
static RDMResponseGetUInt32Value (const RDMRequest *request, uint32_t value, uint8_t queued_message_count=0)
 
static RDMResponseSetUInt8Value (const RDMRequest *request, uint8_t *value, uint8_t queued_message_count=0)
 
static RDMResponseSetUInt16Value (const RDMRequest *request, uint16_t *value, uint8_t queued_message_count=0)
 
static RDMResponseSetUInt32Value (const RDMRequest *request, uint32_t *value, uint8_t queued_message_count=0)
 

Member Function Documentation

◆ GetDmxAddress()

RDMResponse * ola::rdm::ResponderHelper::GetDmxAddress ( const RDMRequest request,
const PersonalityManager personality_manager,
uint16_t  start_address,
uint8_t  queued_message_count = 0 
)
static

Get the start address

◆ GetRealTimeClock()

RDMResponse * ola::rdm::ResponderHelper::GetRealTimeClock ( const RDMRequest request,
uint8_t  queued_message_count = 0 
)
static

Get the clock response.

◆ GetSensorDefinition()

RDMResponse * ola::rdm::ResponderHelper::GetSensorDefinition ( const RDMRequest request,
const Sensors &  sensor_list 
)
static

Get a sensor definition

◆ GetSensorValue()

RDMResponse * ola::rdm::ResponderHelper::GetSensorValue ( const RDMRequest request,
const Sensors &  sensor_list 
)
static

Get a sensor value

◆ GetSlotDefaultValues()

RDMResponse * ola::rdm::ResponderHelper::GetSlotDefaultValues ( const RDMRequest request,
const PersonalityManager personality_manager,
uint8_t  queued_message_count = 0 
)
static

Get slot default values

◆ GetSlotDescription()

RDMResponse * ola::rdm::ResponderHelper::GetSlotDescription ( const RDMRequest request,
const PersonalityManager personality_manager,
uint8_t  queued_message_count = 0 
)
static

Get a slot description

◆ GetSlotInfo()

RDMResponse * ola::rdm::ResponderHelper::GetSlotInfo ( const RDMRequest request,
const PersonalityManager personality_manager,
uint8_t  queued_message_count = 0 
)
static

Get slot info

◆ GetString()

RDMResponse * ola::rdm::ResponderHelper::GetString ( const RDMRequest request,
const std::string &  value,
uint8_t  queued_message_count = 0,
uint8_t  max_length = MAX_RDM_STRING_LENGTH 
)
static

Handle a request that returns a string.

Note
this truncates the string to max_length

◆ RecordSensor()

RDMResponse * ola::rdm::ResponderHelper::RecordSensor ( const RDMRequest request,
const Sensors &  sensor_list 
)
static

Record a sensor

◆ SetDmxAddress()

RDMResponse * ola::rdm::ResponderHelper::SetDmxAddress ( const RDMRequest request,
const PersonalityManager personality_manager,
uint16_t *  dmx_address,
uint8_t  queued_message_count = 0 
)
static

Set the start address

◆ SetSensorValue()

RDMResponse * ola::rdm::ResponderHelper::SetSensorValue ( const RDMRequest request,
const Sensors &  sensor_list 
)
static

Set a sensor value


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