Varjo Native SDK
Varjo_types_world.h
Go to the documentation of this file.
1 // Copyright 2020 Varjo Technologies Oy. All rights reserved.
2 
3 #ifndef VARJO_TYPES_WORLD_H
4 #define VARJO_TYPES_WORLD_H
5 
6 #include "Varjo_types.h"
7 
8 #if defined __cplusplus
9 extern "C" {
10 #endif
11 
12 /*
13  * An opaque handle for a varjo_World instance.
14  */
15 struct varjo_World;
16 
23 typedef uint64_t varjo_WorldFlags;
25 
30 typedef int64_t varjo_WorldObjectId;
31 
43 
51  uint64_t reserved[2];
52 };
53 
69 typedef uint64_t varjo_WorldPoseFlags;
79 
85  struct varjo_Matrix pose;
86  struct varjo_Vector3D velocity;
91  double confidence;
92 };
93 
94 typedef int64_t varjo_WorldMarkerId;
95 
100 
106 
119 
130  struct varjo_Size3D size;
131 };
132 
133 #if defined __cplusplus
134 }
135 #endif
136 
137 #endif // VARJO_TYPES_WORLD_H
varjo_WorldPoseFlags_HasRotation
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasRotation
Pose has rotation information.
Definition: Varjo_types_world.h:74
varjo_Nanoseconds
int64_t varjo_Nanoseconds
Time in nanoseconds.
Definition: Varjo_types.h:142
varjo_WorldPoseFlags_HasPosition
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasPosition
Pose has position information.
Definition: Varjo_types_world.h:73
varjo_WorldObjectId
int64_t varjo_WorldObjectId
A unique id for an object in varjo_World.
Definition: Varjo_types_world.h:30
varjo_WorldObjectMarkerComponent::flags
varjo_WorldObjectMarkerFlags flags
Marker flags.
Definition: Varjo_types_world.h:128
varjo_WorldPoseComponent::pose
struct varjo_Matrix pose
Pose of the object in the global space. Translation and rotation only.
Definition: Varjo_types_world.h:85
varjo_WorldObject::id
varjo_WorldObjectId id
Id of the object. Valid for the lifetime of the world.
Definition: Varjo_types_world.h:49
varjo_WorldPoseComponent::timeStamp
varjo_Nanoseconds timeStamp
Timestamp of the pose. This represents the time the pose has been extrapolated to.
Definition: Varjo_types_world.h:90
varjo_WorldPoseComponent
Represents a pose of an object.
Definition: Varjo_types_world.h:84
varjo_WorldObject::typeMask
varjo_WorldComponentTypeMask typeMask
Mask for all contained component types.
Definition: Varjo_types_world.h:50
varjo_WorldPoseComponent::acceleration
struct varjo_Vector3D acceleration
Acceleration (m/s^2).
Definition: Varjo_types_world.h:88
varjo_WorldObjectMarkerFlags
int64_t varjo_WorldObjectMarkerFlags
Configuration flags for markers.
Definition: Varjo_types_world.h:99
varjo_WorldObjectMarkerComponent::size
struct varjo_Size3D size
Size of the marker in meters.
Definition: Varjo_types_world.h:130
varjo_WorldFlags
uint64_t varjo_WorldFlags
Configuration mask for varjo_WorldInit.
Definition: Varjo_types_world.h:15
varjo_WorldFlag_UseObjectMarkers
static const varjo_WorldFlags varjo_WorldFlag_UseObjectMarkers
Initialize object marker tracking backend for the varjo_World instance.
Definition: Varjo_types_world.h:24
varjo_WorldObjectMarkerComponent
Represents an object marker.
Definition: Varjo_types_world.h:126
varjo_Size3D
64bit floating point size of a 3D object.
Definition: Varjo_types.h:355
varjo_WorldPoseComponent::velocity
struct varjo_Vector3D velocity
Linear velocity (m/s).
Definition: Varjo_types_world.h:86
varjo_WorldPoseFlags_HasVelocity
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasVelocity
Pose has velocity information.
Definition: Varjo_types_world.h:75
varjo_WorldObjectMarkerComponent::error
varjo_WorldObjectMarkerError error
Marker error.
Definition: Varjo_types_world.h:129
varjo_WorldPoseComponent::angularVelocity
struct varjo_Vector3D angularVelocity
Angular velocity (radians/s).
Definition: Varjo_types_world.h:87
varjo_WorldObject
Represents a single object in a varjo_World.
Definition: Varjo_types_world.h:48
varjo_WorldPoseFlags_TrackingLost
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_TrackingLost
Pose has been tracked but currently is not detected by the tracking subsystem.
Definition: Varjo_types_world.h:71
varjo_WorldObjectMarkerError_None
static const varjo_WorldObjectMarkerError varjo_WorldObjectMarkerError_None
No error.
Definition: Varjo_types_world.h:117
varjo_WorldPoseComponent::confidence
double confidence
Tracker confidence in range 0.0, 1.0.
Definition: Varjo_types_world.h:91
varjo_WorldPoseFlags_TrackingOk
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_TrackingOk
Pose is being currently tracked.
Definition: Varjo_types_world.h:70
varjo_WorldPoseFlags_HasConfidence
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasConfidence
Pose has confidence information.
Definition: Varjo_types_world.h:78
varjo_WorldObjectMarkerFlags_DoPrediction
static const varjo_WorldObjectMarkerFlags varjo_WorldObjectMarkerFlags_DoPrediction
Marker to be tracked as dynamic which means more responsive pose updates according to marker's moveme...
Definition: Varjo_types_world.h:105
Varjo_types.h
varjo_WorldPoseComponent::poseFlags
varjo_WorldPoseFlags poseFlags
Bit field value describing pose. See varjo_WorldPoseFlags.
Definition: Varjo_types_world.h:89
varjo_WorldObjectMarkerComponent::id
varjo_WorldMarkerId id
Unique id of the marker.
Definition: Varjo_types_world.h:127
varjo_WorldComponentTypeMask_ObjectMarker
static const varjo_WorldComponentTypeMask varjo_WorldComponentTypeMask_ObjectMarker
Object contains a varjo_ObjectMarkerComponent.
Definition: Varjo_types_world.h:42
varjo_Matrix
Double precision 4x4 matrix.
Definition: Varjo_types.h:297
varjo_WorldObject::reserved
uint64_t reserved[2]
Definition: Varjo_types_world.h:51
varjo_Vector3D
Definition: Varjo_types.h:328
varjo_WorldComponentTypeMask_Pose
static const varjo_WorldComponentTypeMask varjo_WorldComponentTypeMask_Pose
Object contains a varjo_PoseComponent.
Definition: Varjo_types_world.h:41
varjo_WorldPoseFlags
uint64_t varjo_WorldPoseFlags
World pose flags.
Definition: Varjo_types_world.h:69
varjo_WorldComponentTypeMask
uint64_t varjo_WorldComponentTypeMask
Bit mask for filtering a World object.
Definition: Varjo_types_world.h:40
varjo_WorldMarkerId
int64_t varjo_WorldMarkerId
Definition: Varjo_types_world.h:94
varjo_WorldObjectMarkerError_DuplicateID
static const varjo_WorldObjectMarkerError varjo_WorldObjectMarkerError_DuplicateID
Several markers have the same ID.
Definition: Varjo_types_world.h:118
varjo_WorldPoseFlags_HasAcceleration
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasAcceleration
Pose has acceleration information.
Definition: Varjo_types_world.h:77
varjo_WorldPoseFlags_HasAngularVelocity
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasAngularVelocity
Pose has angular velocity information.
Definition: Varjo_types_world.h:76
varjo_WorldObjectMarkerError
int64_t varjo_WorldObjectMarkerError
Type describing marker tracking error code.
Definition: Varjo_types_world.h:116
varjo_WorldPoseFlags_TrackingDisconnected
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_TrackingDisconnected
Tracking subsystem is not connected and poses cannot be acquired.
Definition: Varjo_types_world.h:72