Gocator API

- Home
- Types
- Files

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>
18 #include <GoSdk/Internal/GoAccelSensorPortAlloc.h>
19
20 /**
21 * @class GoAcceleratorMgr
22 * @extends kObject
23 * @ingroup GoSdk
24 * @brief Represents an GoAcceleratorMgr instance.
25 */
26 typedef kObject GoAcceleratorMgr;
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 */
49 typedef struct GoAcceleratorMgrAccelUpdate
50 {
51 k32u sensorId;
52 GoAcceleratorMgrAccelEvents accelEvent;
53 } GoAcceleratorMgrAccelUpdate;
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 */
62 typedef struct GoAcceleratorMgrSensorParam
63 {
64 GoAccelSensorPortAllocPorts ports;
65 kIpAddress platformIpAddress; // Bind an accelerated sensor to this accelerator host interface IP address.
66 } GoAcceleratorMgrSensorParam;
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 */
77 typedef struct GoAcceleratorMgrSensorInfo
78 {
79 k32u sensorId;
80 GoSensorAccelStatus status;
81 GoAcceleratorMgrSensorParam param;
82 } GoAcceleratorMgrSensorInfo;
83
84
85 #include <GoSdk/GoAcceleratorMgr.x.h>
86
87 #endif // GO_ACCELERATOR_MGR_H
k32u
GoSdk.h
Includes all Gocator SDK headers.
kIpAddress
GoAccelSensorPortAlloc.h
Declares the GoAccelSensorPortAlloc class.
GoAcceleratorMgrSensorParam
Structure to hold user configuration parameters from SDK client for a sensor that is to be accelerate...
Definition: GoAcceleratorMgr.h:62
GoSensorAccelStatus
Represents the acceleration status of a sensor that is being accelerated by the local host...
GoAcceleratorMgrSensorInfo
Structure to return accelerated sensor information to SDK client. The param field contains informatio...
Definition: GoAcceleratorMgr.h:77
GoAcceleratorMgrAccelUpdate
Structure to hold data for the acceleration update handler.
Definition: GoAcceleratorMgr.h:49
GoSystem.h
Declares the GoSystem class.
kObject
GoAcceleratorMgr
Represents an GoAcceleratorMgr instance.