mirror of
https://gitlab.freedesktop.org/monado/monado.git
synced 2024-12-29 11:06:18 +00:00
xrt: Refactor frameserver start stream arguments
This commit is contained in:
parent
1b35846506
commit
3b1abffa2d
|
@ -572,7 +572,9 @@ v4l2_fs_configure_capture(struct xrt_fs *xfs,
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
v4l2_fs_stream_start(struct xrt_fs *xfs, uint32_t descriptor_index)
|
v4l2_fs_stream_start(struct xrt_fs *xfs,
|
||||||
|
struct xrt_frame_sink *xs,
|
||||||
|
uint32_t descriptor_index)
|
||||||
{
|
{
|
||||||
struct v4l2_fs *vid = v4l2_fs(xfs);
|
struct v4l2_fs *vid = v4l2_fs(xfs);
|
||||||
|
|
||||||
|
@ -583,6 +585,7 @@ v4l2_fs_stream_start(struct xrt_fs *xfs, uint32_t descriptor_index)
|
||||||
}
|
}
|
||||||
vid->selected = descriptor_index;
|
vid->selected = descriptor_index;
|
||||||
|
|
||||||
|
vid->sink = xs;
|
||||||
vid->is_running = true;
|
vid->is_running = true;
|
||||||
if (pthread_create(&vid->stream_thread, NULL, v4l2_fs_stream_run,
|
if (pthread_create(&vid->stream_thread, NULL, v4l2_fs_stream_run,
|
||||||
xfs)) {
|
xfs)) {
|
||||||
|
@ -667,9 +670,7 @@ v4l2_fs_node_destroy(struct xrt_frame_node *node)
|
||||||
}
|
}
|
||||||
|
|
||||||
struct xrt_fs *
|
struct xrt_fs *
|
||||||
v4l2_fs_create(struct xrt_frame_context *xfctx,
|
v4l2_fs_create(struct xrt_frame_context *xfctx, const char *path)
|
||||||
const char *path,
|
|
||||||
struct xrt_frame_sink *sink)
|
|
||||||
{
|
{
|
||||||
struct v4l2_fs *vid = U_TYPED_CALLOC(struct v4l2_fs);
|
struct v4l2_fs *vid = U_TYPED_CALLOC(struct v4l2_fs);
|
||||||
vid->base.enumerate_modes = v4l2_fs_enumerate_modes;
|
vid->base.enumerate_modes = v4l2_fs_enumerate_modes;
|
||||||
|
@ -681,7 +682,6 @@ v4l2_fs_create(struct xrt_frame_context *xfctx,
|
||||||
vid->node.destroy = v4l2_fs_node_destroy;
|
vid->node.destroy = v4l2_fs_node_destroy;
|
||||||
vid->print_spew = debug_get_bool_option_v4l2_spew();
|
vid->print_spew = debug_get_bool_option_v4l2_spew();
|
||||||
vid->print_debug = debug_get_bool_option_v4l2_debug();
|
vid->print_debug = debug_get_bool_option_v4l2_debug();
|
||||||
vid->sink = sink;
|
|
||||||
vid->fd = -1;
|
vid->fd = -1;
|
||||||
|
|
||||||
int fd = open(path, O_RDWR, 0);
|
int fd = open(path, O_RDWR, 0);
|
||||||
|
|
|
@ -63,9 +63,7 @@ struct v4l2_source_descriptor
|
||||||
* @ingroup drv_v4l2
|
* @ingroup drv_v4l2
|
||||||
*/
|
*/
|
||||||
struct xrt_fs *
|
struct xrt_fs *
|
||||||
v4l2_fs_create(struct xrt_frame_context *xfctx,
|
v4l2_fs_create(struct xrt_frame_context *xfctx, const char *path);
|
||||||
const char *path,
|
|
||||||
struct xrt_frame_sink *sink);
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|
|
@ -72,7 +72,9 @@ struct xrt_fs
|
||||||
/*!
|
/*!
|
||||||
* Start the capture stream.
|
* Start the capture stream.
|
||||||
*/
|
*/
|
||||||
bool (*stream_start)(struct xrt_fs *xfs, uint32_t descriptor_index);
|
bool (*stream_start)(struct xrt_fs *xfs,
|
||||||
|
struct xrt_frame_sink *xs,
|
||||||
|
uint32_t descriptor_index);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Stop the capture stream.
|
* Stop the capture stream.
|
||||||
|
@ -123,9 +125,11 @@ xrt_fs_configure_capture(struct xrt_fs *xfs,
|
||||||
* @ingroup xrt_iface
|
* @ingroup xrt_iface
|
||||||
*/
|
*/
|
||||||
static inline XRT_MAYBE_UNUSED bool
|
static inline XRT_MAYBE_UNUSED bool
|
||||||
xrt_fs_stream_start(struct xrt_fs *xfs, uint32_t descriptor_index)
|
xrt_fs_stream_start(struct xrt_fs *xfs,
|
||||||
|
struct xrt_frame_sink *xs,
|
||||||
|
uint32_t descriptor_index)
|
||||||
{
|
{
|
||||||
return xfs->stream_start(xfs, descriptor_index);
|
return xfs->stream_start(xfs, xs, descriptor_index);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
Loading…
Reference in a new issue