29 #ifndef INCLUDED_TrackerInterfaceC_h_GUID_FA1B5B80_FEB5_469D_8F1E_7ED54A27A7AD
30 #define INCLUDED_TrackerInterfaceC_h_GUID_FA1B5B80_FEB5_469D_8F1E_7ED54A27A7AD
68 OSVR_FUNC_NONNULL((1, 2));
79 OSVR_FUNC_NONNULL((1, 2, 3));
90 OSVR_FUNC_NONNULL((1, 2, 3, 5));
101 OSVR_FUNC_NONNULL((1, 2, 3));
106 OSVR_PLUGINKIT_EXPORT
112 OSVR_FUNC_NONNULL((1, 2, 3, 5));
117 OSVR_PLUGINKIT_EXPORT
123 OSVR_FUNC_NONNULL((1, 2, 3));
128 OSVR_PLUGINKIT_EXPORT
135 OSVR_FUNC_NONNULL((1, 2, 3, 5));
140 OSVR_PLUGINKIT_EXPORT
146 OSVR_FUNC_NONNULL((1, 2, 3, 5));
151 OSVR_PLUGINKIT_EXPORT
158 OSVR_FUNC_NONNULL((1, 2, 3, 5));
163 OSVR_PLUGINKIT_EXPORT
170 OSVR_FUNC_NONNULL((1, 2, 3, 5));
175 OSVR_PLUGINKIT_EXPORT
182 OSVR_FUNC_NONNULL((1, 2, 3, 5));
187 OSVR_PLUGINKIT_EXPORT
194 OSVR_FUNC_NONNULL((1, 2, 3, 5));
199 OSVR_PLUGINKIT_EXPORT
206 OSVR_FUNC_NONNULL((1, 2, 3, 5));
OSVR_ReturnCode osvrDeviceTrackerSendOrientationTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_OrientationState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the orientation of a sensor that doesn't report position, using the supplied timestamp...
Struct for combined acceleration state.
uint32_t OSVR_ChannelCount
The integer type specifying a number of channels/sensors or a channel/sensor index.
A structure defining a 3D vector, often a position/translation.
struct OSVR_TrackerDeviceInterfaceObject * OSVR_TrackerDeviceInterface
Opaque type used in conjunction with a device token to send data on a tracker interface.
A structure defining a quaternion, often a unit quaternion representing 3D rotation.
OSVR_ReturnCode osvrDeviceTrackerSendPose(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_PoseState const *val, OSVR_ChannelCount sensor)
Report the full rigid body pose of a sensor, automatically generating a timestamp.
The quaternion represents the incremental rotation taking place over a period of dt seconds...
OSVR_ReturnCode osvrDeviceTrackerSendAngularAccelerationTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_AngularAccelerationState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the angular acceleration of a sensor that doesn't report linear acceleration, using the supplied timestamp.
struct OSVR_DeviceTokenObject * OSVR_DeviceToken
Opaque type of a registered device token within the core library.
struct OSVR_DeviceInitObject * OSVR_DeviceInitOptions
Opaque type of a device initialization object.
OSVR_ReturnCode osvrDeviceTrackerSendLinearAccelerationTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_LinearAccelerationState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the linear acceleration of a sensor that doesn't report angular acceleration, using the supplied timestamp.
OSVR_ReturnCode osvrDeviceTrackerSendOrientation(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_OrientationState const *val, OSVR_ChannelCount sensor)
Report the orientation of a sensor that doesn't report position, automatically generating a timestamp...
OSVR_ReturnCode osvrDeviceTrackerSendPosition(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_PositionState const *val, OSVR_ChannelCount sensor)
Report the position of a sensor that doesn't report orientation, automatically generating a timestamp...
OSVR_ReturnCode osvrDeviceTrackerSendPositionTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_PositionState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the position of a sensor that doesn't report orientation, using the supplied timestamp...
OSVR_ReturnCode osvrDeviceTrackerSendAccelerationTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_AccelerationState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the linear and angular Acceleration of a sensor, using the supplied timestamp.
A structure defining a 3D (6DOF) rigid body pose: translation and rotation.
OSVR_ReturnCode osvrDeviceTrackerSendPoseTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_PoseState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the full rigid body pose of a sensor, using the supplied timestamp.
OSVR_ReturnCode osvrDeviceTrackerConfigure(OSVR_DeviceInitOptions opts, OSVR_TrackerDeviceInterface *iface)
Specify that your device will implement the Tracker interface.
Struct for combined velocity state.
Standardized, portable parallel to struct timeval for representing both absolute times and time inter...
OSVR_ReturnCode osvrDeviceTrackerSendAngularVelocityTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_AngularVelocityState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the angular velocity of a sensor that doesn't report linear velocity, using the supplied times...
OSVR_ReturnCode osvrDeviceTrackerSendLinearVelocityTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_LinearVelocityState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the linear velocity of a sensor that doesn't report angular velocity, using the supplied times...
OSVR_ReturnCode osvrDeviceTrackerSendVelocityTimestamped(OSVR_DeviceToken dev, OSVR_TrackerDeviceInterface iface, OSVR_VelocityState const *val, OSVR_ChannelCount sensor, OSVR_TimeValue const *timestamp)
Report the linear and angular velocity of a sensor, using the supplied timestamp. ...