Monado OpenXR Runtime
xrt_tracked_psmv Interface Reference

A single tracked PS Move controller, camera and ball are not synced. More...

#include <xrt/xrt_tracking.h>

Inheritance diagram for xrt_tracked_psmv:
Collaboration diagram for xrt_tracked_psmv:

Public Member Functions

int t_psmv_start (struct xrt_tracked_psmv *xtmv)
 
int t_psmv_create (struct xrt_frame_context *xfctx, struct xrt_colour_rgb_f32 *rgb, struct t_stereo_camera_calibration *data, struct xrt_tracked_psmv **out_xtmv, struct xrt_frame_sink **out_sink)
 

Static Public Member Functions

static void xrt_tracked_psmv_get_tracked_pose (struct xrt_tracked_psmv *psmv, enum xrt_input_name name, timepoint_ns when_ns, struct xrt_space_relation *out_relation)
 
static void xrt_tracked_psmv_push_imu (struct xrt_tracked_psmv *psmv, timepoint_ns timestamp_ns, struct xrt_tracking_sample *sample)
 
static void xrt_tracked_psmv_destroy (struct xrt_tracked_psmv **xtmv_ptr)
 
static void xrt_tracked_psvr_get_tracked_pose (struct xrt_tracked_psvr *psvr, timepoint_ns when_ns, struct xrt_space_relation *out_relation)
 
static void xrt_tracked_psvr_push_imu (struct xrt_tracked_psvr *psvr, timepoint_ns timestamp_ns, struct xrt_tracking_sample *sample)
 
static void xrt_tracked_psvr_destroy (struct xrt_tracked_psvr **xtvr_ptr)
 

Data Fields

struct xrt_tracking_originorigin
 The tracking system origin for this ball. More...
 
struct xrt_devicexdev
 Device owning this ball. More...
 
struct xrt_colour_rgb_f32 colour
 Colour of the ball. More...
 
void(* push_imu )(struct xrt_tracked_psmv *, timepoint_ns timestamp_ns, struct xrt_tracking_sample *sample)
 Push a IMU sample into the tracking system. More...
 
void(* get_tracked_pose )(struct xrt_tracked_psmv *, enum xrt_input_name name, timepoint_ns when_ns, struct xrt_space_relation *out_relation)
 Called by the owning xrt_device xdev to get the pose of the ball in the tracking space at the given time. More...
 
void(* destroy )(struct xrt_tracked_psmv *)
 Destroy this tracked ball. More...
 

Detailed Description

A single tracked PS Move controller, camera and ball are not synced.

Todo:
How do we communicate ball colour change?

Field Documentation

◆ colour

struct xrt_colour_rgb_f32 xrt_tracked_psmv::colour

Colour of the ball.

◆ destroy

void(* xrt_tracked_psmv::destroy) (struct xrt_tracked_psmv *)

Destroy this tracked ball.

◆ get_tracked_pose

void(* xrt_tracked_psmv::get_tracked_pose) (struct xrt_tracked_psmv *, enum xrt_input_name name, timepoint_ns when_ns, struct xrt_space_relation *out_relation)

Called by the owning xrt_device xdev to get the pose of the ball in the tracking space at the given time.

Todo:
Should we add a out_time argument as a way to signal min and maximum, and as such only do interpelation between different captured frames.

◆ origin

struct xrt_tracking_origin* xrt_tracked_psmv::origin

The tracking system origin for this ball.

◆ push_imu

void(* xrt_tracked_psmv::push_imu) (struct xrt_tracked_psmv *, timepoint_ns timestamp_ns, struct xrt_tracking_sample *sample)

Push a IMU sample into the tracking system.

◆ xdev

struct xrt_device* xrt_tracked_psmv::xdev

Device owning this ball.


The documentation for this interface was generated from the following files: