[libcamera-devel] [PATCH 1/6] libcamera: v4l2_device: Add MediaEntity contructor
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Mon Jan 21 21:32:48 CET 2019
Hi Jacopo,
Thank you for the patch.
On Mon, Jan 21, 2019 at 06:27:00PM +0100, Jacopo Mondi wrote:
> Construct a V4L2Device from a MediaEntity device node path. While at
> there mark constructor as explicit to avoid copy-construction.
>
> Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> src/libcamera/include/v4l2_device.h | 4 +++-
> src/libcamera/v4l2_device.cpp | 12 ++++++++++++
> 2 files changed, 15 insertions(+), 1 deletion(-)
>
> diff --git a/src/libcamera/include/v4l2_device.h b/src/libcamera/include/v4l2_device.h
> index 474c05b..c6f3d9a 100644
> --- a/src/libcamera/include/v4l2_device.h
> +++ b/src/libcamera/include/v4l2_device.h
> @@ -32,10 +32,12 @@ struct V4L2Capability final : v4l2_capability {
> bool hasStreaming() const { return capabilities & V4L2_CAP_STREAMING; }
> };
>
> +class MediaEntity;
> class V4L2Device
> {
> public:
> - V4L2Device(const std::string &devnode);
> + explicit V4L2Device(const std::string &devnode);
> + explicit V4L2Device(const MediaEntity &entity);
> V4L2Device(const V4L2Device &) = delete;
> ~V4L2Device();
>
> diff --git a/src/libcamera/v4l2_device.cpp b/src/libcamera/v4l2_device.cpp
> index 54b53de..59a1ad9 100644
> --- a/src/libcamera/v4l2_device.cpp
> +++ b/src/libcamera/v4l2_device.cpp
> @@ -12,6 +12,7 @@
> #include <unistd.h>
>
> #include "log.h"
> +#include "media_object.h"
> #include "v4l2_device.h"
>
> /**
> @@ -92,6 +93,17 @@ V4L2Device::V4L2Device(const std::string &devnode)
> {
> }
>
> +/**
> + * \brief Construct a V4L2Device from a MediaEntity
> + * \param entity The MediaEntity to build the device from
> + *
> + * Construct a V4L2Device from a MediaEntity's device node path.
> + */
> +V4L2Device::V4L2Device(const MediaEntity &entity)
> + : V4L2Device(entity.devnode())
> +{
> +}
> +
> V4L2Device::~V4L2Device()
> {
> close();
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list