Monado OpenXR Runtime
u_sink.h
Go to the documentation of this file.
1 // Copyright 2019, Collabora, Ltd.
2 // SPDX-License-Identifier: BSL-1.0
3 /*!
4  * @file
5  * @brief @ref xrt_frame_sink converters and other helpers.
6  * @author Jakob Bornecrantz <jakob@collabora.com>
7  * @ingroup aux_util
8  */
9 
10 #pragma once
11 
12 #include "xrt/xrt_frame.h"
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 
20 {
21  bool stereo_sbs;
22  bool ps4_cam;
24 };
25 
26 void
28  enum xrt_format f,
29  struct xrt_frame_sink *downstream,
30  struct xrt_frame_sink **out_xfs);
31 
32 void
34  struct xrt_frame_sink *downstream,
35  struct xrt_frame_sink **out_xfs);
36 
37 void
39  struct xrt_frame_sink *downstream,
40  struct xrt_frame_sink **out_xfs);
41 
42 void
44  struct xrt_frame_sink *downstream,
45  struct xrt_frame_sink **out_xfs);
46 
47 void
49  struct xrt_frame_sink *downstream,
50  struct xrt_frame_sink **out_xfs);
51 
52 bool
54  struct xrt_frame_sink *downstream,
55  struct xrt_frame_sink **out_xfs);
56 
57 void
59  struct xrt_frame_sink *downstream,
60  struct u_sink_quirk_params *params,
61  struct xrt_frame_sink **out_xfs);
62 
63 void
65  struct xrt_frame_sink *left,
66  struct xrt_frame_sink *right,
67  struct xrt_frame_sink **out_xfs);
68 
69 
70 #ifdef __cplusplus
71 }
72 #endif
void u_sink_create_to_r8g8b8_or_l8(struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
Definition: u_sink_converter.c:589
bool ps4_cam
Definition: u_sink.h:22
void u_sink_create_format_converter(struct xrt_frame_context *xfctx, enum xrt_format f, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
Definition: u_sink_converter.c:562
A object that is sent frames.
Definition: xrt_frame.h:51
void u_sink_split_create(struct xrt_frame_context *xfctx, struct xrt_frame_sink *left, struct xrt_frame_sink *right, struct xrt_frame_sink **out_xfs)
Definition: u_sink_split.c:52
void u_sink_create_to_yuv_or_yuyv(struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
Definition: u_sink_converter.c:625
void u_sink_quirk_create(struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct u_sink_quirk_params *params, struct xrt_frame_sink **out_xfs)
Definition: u_sink_quirk.c:92
Object used to track all sinks and frame producers in a graph.
Definition: xrt_frame.h:87
bool u_sink_queue_create(struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
Definition: u_sink_queue.c:155
Data frame header.
Definition: u_sink.h:19
xrt_format
Common formats, use u_format_* functions to reason about them.
Definition: xrt_defines.h:61
void u_sink_create_to_yuv_yuyv_uyvy_or_l8(struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
Definition: u_sink_converter.c:609
bool leap_motion
Definition: u_sink.h:23
void u_sink_deinterleaver_create(struct xrt_frame_context *xfctx, struct xrt_frame_sink *downstream, struct xrt_frame_sink **out_xfs)
Definition: u_sink_deinterleaver.c:129
bool stereo_sbs
Definition: u_sink.h:21