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 
17 typedef uint64_t varjo_WorldFlags;
19 
24 typedef int64_t varjo_WorldObjectId;
25 
29 
37  uint64_t reserved[2];
38 };
39 
40 typedef uint64_t varjo_WorldPoseFlags;
50 
56  struct varjo_Matrix pose;
57  struct varjo_Vector3D velocity;
62  double confidence;
63 };
64 
65 typedef int64_t varjo_WorldMarkerId;
66 
69  0x1;
70 
79 
90  struct varjo_Size3D size;
91 };
92 
93 #if defined __cplusplus
94 }
95 #endif
96 
97 #endif // VARJO_TYPES_WORLD_H
varjo_WorldPoseFlags_HasRotation
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasRotation
Pose has rotation information.
Definition: Varjo_types_world.h:45
varjo_Nanoseconds
int64_t varjo_Nanoseconds
Time in nanoseconds.
Definition: Varjo_types.h:140
varjo_WorldPoseFlags_HasPosition
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasPosition
Pose has position information.
Definition: Varjo_types_world.h:44
varjo_WorldObjectId
int64_t varjo_WorldObjectId
A unique id for an object in varjo_World.
Definition: Varjo_types_world.h:24
varjo_WorldObjectMarkerComponent::flags
varjo_WorldObjectMarkerFlags flags
Marker flags.
Definition: Varjo_types_world.h:88
varjo_WorldPoseComponent::pose
struct varjo_Matrix pose
Pose of the object in the global space. Translation and rotation only.
Definition: Varjo_types_world.h:56
varjo_WorldObject::id
varjo_WorldObjectId id
Id of the object. Valid for the lifetime of the world.
Definition: Varjo_types_world.h:35
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:61
varjo_WorldPoseComponent
Represents a pose of an object.
Definition: Varjo_types_world.h:55
varjo_WorldObject::typeMask
varjo_WorldComponentTypeMask typeMask
Mask for all contained component types.
Definition: Varjo_types_world.h:36
varjo_WorldPoseComponent::acceleration
struct varjo_Vector3D acceleration
Acceleration (m/s^2).
Definition: Varjo_types_world.h:59
varjo_WorldObjectMarkerFlags
int64_t varjo_WorldObjectMarkerFlags
Definition: Varjo_types_world.h:67
varjo_WorldObjectMarkerComponent::size
struct varjo_Size3D size
Size of the marker in meters.
Definition: Varjo_types_world.h:90
varjo_WorldFlags
uint64_t varjo_WorldFlags
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:18
varjo_WorldObjectMarkerComponent
Represents an object marker.
Definition: Varjo_types_world.h:86
varjo_Size3D
64bit floating point size of a 3D object.
Definition: Varjo_types.h:351
varjo_WorldPoseComponent::velocity
struct varjo_Vector3D velocity
Linear velocity (m/s).
Definition: Varjo_types_world.h:57
varjo_WorldPoseFlags_HasVelocity
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasVelocity
Pose has velocity information.
Definition: Varjo_types_world.h:46
varjo_WorldObjectMarkerComponent::error
varjo_WorldObjectMarkerError error
Marker error.
Definition: Varjo_types_world.h:89
varjo_WorldPoseComponent::angularVelocity
struct varjo_Vector3D angularVelocity
Angular velocity (radians/s).
Definition: Varjo_types_world.h:58
varjo_WorldObject
Represents a single object in a varjo_World.
Definition: Varjo_types_world.h:34
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:42
varjo_WorldObjectMarkerError_None
static const varjo_WorldObjectMarkerError varjo_WorldObjectMarkerError_None
No error.
Definition: Varjo_types_world.h:77
varjo_WorldPoseComponent::confidence
double confidence
Tracker confidence in range 0.0, 1.0.
Definition: Varjo_types_world.h:62
varjo_WorldPoseFlags_TrackingOk
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_TrackingOk
Pose is being currently tracked.
Definition: Varjo_types_world.h:41
varjo_WorldPoseFlags_HasConfidence
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasConfidence
Pose has confidence information.
Definition: Varjo_types_world.h:49
varjo_WorldObjectMarkerFlags_DoPrediction
static const varjo_WorldObjectMarkerFlags varjo_WorldObjectMarkerFlags_DoPrediction
Marker pose is predicted. If not specified, the latest detected pose is used.
Definition: Varjo_types_world.h:68
Varjo_types.h
varjo_WorldPoseComponent::poseFlags
varjo_WorldPoseFlags poseFlags
Bit field value describing pose.
Definition: Varjo_types_world.h:60
varjo_WorldObjectMarkerComponent::id
varjo_WorldMarkerId id
Unique id of the marker.
Definition: Varjo_types_world.h:87
varjo_WorldComponentTypeMask_ObjectMarker
static const varjo_WorldComponentTypeMask varjo_WorldComponentTypeMask_ObjectMarker
Object contains a varjo_ObjectMarkerComponent.
Definition: Varjo_types_world.h:28
varjo_Matrix
Double precision 4x4 matrix.
Definition: Varjo_types.h:293
varjo_WorldObject::reserved
uint64_t reserved[2]
Definition: Varjo_types_world.h:37
varjo_Vector3D
Definition: Varjo_types.h:324
varjo_WorldComponentTypeMask_Pose
static const varjo_WorldComponentTypeMask varjo_WorldComponentTypeMask_Pose
Object contains a varjo_PoseComponent.
Definition: Varjo_types_world.h:27
varjo_WorldPoseFlags
uint64_t varjo_WorldPoseFlags
Definition: Varjo_types_world.h:40
varjo_WorldComponentTypeMask
uint64_t varjo_WorldComponentTypeMask
Definition: Varjo_types_world.h:26
varjo_WorldMarkerId
int64_t varjo_WorldMarkerId
Definition: Varjo_types_world.h:65
varjo_WorldObjectMarkerError_DuplicateID
static const varjo_WorldObjectMarkerError varjo_WorldObjectMarkerError_DuplicateID
Several markers have the same ID.
Definition: Varjo_types_world.h:78
varjo_WorldPoseFlags_HasAcceleration
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasAcceleration
Pose has acceleration information.
Definition: Varjo_types_world.h:48
varjo_WorldPoseFlags_HasAngularVelocity
static const varjo_WorldPoseFlags varjo_WorldPoseFlags_HasAngularVelocity
Pose has angular velocity information.
Definition: Varjo_types_world.h:47
varjo_WorldObjectMarkerError
int64_t varjo_WorldObjectMarkerError
Type describing marker tracking error code.
Definition: Varjo_types_world.h:76
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:43