RDMnet  HEAD (unstable)
Implementation of ANSI E1.33 (RDMnet)
View other versions:
llrp.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Copyright 2020 ETC Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  ******************************************************************************
16  * This file is a part of RDMnet. For more information, go to:
17  * https://github.com/ETCLabs/RDMnet
18  *****************************************************************************/
19 
25 #ifndef RDMNET_LLRP_H_
26 #define RDMNET_LLRP_H_
27 
28 #include <stdint.h>
29 #include "etcpal/inet.h"
30 #include "etcpal/uuid.h"
31 #include "rdm/uid.h"
32 #include "rdmnet/defs.h"
33 
39 #ifdef __cplusplus
40 extern "C" {
41 #endif
42 
47 typedef struct LlrpDestinationAddr
48 {
52  RdmUid dest_uid;
54  uint16_t subdevice;
56 
58 typedef enum
59 {
61  kLlrpCompRptDevice = LLRP_COMPONENT_TYPE_RPT_DEVICE,
63  kLlrpCompRptController = LLRP_COMPONENT_TYPE_RPT_CONTROLLER,
65  kLlrpCompBroker = LLRP_COMPONENT_TYPE_BROKER,
67  kLlrpCompNonRdmnet = LLRP_COMPONENT_TYPE_NONRDMNET
69 
71 typedef struct LlrpDiscoveredTarget
72 {
76  RdmUid uid;
82 
84 
85 #ifdef __cplusplus
86 }
87 #endif
88 
93 #endif /* RDMNET_LLRP_H_ */
struct LlrpDestinationAddr LlrpDestinationAddr
A destination address for an RDM command in LLRP.
struct LlrpDiscoveredTarget LlrpDiscoveredTarget
const char * llrp_component_type_to_string(llrp_component_t type)
Get a string description of an LLRP component type.
Definition: llrp.c:46
llrp_component_t
Definition: llrp.h:59
@ kLlrpCompRptDevice
Definition: llrp.h:61
@ kLlrpCompBroker
Definition: llrp.h:65
@ kLlrpCompRptController
Definition: llrp.h:63
@ kLlrpCompNonRdmnet
Definition: llrp.h:67
A destination address for an RDM command in LLRP.
Definition: llrp.h:48
uint16_t subdevice
Definition: llrp.h:54
EtcPalUuid dest_cid
Definition: llrp.h:50
RdmUid dest_uid
Definition: llrp.h:52
Definition: llrp.h:72
EtcPalUuid cid
Definition: llrp.h:74
llrp_component_t component_type
Definition: llrp.h:80
EtcPalMacAddr hardware_address
Definition: llrp.h:78
RdmUid uid
Definition: llrp.h:76