Gocator API

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-2020 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 kBeginHeader()
15
16 /**
17 * @class GoDiscoveryExtInfo
18 * @extends kObject
19 * @ingroup GoSdk-Discovery
20 * @brief Represents an extended Discovery Information object.
21 */
22 typedef kObject GoDiscoveryExtInfo;
23
24 /**
25 * @struct GoDiscoveryProperty
26 * @extends kValue
27 * @ingroup GoSdk-Discovery
28 * @brief Represents a property returned in an extended Discovery information message.
29 */
30 typedef struct GoDiscoveryProperty
31 {
32 kText256 name;
33 kText256 value;
34 } GoDiscoveryProperty;
35
36 /**
37 * Gets the source device ID.
38 *
39 * @public @memberof GoDiscoveryExtInfo
40 * @version Introduced in firmware 4.3.3.124
41 * @param msg Message object.
42 * @return Source device ID.
43 */
44 GoFx(k32u) GoDiscoveryExtInfo_Id(GoDiscoveryExtInfo msg);
45
46 /**
47 * Gets the address information returned by the source device.
48 *
49 * @public @memberof GoDiscoveryExtInfo
50 * @version Introduced in firmware 4.3.3.124
51 * @param msg Message object.
52 * @return Address information.
53 */
54 GoFx(GoAddressInfo) GoDiscoveryExtInfo_Address(GoDiscoveryExtInfo msg);
55
56 /**
57 * Gets a set of ports used by the source device.
58 *
59 * @public @memberof GoDiscoveryExtInfo
60 * @version Introduced in firmware 4.3.3.124
61 * @param msg Message object.
62 * @return Indicator pointer.
63 * @remark If a port has a value of k16U_NULL, then the associated port is not used.
64 */
65 GoFx(GoPortInfo) GoDiscoveryExtInfo_Ports(GoDiscoveryExtInfo msg);
66
67 /**
68 * Retrieves the application version of the source device.
69 *
70 * @public @memberof GoDiscoveryExtInfo
71 * @version Introduced in firmware 4.3.3.124
72 * @param msg Message object.
73 * @return Application version.
74 */
75 GoFx(kVersion) GoDiscoveryExtInfo_Version(GoDiscoveryExtInfo msg);
76
77 /**
78 * Retrieves the up time of the source device.
79 *
80 * @public @memberof GoDiscoveryExtInfo
81 * @version Introduced in firmware 4.3.3.124
82 * @param msg Message object.
83 * @return Device up time in microseconds.
84 */
85 GoFx(k64u) GoDiscoveryExtInfo_UpTime(GoDiscoveryExtInfo msg);
86
87 /**
88 * Retrieves the number of properties present in the extended discovery information message.
89 *
90 * @public @memberof GoDiscoveryExtInfo
91 * @version Introduced in firmware 4.3.3.124
92 * @param msg Message object.
93 * @return The property count of the extended discovery information message.
94 */
95 GoFx(kSize) GoDiscoveryExtInfo_PropertyCount(GoDiscoveryExtInfo msg);
96
97 /**
98 * Retrieves the property associated with the given index or kNULL if invalid.
99 *
100 * @public @memberof GoDiscoveryExtInfo
101 * @version Introduced in firmware 4.3.3.124
102 * @param msg Message object.
103 * @param index The index of the property to retrieve.
104 * @return The property at the given index or kNULL.
105 */
106 GoFx(const GoDiscoveryProperty*) GoDiscoveryExtInfo_PropertyAt(GoDiscoveryExtInfo msg, kSize index);
107
108 /**
109 * Gets the operational mode returned by the source device's main controller/host.
110 * Indicates if the host is:
111 * a. a virtual sensor
112 * b. a standalone sensor
113 * c. a host accelerating a sensor
114 *
115 * @public @memberof GoDiscoveryExtInfo
116 * @version Introduced in firmware 5.2.18.3
117 * @param msg Message object.
118 * @return Operational mode.
119 */
120 GoFx(GoDiscoveryOpMode) GoDiscoveryExtInfo_OpMode(GoDiscoveryExtInfo msg);
121
122 /**
123 * Gets the IP address of an accelerated sensor. This address is meaningful only
124 * if the operational mode is a host accelerating a sensor. Otherwise the address
125 * does not have any particular value.
126 *
127 * @public @memberof GoDiscoveryExtInfo
128 * @version Introduced in firmware 5.2.18.3
129 * @param msg Message object.
130 * @return Accelerated sensor's IP address.
131 */
132 GoFx(kIpAddress) GoDiscoveryExtInfo_AccelSensorIpAddress(GoDiscoveryExtInfo msg);
133
134 /**
135 * Gets the sensor model name.
136 *
137 * @public @memberof GoDiscoveryExtInfo
138 * @version Introduced in firmware 5.2.18.3
139 * @param msg Message object.
140 * @param model Buffer to store the sensor model name.
141 * @param capacity Number of bytes in the buffer for the sensor model name.
142 * @return Operation status.
143 */
144 GoFx(kStatus) GoDiscoveryExtInfo_CompleteModel(GoDiscoveryExtInfo msg, kChar* model, kSize capacity);
145
146 kEndHeader()
147 #include <GoSdk/Messages/GoDiscoveryExtInfo.x.h>
148
149 #endif
k32u
GoPortInfo
Ports used from a source device.
Definition: GoSdkDef.h:764
GoDiscoveryExtInfo::GoDiscoveryExtInfo_Ports
GoPortInfo GoDiscoveryExtInfo_Ports(GoDiscoveryExtInfo msg)
Gets a set of ports used by the source device.
k64u
kText256
GoDiscoveryExtInfo::GoDiscoveryExtInfo_Id
k32u GoDiscoveryExtInfo_Id(GoDiscoveryExtInfo msg)
Gets the source device ID.
GoDiscoveryProperty
Represents a property returned in an extended Discovery information message.
Definition: GoDiscoveryExtInfo.h:30
kSize
GoDiscoveryExtInfo::GoDiscoveryExtInfo_Address
GoAddressInfo GoDiscoveryExtInfo_Address(GoDiscoveryExtInfo msg)
Gets the address information returned by the source device.
kIpAddress
kChar
GoDiscoveryExtInfo::GoDiscoveryExtInfo_PropertyAt
const GoDiscoveryProperty * GoDiscoveryExtInfo_PropertyAt(GoDiscoveryExtInfo msg, kSize index)
Retrieves the property associated with the given index or kNULL if invalid.
GoDiscoveryExtInfo::GoDiscoveryExtInfo_Version
kVersion GoDiscoveryExtInfo_Version(GoDiscoveryExtInfo msg)
Retrieves the application version of the source device.
GoDiscoveryOpMode
Represents operational mode of the main controller responding to the discovery protocol.
GoSdkDef.h
Essential SDK declarations.
GoDiscoveryExtInfo::GoDiscoveryExtInfo_PropertyCount
kSize GoDiscoveryExtInfo_PropertyCount(GoDiscoveryExtInfo msg)
Retrieves the number of properties present in the extended discovery information message.
GoDiscoveryExtInfo::GoDiscoveryExtInfo_OpMode
GoDiscoveryOpMode GoDiscoveryExtInfo_OpMode(GoDiscoveryExtInfo msg)
Gets the operational mode returned by the source device's main controller/host.
GoDiscoveryExtInfo::GoDiscoveryExtInfo_UpTime
k64u GoDiscoveryExtInfo_UpTime(GoDiscoveryExtInfo msg)
Retrieves the up time of the source device.
GoDiscoveryExtInfo::GoDiscoveryExtInfo_AccelSensorIpAddress
kIpAddress GoDiscoveryExtInfo_AccelSensorIpAddress(GoDiscoveryExtInfo msg)
Gets the IP address of an accelerated sensor.
kObject
kVersion
kStatus
GoDiscoveryExtInfo::GoDiscoveryExtInfo_CompleteModel
kStatus GoDiscoveryExtInfo_CompleteModel(GoDiscoveryExtInfo msg, kChar *model, kSize capacity)
Gets the sensor model name.
GoDiscoveryExtInfo
Represents an extended Discovery Information object.
GoAddressInfo
Sensor network address settings.
Definition: GoSdkDef.h:750