OpenLCP  0.2.0
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
RDM::Responder Class Reference

The Responder class. More...

#include <responder.h>

Inheritance diagram for RDM::Responder:
Inheritance graph
[legend]

Public Member Functions

 Responder (UID id, Device *parent=nullptr)
 Responder::Responder. More...
 
virtual ~Responder ()
 Responder::~Responder.
 
void receive (const std::vector< uint8_t > &data)
 Responder::receive. More...
 
virtual void reset (bool hard) override
 Responder::reset. More...
 
- Public Member Functions inherited from RDM::Device
 Device (UID id=UID(), Device *parent=nullptr)
 Device::Device. More...
 
virtual ~Device ()
 Device::~Device.
 
void addSubDevice (uint16_t number, Device *dev)
 Device::addSubDevice. More...
 
DevicesubDevice (uint16_t number)
 Device::subDevice. More...
 
uint16_t subDeviceCount () const
 Device::subDeviceCount. More...
 
void addProductDetailId (uint16_t)
 Device::addProductDetailId. More...
 
void get (const MsgPtr message, MsgPtr response)
 Device::get. More...
 
void set (const MsgPtr message, MsgPtr response)
 Device::set. More...
 
virtual void identify (bool state)
 Device::identify. More...
 
- Public Member Functions inherited from DMX::Device
 Device ()
 Device::Device.
 
uint16_t footprint () const
 Device::footprint. More...
 
uint8_t personality () const
 Device::personality. More...
 
uint8_t personalityCount () const
 Device::personalityCount. More...
 
uint16_t address () const
 Device::address. More...
 
virtual void setPersonality (uint8_t mode)
 Device::setPersonality. More...
 
virtual bool setAddress (uint16_t start)
 Device::setAddress. More...
 

Public Attributes

union {
   uint16_t   control_field
 
   struct {
      bool   managed_proxy_flag: 1
 
      bool   subdevice_flag: 1
 
      bool   bootloader_flag: 1
 
      bool   proxied_device_flag: 1
 
   } 
 
}; 
 
- Public Attributes inherited from RDM::Device
uint16_t deviceModelID
 model ID number
 
std::string deviceModelDescription
 model description
 
uint16_t deviceProductCategory
 device category
 

Protected Member Functions

virtual void send (const std::vector< uint8_t > &data)
 Responder::send. More...
 
virtual void send (MsgPtr message)
 Responder::send. More...
 
virtual void receive (const MsgPtr message)
 Responder::receive. More...
 
virtual void rxDiscovery (const MsgPtr message, MsgPtr response)
 Responder::rxDiscovery. More...
 
virtual void rxGet (const MsgPtr message, MsgPtr response)
 Responder::rxGet. More...
 
virtual void rxSet (const MsgPtr message, MsgPtr response)
 Responder::rxSet. More...
 
void actionDiscoverUniqueBranch (const MsgPtr message, MsgPtr response)
 Responder::actionDiscoverUniqueBranch. More...
 
void actionDiscoveryMute (const MsgPtr message, MsgPtr response)
 Responder::actionDiscoveryMute. More...
 
void actionDiscoveryUnmute (const MsgPtr message, MsgPtr response)
 Responder::actionDiscoveryUnmute. More...
 
void actionGetCommsStatus (const MsgPtr message, MsgPtr response)
 Responder::actionGetCommsStatus. More...
 
void actionSetCommsStatus (const MsgPtr message, MsgPtr response)
 Responder::actionSetCommsStatus. More...
 
void actionGetQueuedMessage (const MsgPtr message, MsgPtr response)
 Responder::actionGetQueuedMessage. More...
 
void actionGetStatusMessages (const MsgPtr message, MsgPtr response)
 Responder::actionGetStatusMessages. More...
 
void actionGetStatusIdDescription (const MsgPtr message, MsgPtr response)
 Responder::actionGetStatusIdDescription. More...
 
- Protected Member Functions inherited from RDM::Device
void enqueueMessage (MsgPtr message, bool urgent=false)
 Device::enqueueMessage. More...
 
void enqueueStatus (StatusPtr status)
 Device::enqueueStatus. More...
 
bool actionPrep_ (const MsgPtr message, MsgPtr response)
 Device::actionPrep_. More...
 
void actionGetSupportedParameters (const MsgPtr message, MsgPtr response)
 Device::actionGetSupportedParameters. More...
 
void actionSetClearStatusId (const MsgPtr message, MsgPtr response)
 Device::actionSetClearStatusId. More...
 
void actionGetSubdeviceThreshold (const MsgPtr message, MsgPtr response)
 Device::actionGetSubdeviceThreshold. More...
 
void actionSetSubdeviceThreshold (const MsgPtr message, MsgPtr response)
 Device::actionSetSubdeviceThreshold. More...
 
void actionGetDeviceInfo (const MsgPtr message, MsgPtr response)
 Device::actionGetDeviceInfo. More...
 
void actionGetProductDetailIdList (const MsgPtr message, MsgPtr response)
 Device::actionGetProductDetailIdList. More...
 
void actionGetDevModelDescription (const MsgPtr message, MsgPtr response)
 Device::actionGetDevModelDescription. More...
 
void actionGetManufacturerLabel (const MsgPtr message, MsgPtr response)
 Device::actionGetManufacturerLabel. More...
 
void actionGetLanguage (const MsgPtr message, MsgPtr response)
 Device::actionGetLanguage. More...
 
void actionSetLanguage (const MsgPtr message, MsgPtr response)
 Device::actionSetLanguage. More...
 
void actionGetSoftwareVersionLabel (const MsgPtr message, MsgPtr response)
 Device::actionGetSoftwareVersionLabel. More...
 
void actionGetDmxPersonality (const MsgPtr message, MsgPtr response)
 Device::actionGetDmxPersonality. More...
 
void actionSetDmxPersonality (const MsgPtr message, MsgPtr response)
 Device::actionSetDmxPersonality. More...
 
void actionGetDmxPersonalityDesc (const MsgPtr message, MsgPtr response)
 Device::actionGetDmxPersonalityDesc. More...
 
void actionGetDmxStartAddress (const MsgPtr message, MsgPtr response)
 Device::actionGetDmxStartAddress. More...
 
void actionSetDmxStartAddress (const MsgPtr message, MsgPtr response)
 Device::actionSetDmxStartAddress. More...
 
void actionSensorDispatch (const MsgPtr message, MsgPtr response)
 Device::actionSensorDispatch. More...
 
void actionGetIdentifyDevice (const MsgPtr message, MsgPtr response)
 Device::actionGetIdentifyDevice. More...
 
void actionSetIdentifyDevice (const MsgPtr message, MsgPtr response)
 Device::actionSetIdentifyDevice. More...
 
void actionSetResetDevice (const MsgPtr message, MsgPtr response)
 Device::actionSetResetDevice. More...
 

Additional Inherited Members

- Protected Attributes inherited from RDM::Device
UID id_
 device UID
 
std::unordered_map< uint16_t, Device * > sub_devices_
 sub devices
 
std::unordered_map< PID, Parameter * > parameters_
 parameters
 
std::vector< Sensor * > sensors_
 sensors
 
std::list< uint16_t > product_detail_list_
 product detail list
 
std::deque< MsgPtrqueued_messages_
 outbound message queue
 
UID controller_uid_
 controller UID
 
std::unordered_map< uint8_t, std::queue< StatusPtr > > queued_statuses_
 outbound status queue
 
- Protected Attributes inherited from DMX::Device
std::vector< Personality * > personalities_
 available personalities
 
uint8_t personality_
 index of current personality
 
uint16_t startAddress_
 DMX start address.
 

Detailed Description

The Responder class.

Constructor & Destructor Documentation

◆ Responder()

RDM::Responder::Responder ( UID  id,
Device parent = nullptr 
)

Responder::Responder.

Parameters
id
parent

7.5 Discovery Unique Branch Message (DISC_UNIQUE_BRANCH)

7.6.3 Discovery Mute Message (DISC_MUTE) A responder port shall set its Mute flag when it receives this message containing its UID, or a broadcast address.

7.6.4 Discovery Un-Mute Message (DISC_UN_MUTE) A responder port shall clear its Mute flag when it receives this message containing its UID, or a broadcast address.

10.2.1 Communication Status (COMMS_STATUS) The COMMS_STATUS parameter is used to collect information that may be useful in analyzing the integrity of the communication system.

10.3.1 Get Queued Message (QUEUED_MESSAGE) The QUEUED_MESSAGE parameter shall be used to retrieve a message from the responder’s message queue. The Message Count field of all response messages defines the number of messages that are queued in the responder. Each QUEUED_MESSAGE response shall be composed of a single message response.

10.3.2 Get Status Messages (STATUS_MESSAGES) This parameter is used to collect Status or Error information from a device.

10.3.3 Get Status ID Description (STATUS_ID_DESCRIPTION) This parameter is used to request an ASCII text description of a given Status ID. The description may be up to 32 characters.

Here is the call graph for this function:

Member Function Documentation

◆ actionDiscoverUniqueBranch()

void RDM::Responder::actionDiscoverUniqueBranch ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionDiscoverUniqueBranch.

Parameters
message
response
Here is the caller graph for this function:

◆ actionDiscoveryMute()

void RDM::Responder::actionDiscoveryMute ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionDiscoveryMute.

Parameters
message
response
Here is the caller graph for this function:

◆ actionDiscoveryUnmute()

void RDM::Responder::actionDiscoveryUnmute ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionDiscoveryUnmute.

Parameters
message
response
Here is the caller graph for this function:

◆ actionGetCommsStatus()

void RDM::Responder::actionGetCommsStatus ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionGetCommsStatus.

Parameters
message
response
Here is the caller graph for this function:

◆ actionGetQueuedMessage()

void RDM::Responder::actionGetQueuedMessage ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionGetQueuedMessage.

Parameters
message
response
Here is the call graph for this function:
Here is the caller graph for this function:

◆ actionGetStatusIdDescription()

void RDM::Responder::actionGetStatusIdDescription ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionGetStatusIdDescription.

Parameters
message
response
Here is the call graph for this function:
Here is the caller graph for this function:

◆ actionGetStatusMessages()

void RDM::Responder::actionGetStatusMessages ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionGetStatusMessages.

Parameters
message
response
Here is the call graph for this function:
Here is the caller graph for this function:

◆ actionSetCommsStatus()

void RDM::Responder::actionSetCommsStatus ( const MsgPtr  message,
MsgPtr  response 
)
protected

Responder::actionSetCommsStatus.

Parameters
message
response
Here is the caller graph for this function:

◆ receive() [1/2]

void RDM::Responder::receive ( const MsgPtr  message)
protectedvirtual

Responder::receive.

Parameters
message

5.3 Broadcast Message Addressing When Broadcast Addressing is used for non-Discovery messages, the responders shall not send a response.

Here is the call graph for this function:

◆ receive() [2/2]

void RDM::Responder::receive ( const std::vector< uint8_t > &  data)

Responder::receive.

Parameters
data

◆ reset()

void RDM::Responder::reset ( bool  hard)
overridevirtual

Responder::reset.

Parameters
hard

10.11.2 Reset Device (RESET_DEVICE) This parameter shall also clear the Discovery Mute flag.

Reimplemented from RDM::Device.

◆ rxDiscovery()

void RDM::Responder::rxDiscovery ( const MsgPtr  message,
MsgPtr  response 
)
protectedvirtual

Responder::rxDiscovery.

Parameters
message
response
Here is the call graph for this function:
Here is the caller graph for this function:

◆ rxGet()

void RDM::Responder::rxGet ( const MsgPtr  message,
MsgPtr  response 
)
protectedvirtual

Responder::rxGet.

Parameters
message
response
Here is the call graph for this function:
Here is the caller graph for this function:

◆ rxSet()

void RDM::Responder::rxSet ( const MsgPtr  message,
MsgPtr  response 
)
protectedvirtual

Responder::rxSet.

Parameters
message
response
Here is the call graph for this function:
Here is the caller graph for this function:

◆ send() [1/2]

void RDM::Responder::send ( const std::vector< uint8_t > &  data)
protectedvirtual

Responder::send.

Parameters
data
Here is the caller graph for this function:

◆ send() [2/2]

void RDM::Responder::send ( MsgPtr  response)
protectedvirtual

Responder::send.

Parameters
response
Here is the call graph for this function:

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