[libcamera-devel] [PATCH v2 2/2] libcamera: v4l2_device: Add stubs to set/get format
Jacopo Mondi
jacopo at jmondi.org
Thu Jan 24 20:35:03 CET 2019
Hi Niklas,
On Thu, Jan 24, 2019 at 07:51:32PM +0100, Niklas Söderlund wrote:
> Hi Jacopo,
>
> Thanks for your work.
>
> On 2019-01-24 12:30:00 +0100, Jacopo Mondi wrote:
> > Add function stubs for set/get format to V4L2Device.
> >
> > Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
> > ---
> > src/libcamera/include/v4l2_device.h | 9 ++++++
> > src/libcamera/v4l2_device.cpp | 49 +++++++++++++++++++++++++++++
> > 2 files changed, 58 insertions(+)
> >
> > diff --git a/src/libcamera/include/v4l2_device.h b/src/libcamera/include/v4l2_device.h
> > index 413bb7f..2da30d1 100644
> > --- a/src/libcamera/include/v4l2_device.h
> > +++ b/src/libcamera/include/v4l2_device.h
> > @@ -72,10 +72,19 @@ public:
> > const char *deviceName() const { return caps_.card(); }
> > const char *busName() const { return caps_.bus_info(); }
> >
> > + int format();
> > + int setFormat();
> > +
> > private:
> > std::string deviceNode_;
> > int fd_;
> > V4L2Capability caps_;
> > +
> > + int getFormatSingleplane();
>
> I think this should be formatSingleplane() to match the naming
> convention.
I see. Being this a private API, I considerd this was not an issue.
But you're right, consistency first.
>
> I like the structure of this patch and I think this is the way to go. I
> do think we should hold off on merging this until we can replace the
> stubs with code that do some work. Furthermore I think you can merge 1/2
> if this series, if there are no other review comments on that in the
> near future.
>
I agree this is not useful if not as a place holder without any actual
code. If I implement the get/set format, I'll resend. I'm merging
[1/2] if no other comment arrives though.
Thanks
j
> > + int setFormatSingleplane();
> > +
> > + int getFormatMultiplane();
> > + int setFormatMultiplane();
> > };
> >
> > } /* namespace libcamera */
> > diff --git a/src/libcamera/v4l2_device.cpp b/src/libcamera/v4l2_device.cpp
> > index 9cb504d..2ddb800 100644
> > --- a/src/libcamera/v4l2_device.cpp
> > +++ b/src/libcamera/v4l2_device.cpp
> > @@ -213,4 +213,53 @@ void V4L2Device::close()
> > * \return The string containing the device location
> > */
> >
> > +/**
> > + * \brief Retrieve the image format set on the V4L2 device
> > + *
> > + * TODO: define how the image format is encoded
> > + * FIXME: this function is a stub at the moment
> > + *
> > + * \return 0 for success, a negative error code otherwise
> > + */
> > +int V4L2Device::format()
> > +{
> > + return caps_.isMultiplanar() ? getFormatMultiplane() :
> > + getFormatSingleplane();
> > +}
> > +
> > +/**
> > + * \brief Program an image format on the V4L2 device
> > + *
> > + * TODO: define how the image format is encoded
> > + * FIXME: this function is a stub at the moment
> > + *
> > + * \return 0 for success, a negative error code otherwise
> > + */
> > +int V4L2Device::setFormat()
> > +{
> > + return caps_.isMultiplanar() ? setFormatMultiplane() :
> > + setFormatSingleplane();
> > +}
> > +
> > +/* FIXME: these functions are stubs at the moment. */
> > +int V4L2Device::getFormatSingleplane()
> > +{
> > + return 0;
> > +}
> > +
> > +int V4L2Device::setFormatSingleplane()
> > +{
> > + return 0;
> > +}
> > +
> > +int V4L2Device::getFormatMultiplane()
> > +{
> > + return 0;
> > +}
> > +
> > +int V4L2Device::setFormatMultiplane()
> > +{
> > + return 0;
> > +}
> > +
> > } /* namespace libcamera */
> > --
> > 2.20.1
> >
> > _______________________________________________
> > libcamera-devel mailing list
> > libcamera-devel at lists.libcamera.org
> > https://lists.libcamera.org/listinfo/libcamera-devel
>
> --
> Regards,
> Niklas Söderlund
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.libcamera.org/pipermail/libcamera-devel/attachments/20190124/ef5e8cb8/attachment.sig>
More information about the libcamera-devel
mailing list