|
Monado OpenXR Runtime
|

Functions | |
| static void | free_one_off (struct xrt_frame *xf) |
| void | u_frame_create_one_off (enum xrt_format f, uint32_t width, uint32_t height, struct xrt_frame **out_frame) |
| Creates a single non-pooled frame, when the reference reaches zero it is freed. | |
| static void | free_clone (struct xrt_frame *xf) |
| void | u_frame_clone (struct xrt_frame *to_copy, struct xrt_frame **out_frame) |
| Clones a frame. | |
| static void | free_roi (struct xrt_frame *xf) |
| void | u_frame_create_roi (struct xrt_frame *original, struct xrt_rect roi, struct xrt_frame **out_frame) |
Creates a frame out of a region of interest from original frame. | |
xrt_frame helpers.
Clones a frame.
The cloned frame is not freed when the original frame is freed; instead the cloned frame is freed when its reference reaches zero.
References xrt_frame::source_id, xrt_frame::source_sequence, U_TYPED_CALLOC, and xrt_frame::xrt_frame_reference().
| void u_frame_create_one_off | ( | enum xrt_format | f, |
| uint32_t | width, | ||
| uint32_t | height, | ||
| struct xrt_frame ** | out_frame | ||
| ) |
Creates a single non-pooled frame, when the reference reaches zero it is freed.
References u_format_is_blocks(), u_format_size_for_dimensions(), U_TYPED_CALLOC, and xrt_frame::xrt_frame_reference().
Referenced by xrt::tracking::hand::mercury::HandTracking::cCallbackProcess(), and create_frame_with_format_of_size().
| void u_frame_create_roi | ( | struct xrt_frame * | original, |
| struct xrt_rect | roi, | ||
| struct xrt_frame ** | out_frame | ||
| ) |
Creates a frame out of a region of interest from original frame.
Does not duplicate data, increases original refcount instead.
References xrt_frame::source_id, xrt_frame::source_sequence, u_format_block_height(), u_format_block_size(), u_format_block_width(), U_TYPED_CALLOC, and xrt_frame::xrt_frame_reference().
Referenced by receive_cam_frame().