[libcamera-devel] [PATCH 07/12] libcamera: controls: Rename ControlInfo to ControlRange
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Sun Sep 29 14:55:22 CEST 2019
Hi Jacopo,
On Sun, Sep 29, 2019 at 12:06:36PM +0200, Jacopo Mondi wrote:
> On Sat, Sep 28, 2019 at 06:22:33PM +0300, Laurent Pinchart wrote:
> > The ControlInfo class stores a range of valid values for a control. Its
> > name is vague, as "info" has multiple meanings. Rename it to
> > ControlRange.
>
> Don't want to start discussing names, just pointing out Range applies
> well as long as this only describes min and max. I expect it to grow
> with more validation information
I'm aware of that, and we can rename the class then. Hopefully it will
give us a bit more time to think about a better name :-)
> Also, it seems ControlInfoMap stays with the same name, which still
> includes 'Info'. Is this intended ?
I think we'll rename that class eventually. A bit more work is needed in
that area.
> Anwyay
> Reviewed-by: Jacopo Mondi <jacopo at jmondi.org>
>
> > Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> > ---
> > include/libcamera/controls.h | 8 +++---
> > src/libcamera/controls.cpp | 28 +++++++++----------
> > .../{control_info.cpp => control_range.cpp} | 14 +++++-----
> > test/controls/meson.build | 2 +-
> > 4 files changed, 26 insertions(+), 26 deletions(-)
> > rename test/controls/{control_info.cpp => control_range.cpp} (75%)
> >
> > diff --git a/include/libcamera/controls.h b/include/libcamera/controls.h
> > index 854ea3b84267..d3eea643c0ec 100644
> > --- a/include/libcamera/controls.h
> > +++ b/include/libcamera/controls.h
> > @@ -95,11 +95,11 @@ private:
> > Control &operator=(const Control &) = delete;
> > };
> >
> > -class ControlInfo
> > +class ControlRange
> > {
> > public:
> > - explicit ControlInfo(const ControlValue &min = 0,
> > - const ControlValue &max = 0);
> > + explicit ControlRange(const ControlValue &min = 0,
> > + const ControlValue &max = 0);
> >
> > const ControlValue &min() const { return min_; }
> > const ControlValue &max() const { return max_; }
> > @@ -111,7 +111,7 @@ private:
> > ControlValue max_;
> > };
> >
> > -using ControlInfoMap = std::unordered_map<const ControlId *, ControlInfo>;
> > +using ControlInfoMap = std::unordered_map<const ControlId *, ControlRange>;
> >
> > class ControlList
> > {
> > diff --git a/src/libcamera/controls.cpp b/src/libcamera/controls.cpp
> > index 6a3bb353792d..51abb4ea7f6f 100644
> > --- a/src/libcamera/controls.cpp
> > +++ b/src/libcamera/controls.cpp
> > @@ -312,42 +312,42 @@ Control<int64_t>::Control(unsigned int id, const char *name)
> > #endif /* __DOXYGEN__ */
> >
> > /**
> > - * \class ControlInfo
> > - * \brief Describe the information and capabilities of a Control
> > + * \class ControlRange
> > + * \brief Describe the limits of valid values for a Control
> > *
> > - * The ControlInfo represents control specific meta-data which is constant on a
> > - * per camera basis. ControlInfo classes are constructed by pipeline handlers
> > - * to expose the controls they support and the metadata needed to utilise those
> > - * controls.
> > + * The ControlRange expresses the constraints on valid values for a control.
> > + * The constraints depend on the object the control applies to, and are
> > + * constant for the lifetime of that object. They are typically constructed by
> > + * pipeline handlers to describe the controls they support.
>
> to describe the validation criteria/limits of the controls they
> support.
>
> > */
> >
> > /**
> > - * \brief Construct a ControlInfo with minimum and maximum range parameters
> > + * \brief Construct a ControlRange with minimum and maximum range parameters
> > * \param[in] min The control minimum value
> > * \param[in] max The control maximum value
> > */
> > -ControlInfo::ControlInfo(const ControlValue &min,
> > - const ControlValue &max)
> > +ControlRange::ControlRange(const ControlValue &min,
> > + const ControlValue &max)
> > : min_(min), max_(max)
> > {
> > }
> >
> > /**
> > - * \fn ControlInfo::min()
> > + * \fn ControlRange::min()
> > * \brief Retrieve the minimum value of the control
> > * \return A ControlValue with the minimum value for the control
> > */
> >
> > /**
> > - * \fn ControlInfo::max()
> > + * \fn ControlRange::max()
> > * \brief Retrieve the maximum value of the control
> > * \return A ControlValue with the maximum value for the control
> > */
> >
> > /**
> > - * \brief Provide a string representation of the ControlInfo
> > + * \brief Provide a string representation of the ControlRange
> > */
> > -std::string ControlInfo::toString() const
> > +std::string ControlRange::toString() const
> > {
> > std::stringstream ss;
> >
> > @@ -358,7 +358,7 @@ std::string ControlInfo::toString() const
> >
> > /**
> > * \typedef ControlInfoMap
> > - * \brief A map of ControlId to ControlInfo
> > + * \brief A map of ControlId to ControlRange
> > */
> >
> > /**
> > diff --git a/test/controls/control_info.cpp b/test/controls/control_range.cpp
> > similarity index 75%
> > rename from test/controls/control_info.cpp
> > rename to test/controls/control_range.cpp
> > index 9cf59185e459..06ec3506ee62 100644
> > --- a/test/controls/control_info.cpp
> > +++ b/test/controls/control_range.cpp
> > @@ -2,7 +2,7 @@
> > /*
> > * Copyright (C) 2019, Google Inc.
> > *
> > - * control_info.cpp - ControlInfo tests
> > + * control_range.cpp - ControlRange tests
> > */
> >
> > #include <iostream>
> > @@ -15,16 +15,16 @@
> > using namespace std;
> > using namespace libcamera;
> >
> > -class ControlInfoTest : public Test
> > +class ControlRangeTest : public Test
> > {
> > protected:
> > int run()
> > {
> > /*
> > - * Test information retrieval from a control with no minimum
> > - * and maximum.
> > + * Test information retrieval from a range with no minimum and
> > + * maximum.
> > */
> > - ControlInfo brightness;
> > + ControlRange brightness;
> >
> > if (brightness.min().get<int32_t>() != 0 ||
> > brightness.max().get<int32_t>() != 0) {
> > @@ -36,7 +36,7 @@ protected:
> > * Test information retrieval from a control with a minimum and
> > * a maximum value.
> > */
> > - ControlInfo contrast(10, 200);
> > + ControlRange contrast(10, 200);
> >
> > if (contrast.min().get<int32_t>() != 10 ||
> > contrast.max().get<int32_t>() != 200) {
> > @@ -48,4 +48,4 @@ protected:
> > }
> > };
> >
> > -TEST_REGISTER(ControlInfoTest)
> > +TEST_REGISTER(ControlRangeTest)
> > diff --git a/test/controls/meson.build b/test/controls/meson.build
> > index f4fc7b947dd9..9f0f005a2759 100644
> > --- a/test/controls/meson.build
> > +++ b/test/controls/meson.build
> > @@ -1,6 +1,6 @@
> > control_tests = [
> > - [ 'control_info', 'control_info.cpp' ],
> > [ 'control_list', 'control_list.cpp' ],
> > + [ 'control_range', 'control_range.cpp' ],
> > [ 'control_value', 'control_value.cpp' ],
> > ]
> >
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list