Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoDiscoveryExtInfo.h
Go to the documentation of this file.
1 /**
2  * @file GoDiscoveryExtInfo.h
3  * @brief Declares the GoDiscoveryExtInfo class and related types.
4  *
5  * @internal
6  * Copyright (C) 2016-2022 by LMI Technologies Inc.
7  * Licensed under the MIT License.
8  * Redistributed files must retain the above copyright notice.
9  */
10 #ifndef GO_SDK_DISCOVERY_EXT_INFO_H
11 #define GO_SDK_DISCOVERY_EXT_INFO_H
12 
13 #include <GoSdk/GoSdkDef.h>
14 
15 /**
16  * @class GoDiscoveryExtInfo
17  * @extends kObject
18  * @ingroup GoSdk-Discovery
19  * @brief Represents an extended Discovery Information object.
20  */
22 
23 /**
24  * @struct GoDiscoveryProperty
25  * @extends kValue
26  * @ingroup GoSdk-Discovery
27  * @brief Represents a property returned in an extended Discovery information message.
28  */
29 typedef struct GoDiscoveryProperty
30 {
31  kText256 name;
32  kText256 value;
34 
35 /**
36  * Gets the source device ID.
37  *
38  * @public @memberof GoDiscoveryExtInfo
39  * @version Introduced in firmware 4.3.3.124
40  * @param msg Message object.
41  * @return Source device ID.
42  */
44 
45 /**
46  * Gets the address information returned by the source device.
47  *
48  * @public @memberof GoDiscoveryExtInfo
49  * @version Introduced in firmware 4.3.3.124
50  * @param msg Message object.
51  * @return Address information.
52  */
54 
55 /**
56  * Gets a set of ports used by the source device.
57  *
58  * @public @memberof GoDiscoveryExtInfo
59  * @version Introduced in firmware 4.3.3.124
60  * @param msg Message object.
61  * @return Indicator pointer.
62  * @remark If a port has a value of k16U_NULL, then the associated port is not used.
63  */
65 
66 /**
67  * Retrieves the application version of the source device.
68  *
69  * @public @memberof GoDiscoveryExtInfo
70  * @version Introduced in firmware 4.3.3.124
71  * @param msg Message object.
72  * @return Application version.
73  */
75 
76 /**
77  * Retrieves the up time of the source device.
78  *
79  * @public @memberof GoDiscoveryExtInfo
80  * @version Introduced in firmware 4.3.3.124
81  * @param msg Message object.
82  * @return Device up time in microseconds.
83  */
85 
86 /**
87  * Retrieves the number of properties present in the extended discovery information message.
88  *
89  * @public @memberof GoDiscoveryExtInfo
90  * @version Introduced in firmware 4.3.3.124
91  * @param msg Message object.
92  * @return The property count of the extended discovery information message.
93  */
95 
96 /**
97  * Retrieves the property associated with the given index or kNULL if invalid.
98  *
99  * @public @memberof GoDiscoveryExtInfo
100  * @version Introduced in firmware 4.3.3.124
101  * @param msg Message object.
102  * @param index The index of the property to retrieve.
103  * @return The property at the given index or kNULL.
104  */
106 
107 /**
108  * Gets the operational mode returned by the source device's main controller/host.
109  * Indicates if the host is:
110  * a. a virtual sensor
111  * b. a standalone sensor
112  * c. a host accelerating a sensor
113  *
114  * @public @memberof GoDiscoveryExtInfo
115  * @version Introduced in firmware 5.2.18.3
116  * @param msg Message object.
117  * @return Operational mode.
118  */
120 
121 /**
122  * Gets the IP address of an accelerated sensor. This address is meaningful only
123  * if the operational mode is a host accelerating a sensor. Otherwise the address
124  * does not have any particular value.
125  *
126  * @public @memberof GoDiscoveryExtInfo
127  * @version Introduced in firmware 5.2.18.3
128  * @param msg Message object.
129  * @return Accelerated sensor's IP address.
130  */
132 
133 /**
134  * Gets the sensor part number.
135  *
136  * @public @memberof GoDiscoveryExtInfo
137  * @version Introduced in firmware 5.3.18.11
138  * @param msg Message object.
139  * @param partNumber Buffer to store the sensor part number.
140  * @param capacity Number of bytes in the buffer for the sensor part number.
141  * @return Operation status.
142  */
143 GoFx(kStatus) GoDiscoveryExtInfo_PartNumber(GoDiscoveryExtInfo msg, kChar* partNumber, kSize capacity);
144 
145 #include <GoSdk/Messages/GoDiscoveryExtInfo.x.h>
146 
147 #endif
Ports used from a source device.
Definition: GoSdkDef.h:802
GoPortInfo GoDiscoveryExtInfo_Ports(GoDiscoveryExtInfo msg)
Gets a set of ports used by the source device.
k32u GoDiscoveryExtInfo_Id(GoDiscoveryExtInfo msg)
Gets the source device ID.
Represents a property returned in an extended Discovery information message.
Definition: GoDiscoveryExtInfo.h:29
GoAddressInfo GoDiscoveryExtInfo_Address(GoDiscoveryExtInfo msg)
Gets the address information returned by the source device.
const GoDiscoveryProperty * GoDiscoveryExtInfo_PropertyAt(GoDiscoveryExtInfo msg, kSize index)
Retrieves the property associated with the given index or kNULL if invalid.
kVersion GoDiscoveryExtInfo_Version(GoDiscoveryExtInfo msg)
Retrieves the application version of the source device.
Represents operational mode of the main controller responding to the discovery protocol.
Essential SDK declarations.
kStatus GoDiscoveryExtInfo_PartNumber(GoDiscoveryExtInfo msg, kChar *partNumber, kSize capacity)
Gets the sensor part number.
kSize GoDiscoveryExtInfo_PropertyCount(GoDiscoveryExtInfo msg)
Retrieves the number of properties present in the extended discovery information message.
GoDiscoveryOpMode GoDiscoveryExtInfo_OpMode(GoDiscoveryExtInfo msg)
Gets the operational mode returned by the source device's main controller/host.
k64u GoDiscoveryExtInfo_UpTime(GoDiscoveryExtInfo msg)
Retrieves the up time of the source device.
kIpAddress GoDiscoveryExtInfo_AccelSensorIpAddress(GoDiscoveryExtInfo msg)
Gets the IP address of an accelerated sensor.
Represents an extended Discovery Information object.
Sensor network address settings.
Definition: GoSdkDef.h:788