[libcamera-devel] [PATCH v2 1/4] libcamera: converter: a few fixes to ConverterFactoryBase documentation
Andrey Konovalov
andrey.konovalov at linaro.org
Thu Sep 21 19:34:22 CEST 2023
Hi Jacopo,
Thank you for the detailed review!
On 21.09.2023 10:47, Jacopo Mondi wrote:
> Hi Andrey
>
> On Wed, Sep 20, 2023 at 06:19:18PM +0300, Andrey Konovalov via libcamera-devel wrote:
>> Signed-off-by: Andrey Konovalov <andrey.konovalov at linaro.org>
>> ---
>> src/libcamera/converter.cpp | 17 ++++++++++-------
>> 1 file changed, 10 insertions(+), 7 deletions(-)
>>
>> diff --git a/src/libcamera/converter.cpp b/src/libcamera/converter.cpp
>> index fa0f1ec8..466f8421 100644
>> --- a/src/libcamera/converter.cpp
>> +++ b/src/libcamera/converter.cpp
>> @@ -199,16 +199,18 @@ ConverterFactoryBase::ConverterFactoryBase(const std::string name, std::initiali
>>
>> /**
>> * \fn ConverterFactoryBase::compatibles()
>> - * \return The names compatibles
>> + * \return The compatibles
>
> While I agree the "name compatibles" might not be super precise, just
> "the compatibles" doesn't sound any better to me.
>
> The 'compatibles' are passed in as constructor parameters and are
> documented as
>
> * \param[in] compatibles Name aliases of the converter class
>
> I would re-use part of this in
>
> \return The list of compatible name aliases of the converter
Yes, this is much better.
>> */
>>
>> /**
>> - * \brief Create an instance of the converter corresponding to a named factory
>> - * \param[in] media Name of the factory
>> + * \brief Create an instance of the converter corresponding to the media device
>
> The only thing 'media' is used for is to match on its 'driver()' name,
> so the previous documentation wasn't -that- off..
Indeed, the only place where the factory needs the "the whole" MediaDevice is when
it creates an instance of converter (as 'MediaDevice *' needs to be passed to the
Converter constructor).
But still describing an argument of 'MediaDevice *' type as "Name of the factory"
looks rather confusing to me.
>> + * \param[in] media the media device to create the converter for
> ^ The
Right. Will fix that.
>> *
>> * \return A unique pointer to a new instance of the converter subclass
>> - * corresponding to the named factory or one of its alias. Otherwise a null
>> - * pointer if no such factory exists
>> + * corresponding to the media device. The converter is created by the factory
>> + * the name or the alias of which equals to the media device driver name.
>
> s/the name/name ?
No, I meant "the name of which"...
> I have troubles parsing this one, but I'm not a native speaker, so it
> might be me
... but this indeed is hard to get, and this part should be rephrased.
> Did you mean:
>
> * \return A unique pointer to a new instance of the converter
> * subclass corresponding to the media device. The converter is
> * created by matching the factory name or any of its compatible
> * aliases with the media device driver name.
Yes, this sounds much more clear.
>> + * If the media device driver name doesn't match anything a null pointer is
>> + * returned.
>> */
>> std::unique_ptr<Converter> ConverterFactoryBase::create(MediaDevice *media)
>> {
>> @@ -236,10 +238,11 @@ std::unique_ptr<Converter> ConverterFactoryBase::create(MediaDevice *media)
>> }
>>
>> /**
>> - * \brief Add a converter class to the registry
>> + * \brief Add a converter factory to the registry
>> * \param[in] factory Factory to use to construct the converter class
>> *
>> - * The caller is responsible to guarantee the uniqueness of the converter name.
>> + * The caller is responsible to guarantee the uniqueness of the converter
>> + * factory name.
>
> These are ok
Thanks,
Andrey
>> */
>> void ConverterFactoryBase::registerType(ConverterFactoryBase *factory)
>> {
>> --
>> 2.34.1
>>
More information about the libcamera-devel
mailing list