25 #ifndef RDMNET_LLRP_MANAGER_H_
26 #define RDMNET_LLRP_MANAGER_H_
28 #include "etcpal/uuid.h"
29 #include "etcpal/inet.h"
30 #include "rdm/message.h"
53 #define LLRP_MANAGER_INVALID -1
117 #define LLRP_MANAGER_CONFIG_DEFAULT_INIT \
119 {{0}}, {kEtcPalIpTypeInvalid, 0}, 0, { NULL, NULL, NULL, NULL } \
Functions and definitions common to all RDMnet API modules.
void(* LlrpManagerRdmResponseReceivedCallback)(llrp_manager_t handle, const LlrpRdmResponse *resp, void *context)
An RDM response has been received from an LLRP target.
Definition: llrp_manager.h:71
etcpal_error_t llrp_manager_send_set_command(llrp_manager_t handle, const LlrpDestinationAddr *destination, uint16_t param_id, const uint8_t *data, uint8_t data_len, uint32_t *seq_num)
Send an RDM SET command from an LLRP manager.
Definition: llrp_manager.c:316
int llrp_manager_t
A handle for an instance of LLRP Manager functionality.
Definition: llrp_manager.h:51
struct LlrpManagerConfig LlrpManagerConfig
A set of information that defines the startup parameters of an LLRP Manager.
struct LlrpManagerCallbacks LlrpManagerCallbacks
A set of notification callbacks received about an LLRP manager.
void llrp_manager_config_set_callbacks(LlrpManagerConfig *config, LlrpManagerTargetDiscoveredCallback target_discovered, LlrpManagerRdmResponseReceivedCallback rdm_response_received, LlrpManagerDiscoveryFinishedCallback discovery_finished, void *context)
Set the callbacks in an LLRP manager configuration structure.
Definition: llrp_manager.c:98
etcpal_error_t llrp_manager_destroy(llrp_manager_t handle)
Destroy an LLRP manager instance.
Definition: llrp_manager.c:163
etcpal_error_t llrp_manager_send_get_command(llrp_manager_t handle, const LlrpDestinationAddr *destination, uint16_t param_id, const uint8_t *data, uint8_t data_len, uint32_t *seq_num)
Send an RDM GET command from an LLRP manager.
Definition: llrp_manager.c:281
etcpal_error_t llrp_manager_send_rdm_command(llrp_manager_t handle, const LlrpDestinationAddr *destination, rdmnet_command_class_t command_class, uint16_t param_id, const uint8_t *data, uint8_t data_len, uint32_t *seq_num)
Send an RDM command from an LLRP manager.
Definition: llrp_manager.c:245
void(* LlrpManagerDiscoveryFinishedCallback)(llrp_manager_t handle, void *context)
The previously-started LLRP discovery process has finished.
Definition: llrp_manager.h:80
void(* LlrpManagerTargetDiscoveredCallback)(llrp_manager_t handle, const LlrpDiscoveredTarget *target, void *context)
An LLRP target has been discovered.
Definition: llrp_manager.h:61
etcpal_error_t llrp_manager_stop_discovery(llrp_manager_t handle)
Stop discovery on an LLRP manager.
Definition: llrp_manager.c:215
void llrp_manager_config_init(LlrpManagerConfig *config, uint16_t manufacturer_id)
Initialize an LlrpManagerConfig with default values for the optional config options.
Definition: llrp_manager.c:77
etcpal_error_t llrp_manager_create(const LlrpManagerConfig *config, llrp_manager_t *handle)
Create a new LLRP manager instance.
Definition: llrp_manager.c:128
etcpal_error_t llrp_manager_start_discovery(llrp_manager_t handle, uint16_t filter)
Start discovery on an LLRP manager.
Definition: llrp_manager.c:192
rdmnet_command_class_t
An RDM command class, for RDMnet purposes.
Definition: common.h:350
Functions and definitions common to LLRP Managers and Targets.
Basic types for parsed RDMnet messages.
A destination address for an RDM command in LLRP.
Definition: llrp.h:48
A set of information associated with an LLRP Target.
Definition: llrp.h:72
A set of notification callbacks received about an LLRP manager.
Definition: llrp_manager.h:84
LlrpManagerDiscoveryFinishedCallback discovery_finished
LLRP discovery is finished.
Definition: llrp_manager.h:87
LlrpManagerRdmResponseReceivedCallback rdm_response_received
An LLRP RDM response has been received.
Definition: llrp_manager.h:86
LlrpManagerTargetDiscoveredCallback target_discovered
An LLRP target has been discovered.
Definition: llrp_manager.h:85
void * context
(optional) Pointer to opaque data passed back with each callback.
Definition: llrp_manager.h:88
A set of information that defines the startup parameters of an LLRP Manager.
Definition: llrp_manager.h:93
EtcPalUuid cid
The manager's CID.
Definition: llrp_manager.h:99
LlrpManagerCallbacks callbacks
A set of callbacks for the manager to receive RDMnet notifications.
Definition: llrp_manager.h:105
uint16_t manu_id
The manager's ESTA manufacturer ID.
Definition: llrp_manager.h:103
RdmnetMcastNetintId netint
The network interface that this manager operates on.
Definition: llrp_manager.h:101
An RDM response received from a remote LLRP Target.
Definition: message.h:479
A set of identifying information for a network interface, for multicast purposes.
Definition: common.h:364