Gocator API
 All Classes Files Functions Variables Typedefs Macros Modules Pages
GoAcceleratorMgr.h
Go to the documentation of this file.
1 /**
2  * @file GoAcceleratorMgr.h
3  * @brief Declares the GoAcceleratorMgr class public interfaces.
4  *
5  * @internal
6  * Copyright (C) 2018 by LMI Technologies Inc.
7  * Licensed under the MIT License.
8  * Redistributed files must retain the above copyright notice.
9  */
10 #ifndef GO_ACCELERATOR_MGR_H
11 #define GO_ACCELERATOR_MGR_H
12 
13 #include <GoSdk/GoSdk.h>
14 // Don't know why need to explicitly include GoSystem header file again
15 // here when GoSdk.h already includes it. If this is not done, compile fails
16 // to find GoSystem declaration!?
17 #include <GoSdk/GoSystem.h>
19 
20 /**
21  * @class GoAcceleratorMgr
22  * @extends kObject
23  * @ingroup GoSdk
24  * @brief Represents an GoAcceleratorMgr instance.
25  */
27 
28 /**
29 * @class GoAcceleratorMgr
30 * @extends kValue
31 * @ingroup GoSdk
32 * @brief Represents an GoAcceleratorMgr events passed into the acceleration
33 * update callback handler bound in by SDK client.
34 */
35 typedef enum GoAcceleratorMgrAccelEvents
36 {
37  GO_ACCELERATOR_MGR_EVENT_ACCELERATING = 0, // Sensor acceleration is in progress.
38  GO_ACCELERATOR_MGR_EVENT_ACCELERATED, // Sensor is accelerated successfully.
39  GO_ACCELERATOR_MGR_EVENT_DECELERATING, // Sensor decleration is in progress.
40  GO_ACCELERATOR_MGR_EVENT_DECELERATED // Sensor is no longer accelerated.
41 } GoAcceleratorMgrAccelEvents;
42 
43 /**
44 * @struct GoAcceleratorMgrAccelUpdate
45 * @extends kValue
46 * @ingroup GoSdk
47 * @brief Structure to hold data for the acceleration update handler.
48 */
50 {
51  k32u sensorId;
52  GoAcceleratorMgrAccelEvents accelEvent;
54 
55 /**
56 * @struct GoAcceleratorMgrSensorParam
57 * @extends kValue
58 * @ingroup GoSdk
59 * @brief Structure to hold user configuration parameters from SDK client
60 * for a sensor that is to be accelerated.
61 */
63 {
64  GoAccelSensorPortAllocPorts ports;
65  kIpAddress platformIpAddress; // Bind an accelerated sensor to this accelerator host interface IP address.
67 
68 /**
69 * @struct GoAcceleratorMgrSensorInfo
70 * @extends kValue
71 * @ingroup GoSdk
72 * @brief Structure to return accelerated sensor information to SDK client.
73 * The param field contains information received from the SDK client, except if
74 * SDK client requested automatic port selection. In this case, the ports in the
75 * param field are the ports selected by the SDK for the SDK client.
76 */
78 {
79  k32u sensorId;
80  GoSensorAccelStatus status;
83 
84 
85 #include <GoSdk/GoAcceleratorMgr.x.h>
86 
87 #endif // GO_ACCELERATOR_MGR_H
Includes all Gocator SDK headers.
Declares the GoAccelSensorPortAlloc class.
Structure to hold user configuration parameters from SDK client for a sensor that is to be accelerate...
Definition: GoAcceleratorMgr.h:62
Represents the acceleration status of a sensor that is being accelerated by the local host...
Structure to return accelerated sensor information to SDK client. The param field contains informatio...
Definition: GoAcceleratorMgr.h:77
Structure to hold data for the acceleration update handler.
Definition: GoAcceleratorMgr.h:49
Declares the GoSystem class.
Represents an GoAcceleratorMgr instance.