[libcamera-devel,v3,16/19] ipa: ipu3: ipa_context: Fix doxygen references
diff mbox series

Message ID 20211022151218.111966-17-jeanmichel.hautbois@ideasonboard.com
State Changes Requested
Headers show
Series
  • Document IPU3 IPA
Related show

Commit Message

Jean-Michel Hautbois Oct. 22, 2021, 3:12 p.m. UTC
The IPAFrameContext use unamed structures to group items.
Doxygen can not reference the member variables of the container structures
through the variable names, and expects the structure type name. As this is not
given, the structure variables are referenced from the parent structure.

Remove the member name from the annonymous type to allow Doxygen to
match the implementation from the documentation.

Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
---
 src/ipa/ipu3/ipa_context.cpp | 30 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

Comments

Kieran Bingham Oct. 25, 2021, 9:41 p.m. UTC | #1
Quoting Jean-Michel Hautbois (2021-10-22 16:12:15)
> The IPAFrameContext use unamed structures to group items.

/use unamed/uses unnamed/

> Doxygen can not reference the member variables of the container structures
> through the variable names, and expects the structure type name. As this is not
> given, the structure variables are referenced from the parent structure.
> 
> Remove the member name from the annonymous type to allow Doxygen to
> match the implementation from the documentation.
> 
> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> ---
>  src/ipa/ipu3/ipa_context.cpp | 30 +++++++++++++++---------------
>  1 file changed, 15 insertions(+), 15 deletions(-)
> 
> diff --git a/src/ipa/ipu3/ipa_context.cpp b/src/ipa/ipu3/ipa_context.cpp
> index 3e154e60..3c5aa89a 100644
> --- a/src/ipa/ipu3/ipa_context.cpp
> +++ b/src/ipa/ipu3/ipa_context.cpp
> @@ -59,13 +59,13 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPASessionConfiguration::grid
>   * \brief Grid configuration of the IPA
>   *
> - * \var IPASessionConfiguration::grid::bdsGrid
> + * \var IPASessionConfiguration::bdsGrid
>   * \brief Bayer Down Scaler grid plane config used by the kernel
>   *
> - * \var IPASessionConfiguration::grid::bdsOutputSize
> + * \var IPASessionConfiguration::bdsOutputSize
>   * \brief BDS output size configured by the pipeline handler
>   *
> - * \var IPASessionConfiguration::grid::stride
> + * \var IPASessionConfiguration::stride
>   * \brief Number of cells on one line including the ImgU padding
>   */
>  
> @@ -73,16 +73,16 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPASessionConfiguration::agc
>   * \brief AGC parameters configuration of the IPA
>   *
> - * \var IPASessionConfiguration::agc::minShutterSpeed
> + * \var IPASessionConfiguration::minShutterSpeed
>   * \brief Minimum shutter speed supported with the configured sensor
>   *
> - * \var IPASessionConfiguration::grid::maxShutterSpeed
> + * \var IPASessionConfiguration::maxShutterSpeed
>   * \brief Maximum shutter speed supported with the configured sensor
>   *
> - * \var IPASessionConfiguration::grid::minAnalogueGain
> + * \var IPASessionConfiguration::minAnalogueGain
>   * \brief Minimum analogue gain supported with the configured sensor
>   *
> - * \var IPASessionConfiguration::grid::maxAnalogueGain
> + * \var IPASessionConfiguration::maxAnalogueGain
>   * \brief Maximum analogue gain supported with the configured sensor
>   */
>  
> @@ -93,10 +93,10 @@ namespace libcamera::ipa::ipu3 {
>   * The exposure and gain determined are expected to be applied to the sensor
>   * at the earliest opportunity.
>   *
> - * \var IPAFrameContext::agc::exposure
> + * \var IPAFrameContext::exposure
>   * \brief Exposure time expressed as a number of lines
>   *
> - * \var IPAFrameContext::agc::gain
> + * \var IPAFrameContext::gain
>   * \brief Analogue gain multiplier
>   *
>   * The gain should be adapted to the sensor specific gain code before applying.
> @@ -106,16 +106,16 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPAFrameContext::awb
>   * \brief Context for the Automatic White Balance algorithm
>   *
> - * \struct IPAFrameContext::awb::gains
> + * \struct IPAFrameContext::gains
>   * \brief White balance gains
>   *
> - * \var IPAFrameContext::awb::gains::red
> + * \var IPAFrameContext::red
>   * \brief White balance gain for R channel
>   *
> - * \var IPAFrameContext::awb::gains::green
> + * \var IPAFrameContext::green
>   * \brief White balance gain for G channel
>   *
> - * \var IPAFrameContext::awb::gains::blue
> + * \var IPAFrameContext::blue
>   * \brief White balance gain for B channel
>   */
>  
> @@ -123,10 +123,10 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPAFrameContext::toneMapping
>   * \brief Context for ToneMapping and Gamma control
>   *
> - * \var IPAFrameContext::toneMapping::gamma
> + * \var IPAFrameContext::gamma
>   * \brief Gamma value for the LUT
>   *
> - * \var IPAFrameContext::toneMapping::gammaCorrection
> + * \var IPAFrameContext::gammaCorrection
>   * \brief Per-pixel tone mapping implemented as a LUT
>   *
>   * The LUT structure is defined by the IPU3 kernel interface. See
> -- 
> 2.32.0
>
Laurent Pinchart Oct. 25, 2021, 9:41 p.m. UTC | #2
Hi Jean-Michel and Kieran,

Thank you for the patch.

On Fri, Oct 22, 2021 at 05:12:15PM +0200, Jean-Michel Hautbois wrote:

Missing From: line here too.

> The IPAFrameContext use unamed structures to group items.
> Doxygen can not reference the member variables of the container structures
> through the variable names, and expects the structure type name. As this is not
> given, the structure variables are referenced from the parent structure.
> 
> Remove the member name from the annonymous type to allow Doxygen to
> match the implementation from the documentation.

I had tested this, and the output was equally bad :-( It's either a bug
in doxygen, or something we're doing wrong (or both). I'd drop this
patch as it doesn't create a better output and risks creating
collisions, and report a bug to doxygen with a minimal test case
instead.

> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> ---
>  src/ipa/ipu3/ipa_context.cpp | 30 +++++++++++++++---------------
>  1 file changed, 15 insertions(+), 15 deletions(-)
> 
> diff --git a/src/ipa/ipu3/ipa_context.cpp b/src/ipa/ipu3/ipa_context.cpp
> index 3e154e60..3c5aa89a 100644
> --- a/src/ipa/ipu3/ipa_context.cpp
> +++ b/src/ipa/ipu3/ipa_context.cpp
> @@ -59,13 +59,13 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPASessionConfiguration::grid
>   * \brief Grid configuration of the IPA
>   *
> - * \var IPASessionConfiguration::grid::bdsGrid
> + * \var IPASessionConfiguration::bdsGrid
>   * \brief Bayer Down Scaler grid plane config used by the kernel
>   *
> - * \var IPASessionConfiguration::grid::bdsOutputSize
> + * \var IPASessionConfiguration::bdsOutputSize
>   * \brief BDS output size configured by the pipeline handler
>   *
> - * \var IPASessionConfiguration::grid::stride
> + * \var IPASessionConfiguration::stride
>   * \brief Number of cells on one line including the ImgU padding
>   */
>  
> @@ -73,16 +73,16 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPASessionConfiguration::agc
>   * \brief AGC parameters configuration of the IPA
>   *
> - * \var IPASessionConfiguration::agc::minShutterSpeed
> + * \var IPASessionConfiguration::minShutterSpeed
>   * \brief Minimum shutter speed supported with the configured sensor
>   *
> - * \var IPASessionConfiguration::grid::maxShutterSpeed
> + * \var IPASessionConfiguration::maxShutterSpeed
>   * \brief Maximum shutter speed supported with the configured sensor
>   *
> - * \var IPASessionConfiguration::grid::minAnalogueGain
> + * \var IPASessionConfiguration::minAnalogueGain
>   * \brief Minimum analogue gain supported with the configured sensor
>   *
> - * \var IPASessionConfiguration::grid::maxAnalogueGain
> + * \var IPASessionConfiguration::maxAnalogueGain
>   * \brief Maximum analogue gain supported with the configured sensor
>   */
>  
> @@ -93,10 +93,10 @@ namespace libcamera::ipa::ipu3 {
>   * The exposure and gain determined are expected to be applied to the sensor
>   * at the earliest opportunity.
>   *
> - * \var IPAFrameContext::agc::exposure
> + * \var IPAFrameContext::exposure
>   * \brief Exposure time expressed as a number of lines
>   *
> - * \var IPAFrameContext::agc::gain
> + * \var IPAFrameContext::gain
>   * \brief Analogue gain multiplier
>   *
>   * The gain should be adapted to the sensor specific gain code before applying.
> @@ -106,16 +106,16 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPAFrameContext::awb
>   * \brief Context for the Automatic White Balance algorithm
>   *
> - * \struct IPAFrameContext::awb::gains
> + * \struct IPAFrameContext::gains
>   * \brief White balance gains
>   *
> - * \var IPAFrameContext::awb::gains::red
> + * \var IPAFrameContext::red
>   * \brief White balance gain for R channel
>   *
> - * \var IPAFrameContext::awb::gains::green
> + * \var IPAFrameContext::green
>   * \brief White balance gain for G channel
>   *
> - * \var IPAFrameContext::awb::gains::blue
> + * \var IPAFrameContext::blue
>   * \brief White balance gain for B channel
>   */
>  
> @@ -123,10 +123,10 @@ namespace libcamera::ipa::ipu3 {
>   * \struct IPAFrameContext::toneMapping
>   * \brief Context for ToneMapping and Gamma control
>   *
> - * \var IPAFrameContext::toneMapping::gamma
> + * \var IPAFrameContext::gamma
>   * \brief Gamma value for the LUT
>   *
> - * \var IPAFrameContext::toneMapping::gammaCorrection
> + * \var IPAFrameContext::gammaCorrection
>   * \brief Per-pixel tone mapping implemented as a LUT
>   *
>   * The LUT structure is defined by the IPU3 kernel interface. See
Jean-Michel Hautbois Oct. 26, 2021, 6:57 a.m. UTC | #3
Hi Laurent,

On 25/10/2021 23:41, Laurent Pinchart wrote:
> Hi Jean-Michel and Kieran,
> 
> Thank you for the patch.
> 
> On Fri, Oct 22, 2021 at 05:12:15PM +0200, Jean-Michel Hautbois wrote:
> 
> Missing From: line here too.
> 

Indeed...

>> The IPAFrameContext use unamed structures to group items.
>> Doxygen can not reference the member variables of the container structures
>> through the variable names, and expects the structure type name. As this is not
>> given, the structure variables are referenced from the parent structure.
>>
>> Remove the member name from the annonymous type to allow Doxygen to
>> match the implementation from the documentation.
> 
> I had tested this, and the output was equally bad :-( It's either a bug
> in doxygen, or something we're doing wrong (or both). I'd drop this
> patch as it doesn't create a better output and risks creating
> collisions, and report a bug to doxygen with a minimal test case
> instead.

Well, dropping it means we will have some warnings when building:
[9/9] Generating doxygen with a custom command
/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:62: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPASessionConfiguration::grid::bdsGrid

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:65: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPASessionConfiguration::grid::bdsOutputSize

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:68: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPASessionConfiguration::grid::stride

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:76: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPASessionConfiguration::agc::minShutterSpeed

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:79: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPASessionConfiguration::grid::maxShutterSpeed

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:82: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPASessionConfiguration::grid::minAnalogueGain

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:85: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPASessionConfiguration::grid::maxAnalogueGain

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:96: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPAFrameContext::agc::exposure

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:99: warning: no uniquely 
matching class member found for
   libcamera::ipa::ipu3::IPAFrameContext::agc::gain

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:112: warning: no 
uniquely matching class member found for
   gains::red

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:115: warning: no 
uniquely matching class member found for
   gains::green

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:118: warning: no 
uniquely matching class member found for
   gains::blue

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:126: warning: no 
uniquely matching class member found for
   libcamera::ipa::ipu3::IPAFrameContext::toneMapping::gamma

/home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:129: warning: no 
uniquely matching class member found for
   libcamera::ipa::ipu3::IPAFrameContext::toneMapping::gammaCorrection

> 
>> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
>> ---
>>   src/ipa/ipu3/ipa_context.cpp | 30 +++++++++++++++---------------
>>   1 file changed, 15 insertions(+), 15 deletions(-)
>>
>> diff --git a/src/ipa/ipu3/ipa_context.cpp b/src/ipa/ipu3/ipa_context.cpp
>> index 3e154e60..3c5aa89a 100644
>> --- a/src/ipa/ipu3/ipa_context.cpp
>> +++ b/src/ipa/ipu3/ipa_context.cpp
>> @@ -59,13 +59,13 @@ namespace libcamera::ipa::ipu3 {
>>    * \struct IPASessionConfiguration::grid
>>    * \brief Grid configuration of the IPA
>>    *
>> - * \var IPASessionConfiguration::grid::bdsGrid
>> + * \var IPASessionConfiguration::bdsGrid
>>    * \brief Bayer Down Scaler grid plane config used by the kernel
>>    *
>> - * \var IPASessionConfiguration::grid::bdsOutputSize
>> + * \var IPASessionConfiguration::bdsOutputSize
>>    * \brief BDS output size configured by the pipeline handler
>>    *
>> - * \var IPASessionConfiguration::grid::stride
>> + * \var IPASessionConfiguration::stride
>>    * \brief Number of cells on one line including the ImgU padding
>>    */
>>   
>> @@ -73,16 +73,16 @@ namespace libcamera::ipa::ipu3 {
>>    * \struct IPASessionConfiguration::agc
>>    * \brief AGC parameters configuration of the IPA
>>    *
>> - * \var IPASessionConfiguration::agc::minShutterSpeed
>> + * \var IPASessionConfiguration::minShutterSpeed
>>    * \brief Minimum shutter speed supported with the configured sensor
>>    *
>> - * \var IPASessionConfiguration::grid::maxShutterSpeed
>> + * \var IPASessionConfiguration::maxShutterSpeed
>>    * \brief Maximum shutter speed supported with the configured sensor
>>    *
>> - * \var IPASessionConfiguration::grid::minAnalogueGain
>> + * \var IPASessionConfiguration::minAnalogueGain
>>    * \brief Minimum analogue gain supported with the configured sensor
>>    *
>> - * \var IPASessionConfiguration::grid::maxAnalogueGain
>> + * \var IPASessionConfiguration::maxAnalogueGain
>>    * \brief Maximum analogue gain supported with the configured sensor
>>    */
>>   
>> @@ -93,10 +93,10 @@ namespace libcamera::ipa::ipu3 {
>>    * The exposure and gain determined are expected to be applied to the sensor
>>    * at the earliest opportunity.
>>    *
>> - * \var IPAFrameContext::agc::exposure
>> + * \var IPAFrameContext::exposure
>>    * \brief Exposure time expressed as a number of lines
>>    *
>> - * \var IPAFrameContext::agc::gain
>> + * \var IPAFrameContext::gain
>>    * \brief Analogue gain multiplier
>>    *
>>    * The gain should be adapted to the sensor specific gain code before applying.
>> @@ -106,16 +106,16 @@ namespace libcamera::ipa::ipu3 {
>>    * \struct IPAFrameContext::awb
>>    * \brief Context for the Automatic White Balance algorithm
>>    *
>> - * \struct IPAFrameContext::awb::gains
>> + * \struct IPAFrameContext::gains
>>    * \brief White balance gains
>>    *
>> - * \var IPAFrameContext::awb::gains::red
>> + * \var IPAFrameContext::red
>>    * \brief White balance gain for R channel
>>    *
>> - * \var IPAFrameContext::awb::gains::green
>> + * \var IPAFrameContext::green
>>    * \brief White balance gain for G channel
>>    *
>> - * \var IPAFrameContext::awb::gains::blue
>> + * \var IPAFrameContext::blue
>>    * \brief White balance gain for B channel
>>    */
>>   
>> @@ -123,10 +123,10 @@ namespace libcamera::ipa::ipu3 {
>>    * \struct IPAFrameContext::toneMapping
>>    * \brief Context for ToneMapping and Gamma control
>>    *
>> - * \var IPAFrameContext::toneMapping::gamma
>> + * \var IPAFrameContext::gamma
>>    * \brief Gamma value for the LUT
>>    *
>> - * \var IPAFrameContext::toneMapping::gammaCorrection
>> + * \var IPAFrameContext::gammaCorrection
>>    * \brief Per-pixel tone mapping implemented as a LUT
>>    *
>>    * The LUT structure is defined by the IPU3 kernel interface. See
>
Laurent Pinchart Oct. 26, 2021, 9:15 a.m. UTC | #4
Hi Jean-Michel,

On Tue, Oct 26, 2021 at 08:57:50AM +0200, Jean-Michel Hautbois wrote:
> On 25/10/2021 23:41, Laurent Pinchart wrote:
> > Hi Jean-Michel and Kieran,
> > 
> > Thank you for the patch.
> > 
> > On Fri, Oct 22, 2021 at 05:12:15PM +0200, Jean-Michel Hautbois wrote:
> > 
> > Missing From: line here too.
> 
> Indeed...
> 
> >> The IPAFrameContext use unamed structures to group items.
> >> Doxygen can not reference the member variables of the container structures
> >> through the variable names, and expects the structure type name. As this is not
> >> given, the structure variables are referenced from the parent structure.
> >>
> >> Remove the member name from the annonymous type to allow Doxygen to
> >> match the implementation from the documentation.
> > 
> > I had tested this, and the output was equally bad :-( It's either a bug
> > in doxygen, or something we're doing wrong (or both). I'd drop this
> > patch as it doesn't create a better output and risks creating
> > collisions, and report a bug to doxygen with a minimal test case
> > instead.
> 
> Well, dropping it means we will have some warnings when building:
> [9/9] Generating doxygen with a custom command

:-(

I seem to recall that the warning disappeared with the following change:

- * \var IPASessionConfiguration::grid::bdsGrid
+ * \var IPASessionConfiguration::grid.bdsGrid

(or could be IPASessionConfiguration.grid::bdsGrid, I don't remember)

The generated document is still not right though, but it's not worse
than with this patch, and we retain the context. If this works, I'd
prefer that until the issue is fixed in doxygen.

We need to file a bug for doxygen , could you produce a minimal test
case ?

> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:62: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPASessionConfiguration::grid::bdsGrid
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:65: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPASessionConfiguration::grid::bdsOutputSize
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:68: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPASessionConfiguration::grid::stride
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:76: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPASessionConfiguration::agc::minShutterSpeed
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:79: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPASessionConfiguration::grid::maxShutterSpeed
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:82: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPASessionConfiguration::grid::minAnalogueGain
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:85: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPASessionConfiguration::grid::maxAnalogueGain
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:96: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPAFrameContext::agc::exposure
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:99: warning: no uniquely 
> matching class member found for
>    libcamera::ipa::ipu3::IPAFrameContext::agc::gain
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:112: warning: no 
> uniquely matching class member found for
>    gains::red
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:115: warning: no 
> uniquely matching class member found for
>    gains::green
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:118: warning: no 
> uniquely matching class member found for
>    gains::blue
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:126: warning: no 
> uniquely matching class member found for
>    libcamera::ipa::ipu3::IPAFrameContext::toneMapping::gamma
> 
> /home/jm/libcamera/src/ipa/ipu3/ipa_context.cpp:129: warning: no 
> uniquely matching class member found for
>    libcamera::ipa::ipu3::IPAFrameContext::toneMapping::gammaCorrection
> 
> >> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> >> ---
> >>   src/ipa/ipu3/ipa_context.cpp | 30 +++++++++++++++---------------
> >>   1 file changed, 15 insertions(+), 15 deletions(-)
> >>
> >> diff --git a/src/ipa/ipu3/ipa_context.cpp b/src/ipa/ipu3/ipa_context.cpp
> >> index 3e154e60..3c5aa89a 100644
> >> --- a/src/ipa/ipu3/ipa_context.cpp
> >> +++ b/src/ipa/ipu3/ipa_context.cpp
> >> @@ -59,13 +59,13 @@ namespace libcamera::ipa::ipu3 {
> >>    * \struct IPASessionConfiguration::grid
> >>    * \brief Grid configuration of the IPA
> >>    *
> >> - * \var IPASessionConfiguration::grid::bdsGrid
> >> + * \var IPASessionConfiguration::bdsGrid
> >>    * \brief Bayer Down Scaler grid plane config used by the kernel
> >>    *
> >> - * \var IPASessionConfiguration::grid::bdsOutputSize
> >> + * \var IPASessionConfiguration::bdsOutputSize
> >>    * \brief BDS output size configured by the pipeline handler
> >>    *
> >> - * \var IPASessionConfiguration::grid::stride
> >> + * \var IPASessionConfiguration::stride
> >>    * \brief Number of cells on one line including the ImgU padding
> >>    */
> >>   
> >> @@ -73,16 +73,16 @@ namespace libcamera::ipa::ipu3 {
> >>    * \struct IPASessionConfiguration::agc
> >>    * \brief AGC parameters configuration of the IPA
> >>    *
> >> - * \var IPASessionConfiguration::agc::minShutterSpeed
> >> + * \var IPASessionConfiguration::minShutterSpeed
> >>    * \brief Minimum shutter speed supported with the configured sensor
> >>    *
> >> - * \var IPASessionConfiguration::grid::maxShutterSpeed
> >> + * \var IPASessionConfiguration::maxShutterSpeed
> >>    * \brief Maximum shutter speed supported with the configured sensor
> >>    *
> >> - * \var IPASessionConfiguration::grid::minAnalogueGain
> >> + * \var IPASessionConfiguration::minAnalogueGain
> >>    * \brief Minimum analogue gain supported with the configured sensor
> >>    *
> >> - * \var IPASessionConfiguration::grid::maxAnalogueGain
> >> + * \var IPASessionConfiguration::maxAnalogueGain
> >>    * \brief Maximum analogue gain supported with the configured sensor
> >>    */
> >>   
> >> @@ -93,10 +93,10 @@ namespace libcamera::ipa::ipu3 {
> >>    * The exposure and gain determined are expected to be applied to the sensor
> >>    * at the earliest opportunity.
> >>    *
> >> - * \var IPAFrameContext::agc::exposure
> >> + * \var IPAFrameContext::exposure
> >>    * \brief Exposure time expressed as a number of lines
> >>    *
> >> - * \var IPAFrameContext::agc::gain
> >> + * \var IPAFrameContext::gain
> >>    * \brief Analogue gain multiplier
> >>    *
> >>    * The gain should be adapted to the sensor specific gain code before applying.
> >> @@ -106,16 +106,16 @@ namespace libcamera::ipa::ipu3 {
> >>    * \struct IPAFrameContext::awb
> >>    * \brief Context for the Automatic White Balance algorithm
> >>    *
> >> - * \struct IPAFrameContext::awb::gains
> >> + * \struct IPAFrameContext::gains
> >>    * \brief White balance gains
> >>    *
> >> - * \var IPAFrameContext::awb::gains::red
> >> + * \var IPAFrameContext::red
> >>    * \brief White balance gain for R channel
> >>    *
> >> - * \var IPAFrameContext::awb::gains::green
> >> + * \var IPAFrameContext::green
> >>    * \brief White balance gain for G channel
> >>    *
> >> - * \var IPAFrameContext::awb::gains::blue
> >> + * \var IPAFrameContext::blue
> >>    * \brief White balance gain for B channel
> >>    */
> >>   
> >> @@ -123,10 +123,10 @@ namespace libcamera::ipa::ipu3 {
> >>    * \struct IPAFrameContext::toneMapping
> >>    * \brief Context for ToneMapping and Gamma control
> >>    *
> >> - * \var IPAFrameContext::toneMapping::gamma
> >> + * \var IPAFrameContext::gamma
> >>    * \brief Gamma value for the LUT
> >>    *
> >> - * \var IPAFrameContext::toneMapping::gammaCorrection
> >> + * \var IPAFrameContext::gammaCorrection
> >>    * \brief Per-pixel tone mapping implemented as a LUT
> >>    *
> >>    * The LUT structure is defined by the IPU3 kernel interface. See

Patch
diff mbox series

diff --git a/src/ipa/ipu3/ipa_context.cpp b/src/ipa/ipu3/ipa_context.cpp
index 3e154e60..3c5aa89a 100644
--- a/src/ipa/ipu3/ipa_context.cpp
+++ b/src/ipa/ipu3/ipa_context.cpp
@@ -59,13 +59,13 @@  namespace libcamera::ipa::ipu3 {
  * \struct IPASessionConfiguration::grid
  * \brief Grid configuration of the IPA
  *
- * \var IPASessionConfiguration::grid::bdsGrid
+ * \var IPASessionConfiguration::bdsGrid
  * \brief Bayer Down Scaler grid plane config used by the kernel
  *
- * \var IPASessionConfiguration::grid::bdsOutputSize
+ * \var IPASessionConfiguration::bdsOutputSize
  * \brief BDS output size configured by the pipeline handler
  *
- * \var IPASessionConfiguration::grid::stride
+ * \var IPASessionConfiguration::stride
  * \brief Number of cells on one line including the ImgU padding
  */
 
@@ -73,16 +73,16 @@  namespace libcamera::ipa::ipu3 {
  * \struct IPASessionConfiguration::agc
  * \brief AGC parameters configuration of the IPA
  *
- * \var IPASessionConfiguration::agc::minShutterSpeed
+ * \var IPASessionConfiguration::minShutterSpeed
  * \brief Minimum shutter speed supported with the configured sensor
  *
- * \var IPASessionConfiguration::grid::maxShutterSpeed
+ * \var IPASessionConfiguration::maxShutterSpeed
  * \brief Maximum shutter speed supported with the configured sensor
  *
- * \var IPASessionConfiguration::grid::minAnalogueGain
+ * \var IPASessionConfiguration::minAnalogueGain
  * \brief Minimum analogue gain supported with the configured sensor
  *
- * \var IPASessionConfiguration::grid::maxAnalogueGain
+ * \var IPASessionConfiguration::maxAnalogueGain
  * \brief Maximum analogue gain supported with the configured sensor
  */
 
@@ -93,10 +93,10 @@  namespace libcamera::ipa::ipu3 {
  * The exposure and gain determined are expected to be applied to the sensor
  * at the earliest opportunity.
  *
- * \var IPAFrameContext::agc::exposure
+ * \var IPAFrameContext::exposure
  * \brief Exposure time expressed as a number of lines
  *
- * \var IPAFrameContext::agc::gain
+ * \var IPAFrameContext::gain
  * \brief Analogue gain multiplier
  *
  * The gain should be adapted to the sensor specific gain code before applying.
@@ -106,16 +106,16 @@  namespace libcamera::ipa::ipu3 {
  * \struct IPAFrameContext::awb
  * \brief Context for the Automatic White Balance algorithm
  *
- * \struct IPAFrameContext::awb::gains
+ * \struct IPAFrameContext::gains
  * \brief White balance gains
  *
- * \var IPAFrameContext::awb::gains::red
+ * \var IPAFrameContext::red
  * \brief White balance gain for R channel
  *
- * \var IPAFrameContext::awb::gains::green
+ * \var IPAFrameContext::green
  * \brief White balance gain for G channel
  *
- * \var IPAFrameContext::awb::gains::blue
+ * \var IPAFrameContext::blue
  * \brief White balance gain for B channel
  */
 
@@ -123,10 +123,10 @@  namespace libcamera::ipa::ipu3 {
  * \struct IPAFrameContext::toneMapping
  * \brief Context for ToneMapping and Gamma control
  *
- * \var IPAFrameContext::toneMapping::gamma
+ * \var IPAFrameContext::gamma
  * \brief Gamma value for the LUT
  *
- * \var IPAFrameContext::toneMapping::gammaCorrection
+ * \var IPAFrameContext::gammaCorrection
  * \brief Per-pixel tone mapping implemented as a LUT
  *
  * The LUT structure is defined by the IPU3 kernel interface. See