VARJO TRACKING PLUGIN SDK DOCUMENTATION
Varjo_types.h File Reference

Go to the source code of this file.

Data Structures

struct  varjo_Vector3D
 
struct  varjo_Quaternion
 
struct  varjo_Matrix3x3
 
struct  varjo_Matrix4x4
 
struct  varjo_DevicePose
 
struct  varjo_IMUComponentCalibrationInfo
 
struct  varjo_ImuSample
 
struct  varjo_PluginUtilityAPI
 

Macros

#define VARJO_FNTABLE_CALLTYPE
 

Typedefs

typedef int32_t varjo_Bool
 
typedef int64_t varjo_Nanoseconds
 
typedef struct varjo_Vector3D varjo_Vector3D
 
typedef struct varjo_Quaternion varjo_Quaternion
 
typedef struct varjo_Matrix3x3 varjo_Matrix3x3
 
typedef struct varjo_Matrix4x4 varjo_Matrix4x4
 
typedef uint64_t varjo_PoseFlags
 
typedef struct varjo_DevicePose varjo_DevicePose
 
typedef uint64_t varjo_IMUCapability
 
typedef uint64_t varjo_IMUDataOffscale
 
typedef uint64_t varjo_IMUDataInvalid
 
typedef int64_t varjo_IMUComponent
 
typedef struct varjo_IMUComponentCalibrationInfo varjo_IMUDeviceCalibrationInfo
 
typedef struct varjo_ImuSample varjo_ImuSample
 
typedef uint64_t varjo_PluginType
 
typedef int64_t varjo_PluginStatus
 
typedef int64_t varjo_DeviceType
 
typedef struct varjo_PluginContext_t * varjo_PluginContext
 
typedef struct varjo_PluginUtilitySession_t * varjo_PluginUtilitySession
 varjo_PluginUtilitySession More...
 
typedef struct varjo_ConfigurationKeyIterator_t * varjo_ConfigurationKeyIterator
 
typedef int64_t varjo_PluginSystemState
 
typedef struct varjo_PluginUtilityAPI varjo_PluginUtilityAPI
 

Variables

static const varjo_Bool varjo_False = 0
 Value representing False. More...
 
static const varjo_Bool varjo_True = 1
 Value representing True. More...
 
static const varjo_PoseFlags varjo_PoseFlags_Ok = 0x1
 Flag indicating that the tracking is OK. More...
 
static const varjo_PoseFlags varjo_PoseFlags_TrackingLost = 0x2
 Flag indicating that no tracking data is available. More...
 
static const varjo_PoseFlags varjo_PoseFlags_TrackingDisconnected = 0x4
 Flag indicating that the tracker is disconnected. More...
 
static const varjo_PoseFlags varjo_PoseFlags_HasPosition = 0x08
 Flag indicating that the pose has position information. More...
 
static const varjo_PoseFlags varjo_PoseFlags_HasRotation = 0x10
 Flag indicating that the pose has rotation information. More...
 
static const varjo_PoseFlags varjo_PoseFlags_HasVelocity = 0x20
 Flag indicating that the pose has velocity information. More...
 
static const varjo_PoseFlags varjo_PoseFlags_HasAngularVelocity = 0x40
 Flag indicating that the pose has angular velocity information. More...
 
static const varjo_PoseFlags varjo_PoseFlags_HasAcceleration = 0x80
 Flag indicating that the pose has acceleration information. More...
 
static const varjo_PoseFlags varjo_PoseFlags_HasConfidence = 0x100
 Flag indicating that the pose has confidence information. More...
 
static const varjo_IMUCapability varjo_IMUCapability_Acceleration = 0x01
 IMU HW is capable of reporting accelerometer measurements. More...
 
static const varjo_IMUCapability varjo_IMUCapability_AngularVelocity = 0x02
 IMU HW is capable of reporting gyro measurements. More...
 
static const varjo_IMUCapability varjo_IMUCapability_Attitude = 0x04
 IMU HW is capable of reporting magnetometer measurements. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AccelerationX = 0x001
 Flag indicating the X-axis acceleration measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AccelerationY = 0x002
 Flag indicating the Y-axis acceleration measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AccelerationZ = 0x004
 Flag indicating the Z-axis acceleration measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AngularVelocityX = 0x008
 Flag indicating the X-axis angular velocity measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AngularVelocityY = 0x010
 Flag indicating the Y-axis angular velocity measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AngularVelocityZ = 0x020
 Flag indicating the Z-axis angular velocity measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AttitudeX = 0x040
 Flag indicating the X-axis attitude measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AttitudeY = 0x080
 Flag indicating the Y-axis attitude measurement is off-scale. More...
 
static const varjo_IMUDataOffscale varjo_IMUDataOffscale_AttitudeZ = 0x100
 Flag indicating the Z-axis attitudey measurement is off-scale. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AccelerationX = 0x001
 Flag indicating the X-axis acceleration measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AccelerationY = 0x002
 Flag indicating the Y-axis acceleration measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AccelerationZ = 0x004
 Flag indicating the Z-axis acceleration measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AngularVelocityX = 0x008
 Flag indicating the X-axis angular velocity measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AngularVelocityY = 0x010
 Flag indicating the Y-axis angular velocity measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AngularVelocityZ = 0x020
 Flag indicating the Z-axis angular velocity measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AttitudeX = 0x040
 Flag indicating the X-axis attitude measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AttitudeY = 0x080
 Flag indicating the Y-axis attitude measurement is not valid. More...
 
static const varjo_IMUDataInvalid varjo_IMUDataInvalid_AttitudeZ = 0x100
 Flag indicating the Z-axis attitude measurement is not valid. More...
 
static const varjo_IMUComponent varjo_IMUComponent_Accelerometer = 1
 Constant identifying IMU component accelerometer. More...
 
static const varjo_IMUComponent varjo_IMUComponent_Gyro = 2
 Constant identifying IMU component gyro. More...
 
static const varjo_IMUComponent varjo_IMUComponent_Magnetometer = 3
 Constant identifying IMU component magnetometer. More...
 
static const varjo_PluginType varjo_PluginType_HMD_Tracker = 0x01
 Flag indicating this plugin provides HMD tracking functionality. More...
 
static const varjo_PluginType varjo_PluginType_MotionPlatform = 0x02
 Flag indicating this plugin provides motion platform functionality. More...
 
static const varjo_PluginStatus varjo_PluginStatus_OK = 0
 Plugin status OK. More...
 
static const varjo_PluginType varjo_DeviceType_HMD = 1
 Device type - Head Mounted Display. More...
 
static const varjo_PluginSystemState varjo_PluginSystemState_OK = 0
 Plugin system is functioning correctly. More...
 
static const varjo_PluginSystemState varjo_PluginSystemState_Warning = 1
 Plugin system is reporting a state requiring user attention e.g. battery low. More...
 
static const varjo_PluginSystemState varjo_PluginSystemState_CriticalError = 2
 Plugin system is reporting a critical error state, e.g. tracking failure. More...
 

Macro Definition Documentation

◆ VARJO_FNTABLE_CALLTYPE

#define VARJO_FNTABLE_CALLTYPE

Typedef Documentation

◆ varjo_Bool

typedef int32_t varjo_Bool

Type representing logical values - True and False.

◆ varjo_Nanoseconds

typedef int64_t varjo_Nanoseconds

Time in nanoseconds. Absolute times are relative to an epoch which is constant during execution of the program.

◆ varjo_Vector3D

64bit floating point 3D vector.

◆ varjo_Quaternion

Double precision quaternion.

◆ varjo_Matrix3x3

Double precision 3x3 matrix. The matrix usage convention is that values are stored in column-major order.

◆ varjo_Matrix4x4

Double precision 4x4 matrix. The matrix usage convention is that values are stored in column-major order.

◆ varjo_PoseFlags

typedef uint64_t varjo_PoseFlags

Bit-field type determining tracking status

◆ varjo_DevicePose

Structure describing tracked device pose.

Coordinate system is right-handed, positive X goes right, positive Y goes up and negative Z goes forward from HMD users perspective. Distance unit is meters.

◆ varjo_IMUCapability

typedef uint64_t varjo_IMUCapability

Bit-field type determining capabilities of IMU hardware

◆ varjo_IMUDataOffscale

typedef uint64_t varjo_IMUDataOffscale

Bit-field type determining which values of IMU data are off-scale. These flags are set when a corresponding sensor reading exceeds a limit of it's measurement range

◆ varjo_IMUDataInvalid

typedef uint64_t varjo_IMUDataInvalid

Bit-field type determining which values of IMU data are not valid, e.g. in case the IMU HW can not provide corresponding measurement type, or does not have a measurement sample

◆ varjo_IMUComponent

typedef int64_t varjo_IMUComponent

Type identifying IMU component type

◆ varjo_IMUDeviceCalibrationInfo

Structure containing calibration parameters for an IMU device

◆ varjo_ImuSample

Structure describing a sample of IMU data

◆ varjo_PluginType

typedef uint64_t varjo_PluginType

Bit-field type determining type of plugin API

◆ varjo_PluginStatus

typedef int64_t varjo_PluginStatus

Plugin status

◆ varjo_DeviceType

typedef int64_t varjo_DeviceType

Type determining type of tracked device

◆ varjo_PluginContext

typedef struct varjo_PluginContext_t* varjo_PluginContext

Plugin session context

◆ varjo_PluginUtilitySession

typedef struct varjo_PluginUtilitySession_t* varjo_PluginUtilitySession

varjo_PluginUtilitySession

◆ varjo_ConfigurationKeyIterator

typedef struct varjo_ConfigurationKeyIterator_t* varjo_ConfigurationKeyIterator

Settings key enumeration handle

◆ varjo_PluginSystemState

typedef int64_t varjo_PluginSystemState

Plugin system state

◆ varjo_PluginUtilityAPI

Variable Documentation

◆ varjo_False

const varjo_Bool varjo_False = 0
static

Value representing False.

◆ varjo_True

const varjo_Bool varjo_True = 1
static

Value representing True.

◆ varjo_PoseFlags_Ok

const varjo_PoseFlags varjo_PoseFlags_Ok = 0x1
static

Flag indicating that the tracking is OK.

◆ varjo_PoseFlags_TrackingLost

const varjo_PoseFlags varjo_PoseFlags_TrackingLost = 0x2
static

Flag indicating that no tracking data is available.

◆ varjo_PoseFlags_TrackingDisconnected

const varjo_PoseFlags varjo_PoseFlags_TrackingDisconnected = 0x4
static

Flag indicating that the tracker is disconnected.

◆ varjo_PoseFlags_HasPosition

const varjo_PoseFlags varjo_PoseFlags_HasPosition = 0x08
static

Flag indicating that the pose has position information.

◆ varjo_PoseFlags_HasRotation

const varjo_PoseFlags varjo_PoseFlags_HasRotation = 0x10
static

Flag indicating that the pose has rotation information.

◆ varjo_PoseFlags_HasVelocity

const varjo_PoseFlags varjo_PoseFlags_HasVelocity = 0x20
static

Flag indicating that the pose has velocity information.

◆ varjo_PoseFlags_HasAngularVelocity

const varjo_PoseFlags varjo_PoseFlags_HasAngularVelocity = 0x40
static

Flag indicating that the pose has angular velocity information.

◆ varjo_PoseFlags_HasAcceleration

const varjo_PoseFlags varjo_PoseFlags_HasAcceleration = 0x80
static

Flag indicating that the pose has acceleration information.

◆ varjo_PoseFlags_HasConfidence

const varjo_PoseFlags varjo_PoseFlags_HasConfidence = 0x100
static

Flag indicating that the pose has confidence information.

◆ varjo_IMUCapability_Acceleration

const varjo_IMUCapability varjo_IMUCapability_Acceleration = 0x01
static

IMU HW is capable of reporting accelerometer measurements.

◆ varjo_IMUCapability_AngularVelocity

const varjo_IMUCapability varjo_IMUCapability_AngularVelocity = 0x02
static

IMU HW is capable of reporting gyro measurements.

◆ varjo_IMUCapability_Attitude

const varjo_IMUCapability varjo_IMUCapability_Attitude = 0x04
static

IMU HW is capable of reporting magnetometer measurements.

◆ varjo_IMUDataOffscale_AccelerationX

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AccelerationX = 0x001
static

Flag indicating the X-axis acceleration measurement is off-scale.

◆ varjo_IMUDataOffscale_AccelerationY

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AccelerationY = 0x002
static

Flag indicating the Y-axis acceleration measurement is off-scale.

◆ varjo_IMUDataOffscale_AccelerationZ

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AccelerationZ = 0x004
static

Flag indicating the Z-axis acceleration measurement is off-scale.

◆ varjo_IMUDataOffscale_AngularVelocityX

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AngularVelocityX = 0x008
static

Flag indicating the X-axis angular velocity measurement is off-scale.

◆ varjo_IMUDataOffscale_AngularVelocityY

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AngularVelocityY = 0x010
static

Flag indicating the Y-axis angular velocity measurement is off-scale.

◆ varjo_IMUDataOffscale_AngularVelocityZ

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AngularVelocityZ = 0x020
static

Flag indicating the Z-axis angular velocity measurement is off-scale.

◆ varjo_IMUDataOffscale_AttitudeX

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AttitudeX = 0x040
static

Flag indicating the X-axis attitude measurement is off-scale.

◆ varjo_IMUDataOffscale_AttitudeY

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AttitudeY = 0x080
static

Flag indicating the Y-axis attitude measurement is off-scale.

◆ varjo_IMUDataOffscale_AttitudeZ

const varjo_IMUDataOffscale varjo_IMUDataOffscale_AttitudeZ = 0x100
static

Flag indicating the Z-axis attitudey measurement is off-scale.

◆ varjo_IMUDataInvalid_AccelerationX

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AccelerationX = 0x001
static

Flag indicating the X-axis acceleration measurement is not valid.

◆ varjo_IMUDataInvalid_AccelerationY

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AccelerationY = 0x002
static

Flag indicating the Y-axis acceleration measurement is not valid.

◆ varjo_IMUDataInvalid_AccelerationZ

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AccelerationZ = 0x004
static

Flag indicating the Z-axis acceleration measurement is not valid.

◆ varjo_IMUDataInvalid_AngularVelocityX

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AngularVelocityX = 0x008
static

Flag indicating the X-axis angular velocity measurement is not valid.

◆ varjo_IMUDataInvalid_AngularVelocityY

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AngularVelocityY = 0x010
static

Flag indicating the Y-axis angular velocity measurement is not valid.

◆ varjo_IMUDataInvalid_AngularVelocityZ

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AngularVelocityZ = 0x020
static

Flag indicating the Z-axis angular velocity measurement is not valid.

◆ varjo_IMUDataInvalid_AttitudeX

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AttitudeX = 0x040
static

Flag indicating the X-axis attitude measurement is not valid.

◆ varjo_IMUDataInvalid_AttitudeY

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AttitudeY = 0x080
static

Flag indicating the Y-axis attitude measurement is not valid.

◆ varjo_IMUDataInvalid_AttitudeZ

const varjo_IMUDataInvalid varjo_IMUDataInvalid_AttitudeZ = 0x100
static

Flag indicating the Z-axis attitude measurement is not valid.

◆ varjo_IMUComponent_Accelerometer

const varjo_IMUComponent varjo_IMUComponent_Accelerometer = 1
static

Constant identifying IMU component accelerometer.

◆ varjo_IMUComponent_Gyro

const varjo_IMUComponent varjo_IMUComponent_Gyro = 2
static

Constant identifying IMU component gyro.

◆ varjo_IMUComponent_Magnetometer

const varjo_IMUComponent varjo_IMUComponent_Magnetometer = 3
static

Constant identifying IMU component magnetometer.

◆ varjo_PluginType_HMD_Tracker

const varjo_PluginType varjo_PluginType_HMD_Tracker = 0x01
static

Flag indicating this plugin provides HMD tracking functionality.

◆ varjo_PluginType_MotionPlatform

const varjo_PluginType varjo_PluginType_MotionPlatform = 0x02
static

Flag indicating this plugin provides motion platform functionality.

◆ varjo_PluginStatus_OK

const varjo_PluginStatus varjo_PluginStatus_OK = 0
static

Plugin status OK.

◆ varjo_DeviceType_HMD

const varjo_PluginType varjo_DeviceType_HMD = 1
static

Device type - Head Mounted Display.

◆ varjo_PluginSystemState_OK

const varjo_PluginSystemState varjo_PluginSystemState_OK = 0
static

Plugin system is functioning correctly.

◆ varjo_PluginSystemState_Warning

const varjo_PluginSystemState varjo_PluginSystemState_Warning = 1
static

Plugin system is reporting a state requiring user attention e.g. battery low.

◆ varjo_PluginSystemState_CriticalError

const varjo_PluginSystemState varjo_PluginSystemState_CriticalError = 2
static

Plugin system is reporting a critical error state, e.g. tracking failure.