Monado OpenXR Runtime
|
Handles all the data sources from the WMR driver. More...
Data Fields | |
struct xrt_fs | xfs |
struct xrt_frame_node | node |
enum u_logging_level | log_level |
Log level. More... | |
struct wmr_hmd_config | config |
struct wmr_camera * | camera |
struct xrt_frame_sink | cam_sinks [4] |
Intermediate sinks for camera frames. More... | |
struct xrt_imu_sink | imu_sink |
Intermediate sink for IMU samples. More... | |
struct xrt_slam_sinks | in_sinks |
Pointers to intermediate sinks. More... | |
struct xrt_slam_sinks | out_sinks |
Pointers to downstream sinks. More... | |
struct u_sink_debug | ui_cam_sinks [4] |
Sink to display camera frames in UI. More... | |
struct m_ff_vec3_f32 * | gyro_ff |
Queue of gyroscope data to display in UI. More... | |
struct m_ff_vec3_f32 * | accel_ff |
Queue of accelerometer data to display in UI. More... | |
bool | is_running |
Whether the device is streaming. More... | |
bool | first_imu_received |
Don't send frames until first IMU sample. More... | |
timepoint_ns | last_imu_ns |
Last timepoint received. More... | |
time_duration_ns | hw2mono |
Estimated offset from IMU to monotonic clock. More... | |
time_duration_ns | cam_hw2mono |
Caches hw2mono for use in the full frame bundle. More... | |
Data Fields inherited from xrt_fs | |
char | name [512] |
Name of the frame server source, from the subsystem. More... | |
char | product [32] |
Frame server product identifier, matches the prober device. More... | |
char | manufacturer [32] |
Frame server manufacturer, matches the prober device. More... | |
char | serial [32] |
Frame server serial number, matches the prober device. More... | |
uint64_t | source_id |
All frames produced by this frameserver are tagged with this id. More... | |
bool(* | enumerate_modes )(struct xrt_fs *xfs, struct xrt_fs_mode **out_modes, uint32_t *out_count) |
Enumerate all available modes that this frameserver supports. More... | |
bool(* | configure_capture )(struct xrt_fs *xfs, struct xrt_fs_capture_parameters *cp) |
Set the capture parameters, may not be supported on all capture devices. More... | |
bool(* | stream_start )(struct xrt_fs *xfs, struct xrt_frame_sink *xs, enum xrt_fs_capture_type capture_type, uint32_t descriptor_index) |
Start the capture stream. More... | |
bool(* | slam_stream_start )(struct xrt_fs *xfs, struct xrt_slam_sinks *sinks) |
Setup SLAM sinks for all the sensors a SLAM implementation may supports and start the frame server stream. More... | |
bool(* | stream_stop )(struct xrt_fs *xfs) |
Stop the capture stream. More... | |
bool(* | is_running )(struct xrt_fs *xfs) |
Is the capture stream running. More... | |
Data Fields inherited from xrt_frame_node | |
struct xrt_frame_node * | next |
void(* | break_apart )(struct xrt_frame_node *node) |
Called first in when the graph is being destroyed, remove any references frames and other objects and stop threads. More... | |
void(* | destroy )(struct xrt_frame_node *node) |
Do the actual freeing of the objects. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from xrt_fs | |
static bool | xrt_fs_enumerate_modes (struct xrt_fs *xfs, struct xrt_fs_mode **out_modes, uint32_t *out_count) |
Enumerate all available modes that this frameserver supports. More... | |
static bool | xrt_fs_configure_capture (struct xrt_fs *xfs, struct xrt_fs_capture_parameters *cp) |
Set the capture parameters, may not be supported on all capture devices. More... | |
static bool | xrt_fs_stream_start (struct xrt_fs *xfs, struct xrt_frame_sink *xs, enum xrt_fs_capture_type capture_type, uint32_t descriptor_index) |
Start the capture stream. More... | |
static bool | xrt_fs_slam_stream_start (struct xrt_fs *xfs, struct xrt_slam_sinks *sinks) |
Setup SLAM sinks for all the sensors a SLAM implementation may supports and start the frame server stream. More... | |
static bool | xrt_fs_stream_stop (struct xrt_fs *xfs) |
Stop the capture stream. More... | |
static bool | xrt_fs_is_running (struct xrt_fs *xfs) |
Is the capture stream running. More... | |
Handles all the data sources from the WMR driver.
struct m_ff_vec3_f32* wmr_source::accel_ff |
Queue of accelerometer data to display in UI.
time_duration_ns wmr_source::cam_hw2mono |
Caches hw2mono for use in the full frame bundle.
struct xrt_frame_sink wmr_source::cam_sinks[4] |
Intermediate sinks for camera frames.
bool wmr_source::first_imu_received |
Don't send frames until first IMU sample.
struct m_ff_vec3_f32* wmr_source::gyro_ff |
Queue of gyroscope data to display in UI.
time_duration_ns wmr_source::hw2mono |
Estimated offset from IMU to monotonic clock.
Referenced by receive_imu_sample().
struct xrt_imu_sink wmr_source::imu_sink |
Intermediate sink for IMU samples.
Referenced by receive_imu_sample().
struct xrt_slam_sinks wmr_source::in_sinks |
Pointers to intermediate sinks.
bool wmr_source::is_running |
Whether the device is streaming.
timepoint_ns wmr_source::last_imu_ns |
Last timepoint received.
Referenced by receive_imu_sample().
enum u_logging_level wmr_source::log_level |
Log level.
struct xrt_slam_sinks wmr_source::out_sinks |
Pointers to downstream sinks.
struct u_sink_debug wmr_source::ui_cam_sinks[4] |
Sink to display camera frames in UI.