RDMnet  HEAD (unstable)
Implementation of ANSI E1.33 (RDMnet)
View other versions:
Common Definitions

Overview

Definitions shared by other APIs in this module.

Data Structures

class  SourceAddr
 The source address for an unsolicited RDM response generated by a local component. More...
 
class  DestinationAddr
 A destination address for an RDM command in RDMnet's RPT protocol. More...
 
class  ClientConnectedInfo
 Information about a successful connection to a broker delivered to an RDMnet callback function. More...
 
class  ClientConnectFailedInfo
 Information about a failed connection to a broker delivered to an RDMnet callback function. More...
 
class  ClientDisconnectedInfo
 Information about a disconnect event from a broker delivered to an RDMnet callback function. More...
 
class  Scope
 An RDMnet scope configuration. More...
 
class  RdmResponseAction
 A class representing a synchronous action to take in response to a received RDM command. More...
 
class  EptResponseAction
 A class representing a synchronous action to take in response to a received EPT data message. More...
 
struct  DynamicUidMapping
 A mapping from a dynamic UID to a responder ID (RID). More...
 
class  DynamicUidAssignmentList
 A list of mappings from dynamic UIDs to responder IDs received from an RDMnet broker. More...
 
struct  EptSubProtocol
 A description of an EPT sub-protocol. More...
 
struct  EptClientEntry
 A descriptive structure for an EPT client. More...
 
class  EptClientList
 A list of EPT client entries. More...
 
class  EptData
 An EPT data message received over RDMnet and delivered to an RDMnet callback function. More...
 
class  SavedEptData
 An EPT data message received over RDMnet and saved for later processing. More...
 
class  EptStatus
 An EPT status message received over RDMnet and delivered to an RDMnet callback function. More...
 
class  SavedEptStatus
 An EPT status message received over RDMnet and saved for later processing. More...
 
class  RdmCommand
 An RDM command received over LLRP and delivered to an RDMnet callback function. More...
 
class  SavedRdmCommand
 An RDM command received over LLRP by a local component and saved for a later response. More...
 
class  RdmResponse
 An RDM response received over LLRP and delivered to an RDMnet callback function. More...
 
class  SavedRdmResponse
 An RDM response received over LLRP and saved for later processing. More...
 
class  RdmCommand
 An RDM command received over RDMnet and delivered to an RDMnet callback function. More...
 
class  SavedRdmCommand
 An RDM command received over RDMnet by a local component and saved for a later response. More...
 
class  RdmResponse
 An RDM response received over RDMnet and delivered to an RDMnet callback function. More...
 
class  SavedRdmResponse
 An RDM response received over RDMnet and saved for later processing. More...
 
struct  RptClientEntry
 A descriptive structure for an RPT client. More...
 
class  RptClientList
 A list of RPT client entries. More...
 
class  RptStatus
 An RPT status message received over RDMnet and delivered to an RDMnet callback function. More...
 
class  SavedRptStatus
 An RPT status message received over RDMnet and saved for later processing. More...
 

Typedefs

using ScopeHandle = etcpal::OpaqueId< detail::ScopeHandleType, rdmnet_client_scope_t, RDMNET_CLIENT_SCOPE_INVALID >
 

Functions

etcpal::Error Init (const EtcPalLogParams *log_params=nullptr, const std::vector< EtcPalMcastNetintId > &mcast_netints=std::vector< EtcPalMcastNetintId >{})
 Initialize the RDMnet library. More...
 
etcpal::Error Init (const etcpal::Logger &logger, const std::vector< EtcPalMcastNetintId > &mcast_netints=std::vector< EtcPalMcastNetintId >{})
 Initialize the RDMnet library. More...
 
etcpal::Error Init (const EtcPalLogParams *log_params, McastMode mcast_mode)
 Initialize the RDMnet library. More...
 
etcpal::Error Init (const etcpal::Logger &logger, McastMode mcast_mode)
 Initialize the RDMnet library. More...
 
void Deinit ()
 Deinitialize the RDMnet library. More...
 

Variables

constexpr uint16_t kNullEndpoint = E133_NULL_ENDPOINT
 Identifies the NULL_ENDPOINT, the endpoint of the RDMnet default responder.
 

Typedef Documentation

◆ ScopeHandle

A handle to a scope that an RDMnet client participates in.

Function Documentation

◆ Deinit()

void rdmnet::Deinit ( )
inline

Deinitialize the RDMnet library.

Closes all connections, deallocates all resources and joins the background thread. No RDMnet API functions are usable after this function is called.

◆ Init() [1/4]

etcpal::Error rdmnet::Init ( const etcpal::Logger logger,
const std::vector< EtcPalMcastNetintId > &  mcast_netints = std::vector<EtcPalMcastNetintId>{} 
)
inline

Initialize the RDMnet library.

Wraps rdmnet_init(). Does all initialization required before the RDMnet API modules can be used. Starts the message dispatch thread.

Parameters
loggerLogger instance for the RDMnet library to use to log messages.
mcast_netints(optional) A set of network interfaces to which to restrict multicast operation.
Returns
etcpal::Error::Ok(): Initialization successful.
Errors from rdmnet_init().

◆ Init() [2/4]

etcpal::Error rdmnet::Init ( const etcpal::Logger logger,
McastMode  mcast_mode 
)
inline

Initialize the RDMnet library.

Wraps rdmnet_init(). Does all initialization required before the RDMnet API modules can be used. Starts the message dispatch thread.

Parameters
loggerLogger instance for the RDMnet library to use to log messages.
mcast_modeThis controls whether multicast traffic should be allowed on all interfaces or no interfaces.
Returns
etcpal::Error::Ok(): Initialization successful.
Errors from rdmnet_init().

◆ Init() [3/4]

etcpal::Error rdmnet::Init ( const EtcPalLogParams log_params,
McastMode  mcast_mode 
)
inline

Initialize the RDMnet library.

Wraps rdmnet_init(). Does all initialization required before the RDMnet API modules can be used. Starts the message dispatch thread.

Parameters
log_paramsLog parameters for the RDMnet library to use to log messages. If nullptr, no logging will be performed.
mcast_modeThis controls whether multicast traffic should be allowed on all interfaces or no interfaces.
Returns
etcpal::Error::Ok(): Initialization successful.
Errors from rdmnet_init().

◆ Init() [4/4]

etcpal::Error rdmnet::Init ( const EtcPalLogParams log_params = nullptr,
const std::vector< EtcPalMcastNetintId > &  mcast_netints = std::vector<EtcPalMcastNetintId>{} 
)
inline

Initialize the RDMnet library.

Wraps rdmnet_init(). Does all initialization required before the RDMnet API modules can be used. Starts the message dispatch thread.

Parameters
log_params(optional) Log parameters for the RDMnet library to use to log messages. If not provided, no logging will be performed.
mcast_netints(optional) A set of network interfaces to which to restrict multicast operation.
Returns
etcpal::Error::Ok(): Initialization successful.
Errors from rdmnet_init().