[libcamera-devel,1/6] ipa: raspberrypi: Non-functional formatting fixes to md_parser.hpp
diff mbox series

Message ID 20210614095340.3051816-2-naush@raspberrypi.com
State Superseded
Headers show
Series
  • Raspberry Pi: Metadata parsing improvements
Related show

Commit Message

Naushir Patuck June 14, 2021, 9:53 a.m. UTC
Adjust source formatting to closer match libcamera guidelines:

- Remove unused header files.
- Switch to C style comments.
- Add whitespace for readability.

There are no functional changes in this commit.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
---
 src/ipa/raspberrypi/md_parser.hpp | 144 ++++++++++++++++++------------
 1 file changed, 85 insertions(+), 59 deletions(-)

Comments

David Plowman June 14, 2021, 4:26 p.m. UTC | #1
Hi Naush

Thanks for tidying this up!

On Mon, 14 Jun 2021 at 10:53, Naushir Patuck <naush@raspberrypi.com> wrote:
>
> Adjust source formatting to closer match libcamera guidelines:
>
> - Remove unused header files.
> - Switch to C style comments.
> - Add whitespace for readability.
>
> There are no functional changes in this commit.
>
> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> ---
>  src/ipa/raspberrypi/md_parser.hpp | 144 ++++++++++++++++++------------
>  1 file changed, 85 insertions(+), 59 deletions(-)
>
> diff --git a/src/ipa/raspberrypi/md_parser.hpp b/src/ipa/raspberrypi/md_parser.hpp
> index 8e22b1d7ca43..86e0577614e0 100644
> --- a/src/ipa/raspberrypi/md_parser.hpp
> +++ b/src/ipa/raspberrypi/md_parser.hpp
> @@ -6,75 +6,94 @@
>   */
>  #pragma once
>
> -#include <stdint.h>
> -
>  #include <libcamera/span.h>
>
>  /* Camera metadata parser class. Usage as shown below.
> -
> -Setup:
> -
> -Usually the metadata parser will be made as part of the CamHelper class so
> -application code doesn't have to worry which to kind to instantiate. But for
> -the sake of example let's suppose we're parsing imx219 metadata.
> -
> -MdParser *parser = new MdParserImx219();  // for example
> -parser->SetBitsPerPixel(bpp);
> -parser->SetLineLengthBytes(pitch);
> -parser->SetNumLines(2);
> -
> -Note 1: if you don't know how many lines there are, the size of the input
> -buffer is used as a limit instead.
> -
> -Note 2: if you don't know the line length, you can leave the line length unset
> -(or set to zero) and the parser will hunt for the line start instead.
> -
> -Then on every frame:
> -
> -if (parser->Parse(buffer) != MdParser::OK)
> -    much badness;
> -unsigned int exposure_lines, gain_code
> -if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
> -    exposure was not found;
> -if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
> -    gain code was not found;
> -
> -(Note that the CamHelper class converts to/from exposure lines and time,
> -and gain_code / actual gain.)
> -
> -If you suspect your embedded data may have changed its layout, change any line
> -lengths, number of lines, bits per pixel etc. that are different, and
> -then:
> -
> -parser->Reset();
> -
> -before calling Parse again. */
> + *
> + * Setup:
> + *
> + * Usually the metadata parser will be made as part of the CamHelper class so
> + * application code doesn't have to worry which to kind to instantiate. But for

s/which to kind/which kind/
I suppose we could have done a drive-by typo fix here! But otherwise
all good, so:

Reviewed-by: David Plowman <david.plowman@raspberrypi.com>

Thanks
David

> + * the sake of example let's suppose we're parsing imx219 metadata.
> + *
> + * MdParser *parser = new MdParserImx219();  // for example
> + * parser->SetBitsPerPixel(bpp);
> + * parser->SetLineLengthBytes(pitch);
> + * parser->SetNumLines(2);
> + *
> + * Note 1: if you don't know how many lines there are, the size of the input
> + * buffer is used as a limit instead.
> + *
> + * Note 2: if you don't know the line length, you can leave the line length unset
> + * (or set to zero) and the parser will hunt for the line start instead.
> + *
> + * Then on every frame:
> + *
> + * if (parser->Parse(buffer) != MdParser::OK)
> + *     much badness;
> + * unsigned int exposure_lines, gain_code
> + * if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
> + *     exposure was not found;
> + * if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
> + *     gain code was not found;
> + *
> + * (Note that the CamHelper class converts to/from exposure lines and time,
> + * and gain_code / actual gain.)
> + *
> + * If you suspect your embedded data may have changed its layout, change any line
> + * lengths, number of lines, bits per pixel etc. that are different, and
> + * then:
> + *
> + * parser->Reset();
> + *
> + * before calling Parse again.
> + */
>
>  namespace RPiController {
>
> -// Abstract base class from which other metadata parsers are derived.
> +/* Abstract base class from which other metadata parsers are derived. */
>
>  class MdParser
>  {
>  public:
> -       // Parser status codes:
> -       // OK       - success
> -       // NOTFOUND - value such as exposure or gain was not found
> -       // ERROR    - all other errors
> +       /*
> +        * Parser status codes:
> +        * OK       - success
> +        * NOTFOUND - value such as exposure or gain was not found
> +        * ERROR    - all other errors
> +        */
>         enum Status {
>                 OK = 0,
>                 NOTFOUND = 1,
>                 ERROR = 2
>         };
> -       MdParser() : reset_(true) {}
> +
> +       MdParser() : reset_(true)
> +       {
> +       }
> +
>         virtual ~MdParser() = default;
> -       void Reset() { reset_ = true; }
> -       void SetBitsPerPixel(int bpp) { bits_per_pixel_ = bpp; }
> -       void SetNumLines(unsigned int num_lines) { num_lines_ = num_lines; }
> +
> +       void Reset()
> +       {
> +               reset_ = true;
> +       }
> +
> +       void SetBitsPerPixel(int bpp)
> +       {
> +               bits_per_pixel_ = bpp;
> +       }
> +
> +       void SetNumLines(unsigned int num_lines)
> +       {
> +               num_lines_ = num_lines;
> +       }
> +
>         void SetLineLengthBytes(unsigned int num_bytes)
>         {
>                 line_length_bytes_ = num_bytes;
>         }
> +
>         virtual Status Parse(libcamera::Span<const uint8_t> buffer) = 0;
>         virtual Status GetExposureLines(unsigned int &lines) = 0;
>         virtual Status GetGainCode(unsigned int &gain_code) = 0;
> @@ -87,22 +106,28 @@ protected:
>         unsigned int buffer_size_bytes_;
>  };
>
> -// This isn't a full implementation of a metadata parser for SMIA sensors,
> -// however, it does provide the findRegs method which will prove useful and make
> -// it easier to implement parsers for other SMIA-like sensors (see
> -// md_parser_imx219.cpp for an example).
> +/*
> + * This isn't a full implementation of a metadata parser for SMIA sensors,
> + * however, it does provide the findRegs method which will prove useful and make
> + * it easier to implement parsers for other SMIA-like sensors (see
> + * md_parser_imx219.cpp for an example).
> + */
>
>  class MdParserSmia : public MdParser
>  {
>  public:
> -       MdParserSmia() : MdParser() {}
> +       MdParserSmia() : MdParser()
> +       {
> +       }
>
>  protected:
> -       // Note that error codes > 0 are regarded as non-fatal; codes < 0
> -       // indicate a bad data buffer. Status codes are:
> -       // PARSE_OK     - found all registers, much happiness
> -       // MISSING_REGS - some registers found; should this be a hard error?
> -       // The remaining codes are all hard errors.
> +       /*
> +        * Note that error codes > 0 are regarded as non-fatal; codes < 0
> +        * indicate a bad data buffer. Status codes are:
> +        * PARSE_OK     - found all registers, much happiness
> +        * MISSING_REGS - some registers found; should this be a hard error?
> +        * The remaining codes are all hard errors.
> +        */
>         enum ParseStatus {
>                 PARSE_OK      =  0,
>                 MISSING_REGS  =  1,
> @@ -112,6 +137,7 @@ protected:
>                 BAD_LINE_END  = -4,
>                 BAD_PADDING   = -5
>         };
> +
>         ParseStatus findRegs(libcamera::Span<const uint8_t> buffer, uint32_t regs[],
>                              int offsets[], unsigned int num_regs);
>  };
> --
> 2.25.1
>
Laurent Pinchart June 15, 2021, 2:35 a.m. UTC | #2
On Mon, Jun 14, 2021 at 10:53:35AM +0100, Naushir Patuck wrote:
> Adjust source formatting to closer match libcamera guidelines:
> 
> - Remove unused header files.
> - Switch to C style comments.
> - Add whitespace for readability.
> 
> There are no functional changes in this commit.
> 
> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> ---
>  src/ipa/raspberrypi/md_parser.hpp | 144 ++++++++++++++++++------------
>  1 file changed, 85 insertions(+), 59 deletions(-)
> 
> diff --git a/src/ipa/raspberrypi/md_parser.hpp b/src/ipa/raspberrypi/md_parser.hpp
> index 8e22b1d7ca43..86e0577614e0 100644
> --- a/src/ipa/raspberrypi/md_parser.hpp
> +++ b/src/ipa/raspberrypi/md_parser.hpp
> @@ -6,75 +6,94 @@
>   */
>  #pragma once
>  
> -#include <stdint.h>
> -
>  #include <libcamera/span.h>
>  
>  /* Camera metadata parser class. Usage as shown below.

This should be

/*
 * Camera metadata parser class. Usage as shown below.

I'll fix when applying.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> -
> -Setup:
> -
> -Usually the metadata parser will be made as part of the CamHelper class so
> -application code doesn't have to worry which to kind to instantiate. But for
> -the sake of example let's suppose we're parsing imx219 metadata.
> -
> -MdParser *parser = new MdParserImx219();  // for example
> -parser->SetBitsPerPixel(bpp);
> -parser->SetLineLengthBytes(pitch);
> -parser->SetNumLines(2);
> -
> -Note 1: if you don't know how many lines there are, the size of the input
> -buffer is used as a limit instead.
> -
> -Note 2: if you don't know the line length, you can leave the line length unset
> -(or set to zero) and the parser will hunt for the line start instead.
> -
> -Then on every frame:
> -
> -if (parser->Parse(buffer) != MdParser::OK)
> -    much badness;
> -unsigned int exposure_lines, gain_code
> -if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
> -    exposure was not found;
> -if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
> -    gain code was not found;
> -
> -(Note that the CamHelper class converts to/from exposure lines and time,
> -and gain_code / actual gain.)
> -
> -If you suspect your embedded data may have changed its layout, change any line
> -lengths, number of lines, bits per pixel etc. that are different, and
> -then:
> -
> -parser->Reset();
> -
> -before calling Parse again. */
> + *
> + * Setup:
> + *
> + * Usually the metadata parser will be made as part of the CamHelper class so
> + * application code doesn't have to worry which to kind to instantiate. But for
> + * the sake of example let's suppose we're parsing imx219 metadata.
> + *
> + * MdParser *parser = new MdParserImx219();  // for example
> + * parser->SetBitsPerPixel(bpp);
> + * parser->SetLineLengthBytes(pitch);
> + * parser->SetNumLines(2);
> + *
> + * Note 1: if you don't know how many lines there are, the size of the input
> + * buffer is used as a limit instead.
> + *
> + * Note 2: if you don't know the line length, you can leave the line length unset
> + * (or set to zero) and the parser will hunt for the line start instead.
> + *
> + * Then on every frame:
> + *
> + * if (parser->Parse(buffer) != MdParser::OK)
> + *     much badness;
> + * unsigned int exposure_lines, gain_code
> + * if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
> + *     exposure was not found;
> + * if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
> + *     gain code was not found;
> + *
> + * (Note that the CamHelper class converts to/from exposure lines and time,
> + * and gain_code / actual gain.)
> + *
> + * If you suspect your embedded data may have changed its layout, change any line
> + * lengths, number of lines, bits per pixel etc. that are different, and
> + * then:
> + *
> + * parser->Reset();
> + *
> + * before calling Parse again.
> + */
>  
>  namespace RPiController {
>  
> -// Abstract base class from which other metadata parsers are derived.
> +/* Abstract base class from which other metadata parsers are derived. */
>  
>  class MdParser
>  {
>  public:
> -	// Parser status codes:
> -	// OK       - success
> -	// NOTFOUND - value such as exposure or gain was not found
> -	// ERROR    - all other errors
> +	/*
> +	 * Parser status codes:
> +	 * OK       - success
> +	 * NOTFOUND - value such as exposure or gain was not found
> +	 * ERROR    - all other errors
> +	 */
>  	enum Status {
>  		OK = 0,
>  		NOTFOUND = 1,
>  		ERROR = 2
>  	};
> -	MdParser() : reset_(true) {}
> +
> +	MdParser() : reset_(true)
> +	{
> +	}
> +
>  	virtual ~MdParser() = default;
> -	void Reset() { reset_ = true; }
> -	void SetBitsPerPixel(int bpp) { bits_per_pixel_ = bpp; }
> -	void SetNumLines(unsigned int num_lines) { num_lines_ = num_lines; }
> +
> +	void Reset()
> +	{
> +		reset_ = true;
> +	}
> +
> +	void SetBitsPerPixel(int bpp)
> +	{
> +		bits_per_pixel_ = bpp;
> +	}
> +
> +	void SetNumLines(unsigned int num_lines)
> +	{
> +		num_lines_ = num_lines;
> +	}
> +
>  	void SetLineLengthBytes(unsigned int num_bytes)
>  	{
>  		line_length_bytes_ = num_bytes;
>  	}
> +
>  	virtual Status Parse(libcamera::Span<const uint8_t> buffer) = 0;
>  	virtual Status GetExposureLines(unsigned int &lines) = 0;
>  	virtual Status GetGainCode(unsigned int &gain_code) = 0;
> @@ -87,22 +106,28 @@ protected:
>  	unsigned int buffer_size_bytes_;
>  };
>  
> -// This isn't a full implementation of a metadata parser for SMIA sensors,
> -// however, it does provide the findRegs method which will prove useful and make
> -// it easier to implement parsers for other SMIA-like sensors (see
> -// md_parser_imx219.cpp for an example).
> +/*
> + * This isn't a full implementation of a metadata parser for SMIA sensors,
> + * however, it does provide the findRegs method which will prove useful and make
> + * it easier to implement parsers for other SMIA-like sensors (see
> + * md_parser_imx219.cpp for an example).
> + */
>  
>  class MdParserSmia : public MdParser
>  {
>  public:
> -	MdParserSmia() : MdParser() {}
> +	MdParserSmia() : MdParser()
> +	{
> +	}
>  
>  protected:
> -	// Note that error codes > 0 are regarded as non-fatal; codes < 0
> -	// indicate a bad data buffer. Status codes are:
> -	// PARSE_OK     - found all registers, much happiness
> -	// MISSING_REGS - some registers found; should this be a hard error?
> -	// The remaining codes are all hard errors.
> +	/*
> +	 * Note that error codes > 0 are regarded as non-fatal; codes < 0
> +	 * indicate a bad data buffer. Status codes are:
> +	 * PARSE_OK     - found all registers, much happiness
> +	 * MISSING_REGS - some registers found; should this be a hard error?
> +	 * The remaining codes are all hard errors.
> +	 */
>  	enum ParseStatus {
>  		PARSE_OK      =  0,
>  		MISSING_REGS  =  1,
> @@ -112,6 +137,7 @@ protected:
>  		BAD_LINE_END  = -4,
>  		BAD_PADDING   = -5
>  	};
> +
>  	ParseStatus findRegs(libcamera::Span<const uint8_t> buffer, uint32_t regs[],
>  			     int offsets[], unsigned int num_regs);
>  };
Laurent Pinchart June 15, 2021, 2:36 a.m. UTC | #3
On Tue, Jun 15, 2021 at 05:35:42AM +0300, Laurent Pinchart wrote:
> On Mon, Jun 14, 2021 at 10:53:35AM +0100, Naushir Patuck wrote:
> > Adjust source formatting to closer match libcamera guidelines:
> > 
> > - Remove unused header files.
> > - Switch to C style comments.
> > - Add whitespace for readability.
> > 
> > There are no functional changes in this commit.
> > 
> > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> > ---
> >  src/ipa/raspberrypi/md_parser.hpp | 144 ++++++++++++++++++------------
> >  1 file changed, 85 insertions(+), 59 deletions(-)
> > 
> > diff --git a/src/ipa/raspberrypi/md_parser.hpp b/src/ipa/raspberrypi/md_parser.hpp
> > index 8e22b1d7ca43..86e0577614e0 100644
> > --- a/src/ipa/raspberrypi/md_parser.hpp
> > +++ b/src/ipa/raspberrypi/md_parser.hpp
> > @@ -6,75 +6,94 @@
> >   */
> >  #pragma once
> >  
> > -#include <stdint.h>
> > -

Oh, and this should be kept, as the header uses uint*_t types.

> >  #include <libcamera/span.h>
> >  
> >  /* Camera metadata parser class. Usage as shown below.
> 
> This should be
> 
> /*
>  * Camera metadata parser class. Usage as shown below.
> 
> I'll fix when applying.
> 
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> 
> > -
> > -Setup:
> > -
> > -Usually the metadata parser will be made as part of the CamHelper class so
> > -application code doesn't have to worry which to kind to instantiate. But for
> > -the sake of example let's suppose we're parsing imx219 metadata.
> > -
> > -MdParser *parser = new MdParserImx219();  // for example
> > -parser->SetBitsPerPixel(bpp);
> > -parser->SetLineLengthBytes(pitch);
> > -parser->SetNumLines(2);
> > -
> > -Note 1: if you don't know how many lines there are, the size of the input
> > -buffer is used as a limit instead.
> > -
> > -Note 2: if you don't know the line length, you can leave the line length unset
> > -(or set to zero) and the parser will hunt for the line start instead.
> > -
> > -Then on every frame:
> > -
> > -if (parser->Parse(buffer) != MdParser::OK)
> > -    much badness;
> > -unsigned int exposure_lines, gain_code
> > -if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
> > -    exposure was not found;
> > -if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
> > -    gain code was not found;
> > -
> > -(Note that the CamHelper class converts to/from exposure lines and time,
> > -and gain_code / actual gain.)
> > -
> > -If you suspect your embedded data may have changed its layout, change any line
> > -lengths, number of lines, bits per pixel etc. that are different, and
> > -then:
> > -
> > -parser->Reset();
> > -
> > -before calling Parse again. */
> > + *
> > + * Setup:
> > + *
> > + * Usually the metadata parser will be made as part of the CamHelper class so
> > + * application code doesn't have to worry which to kind to instantiate. But for
> > + * the sake of example let's suppose we're parsing imx219 metadata.
> > + *
> > + * MdParser *parser = new MdParserImx219();  // for example
> > + * parser->SetBitsPerPixel(bpp);
> > + * parser->SetLineLengthBytes(pitch);
> > + * parser->SetNumLines(2);
> > + *
> > + * Note 1: if you don't know how many lines there are, the size of the input
> > + * buffer is used as a limit instead.
> > + *
> > + * Note 2: if you don't know the line length, you can leave the line length unset
> > + * (or set to zero) and the parser will hunt for the line start instead.
> > + *
> > + * Then on every frame:
> > + *
> > + * if (parser->Parse(buffer) != MdParser::OK)
> > + *     much badness;
> > + * unsigned int exposure_lines, gain_code
> > + * if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
> > + *     exposure was not found;
> > + * if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
> > + *     gain code was not found;
> > + *
> > + * (Note that the CamHelper class converts to/from exposure lines and time,
> > + * and gain_code / actual gain.)
> > + *
> > + * If you suspect your embedded data may have changed its layout, change any line
> > + * lengths, number of lines, bits per pixel etc. that are different, and
> > + * then:
> > + *
> > + * parser->Reset();
> > + *
> > + * before calling Parse again.
> > + */
> >  
> >  namespace RPiController {
> >  
> > -// Abstract base class from which other metadata parsers are derived.
> > +/* Abstract base class from which other metadata parsers are derived. */
> >  
> >  class MdParser
> >  {
> >  public:
> > -	// Parser status codes:
> > -	// OK       - success
> > -	// NOTFOUND - value such as exposure or gain was not found
> > -	// ERROR    - all other errors
> > +	/*
> > +	 * Parser status codes:
> > +	 * OK       - success
> > +	 * NOTFOUND - value such as exposure or gain was not found
> > +	 * ERROR    - all other errors
> > +	 */
> >  	enum Status {
> >  		OK = 0,
> >  		NOTFOUND = 1,
> >  		ERROR = 2
> >  	};
> > -	MdParser() : reset_(true) {}
> > +
> > +	MdParser() : reset_(true)
> > +	{
> > +	}
> > +
> >  	virtual ~MdParser() = default;
> > -	void Reset() { reset_ = true; }
> > -	void SetBitsPerPixel(int bpp) { bits_per_pixel_ = bpp; }
> > -	void SetNumLines(unsigned int num_lines) { num_lines_ = num_lines; }
> > +
> > +	void Reset()
> > +	{
> > +		reset_ = true;
> > +	}
> > +
> > +	void SetBitsPerPixel(int bpp)
> > +	{
> > +		bits_per_pixel_ = bpp;
> > +	}
> > +
> > +	void SetNumLines(unsigned int num_lines)
> > +	{
> > +		num_lines_ = num_lines;
> > +	}
> > +
> >  	void SetLineLengthBytes(unsigned int num_bytes)
> >  	{
> >  		line_length_bytes_ = num_bytes;
> >  	}
> > +
> >  	virtual Status Parse(libcamera::Span<const uint8_t> buffer) = 0;
> >  	virtual Status GetExposureLines(unsigned int &lines) = 0;
> >  	virtual Status GetGainCode(unsigned int &gain_code) = 0;
> > @@ -87,22 +106,28 @@ protected:
> >  	unsigned int buffer_size_bytes_;
> >  };
> >  
> > -// This isn't a full implementation of a metadata parser for SMIA sensors,
> > -// however, it does provide the findRegs method which will prove useful and make
> > -// it easier to implement parsers for other SMIA-like sensors (see
> > -// md_parser_imx219.cpp for an example).
> > +/*
> > + * This isn't a full implementation of a metadata parser for SMIA sensors,
> > + * however, it does provide the findRegs method which will prove useful and make
> > + * it easier to implement parsers for other SMIA-like sensors (see
> > + * md_parser_imx219.cpp for an example).
> > + */
> >  
> >  class MdParserSmia : public MdParser
> >  {
> >  public:
> > -	MdParserSmia() : MdParser() {}
> > +	MdParserSmia() : MdParser()
> > +	{
> > +	}
> >  
> >  protected:
> > -	// Note that error codes > 0 are regarded as non-fatal; codes < 0
> > -	// indicate a bad data buffer. Status codes are:
> > -	// PARSE_OK     - found all registers, much happiness
> > -	// MISSING_REGS - some registers found; should this be a hard error?
> > -	// The remaining codes are all hard errors.
> > +	/*
> > +	 * Note that error codes > 0 are regarded as non-fatal; codes < 0
> > +	 * indicate a bad data buffer. Status codes are:
> > +	 * PARSE_OK     - found all registers, much happiness
> > +	 * MISSING_REGS - some registers found; should this be a hard error?
> > +	 * The remaining codes are all hard errors.
> > +	 */
> >  	enum ParseStatus {
> >  		PARSE_OK      =  0,
> >  		MISSING_REGS  =  1,
> > @@ -112,6 +137,7 @@ protected:
> >  		BAD_LINE_END  = -4,
> >  		BAD_PADDING   = -5
> >  	};
> > +
> >  	ParseStatus findRegs(libcamera::Span<const uint8_t> buffer, uint32_t regs[],
> >  			     int offsets[], unsigned int num_regs);
> >  };

Patch
diff mbox series

diff --git a/src/ipa/raspberrypi/md_parser.hpp b/src/ipa/raspberrypi/md_parser.hpp
index 8e22b1d7ca43..86e0577614e0 100644
--- a/src/ipa/raspberrypi/md_parser.hpp
+++ b/src/ipa/raspberrypi/md_parser.hpp
@@ -6,75 +6,94 @@ 
  */
 #pragma once
 
-#include <stdint.h>
-
 #include <libcamera/span.h>
 
 /* Camera metadata parser class. Usage as shown below.
-
-Setup:
-
-Usually the metadata parser will be made as part of the CamHelper class so
-application code doesn't have to worry which to kind to instantiate. But for
-the sake of example let's suppose we're parsing imx219 metadata.
-
-MdParser *parser = new MdParserImx219();  // for example
-parser->SetBitsPerPixel(bpp);
-parser->SetLineLengthBytes(pitch);
-parser->SetNumLines(2);
-
-Note 1: if you don't know how many lines there are, the size of the input
-buffer is used as a limit instead.
-
-Note 2: if you don't know the line length, you can leave the line length unset
-(or set to zero) and the parser will hunt for the line start instead.
-
-Then on every frame:
-
-if (parser->Parse(buffer) != MdParser::OK)
-    much badness;
-unsigned int exposure_lines, gain_code
-if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
-    exposure was not found;
-if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
-    gain code was not found;
-
-(Note that the CamHelper class converts to/from exposure lines and time,
-and gain_code / actual gain.)
-
-If you suspect your embedded data may have changed its layout, change any line
-lengths, number of lines, bits per pixel etc. that are different, and
-then:
-
-parser->Reset();
-
-before calling Parse again. */
+ *
+ * Setup:
+ *
+ * Usually the metadata parser will be made as part of the CamHelper class so
+ * application code doesn't have to worry which to kind to instantiate. But for
+ * the sake of example let's suppose we're parsing imx219 metadata.
+ *
+ * MdParser *parser = new MdParserImx219();  // for example
+ * parser->SetBitsPerPixel(bpp);
+ * parser->SetLineLengthBytes(pitch);
+ * parser->SetNumLines(2);
+ *
+ * Note 1: if you don't know how many lines there are, the size of the input
+ * buffer is used as a limit instead.
+ *
+ * Note 2: if you don't know the line length, you can leave the line length unset
+ * (or set to zero) and the parser will hunt for the line start instead.
+ *
+ * Then on every frame:
+ *
+ * if (parser->Parse(buffer) != MdParser::OK)
+ *     much badness;
+ * unsigned int exposure_lines, gain_code
+ * if (parser->GetExposureLines(exposure_lines) != MdParser::OK)
+ *     exposure was not found;
+ * if (parser->GetGainCode(parser, gain_code) != MdParser::OK)
+ *     gain code was not found;
+ *
+ * (Note that the CamHelper class converts to/from exposure lines and time,
+ * and gain_code / actual gain.)
+ *
+ * If you suspect your embedded data may have changed its layout, change any line
+ * lengths, number of lines, bits per pixel etc. that are different, and
+ * then:
+ *
+ * parser->Reset();
+ *
+ * before calling Parse again.
+ */
 
 namespace RPiController {
 
-// Abstract base class from which other metadata parsers are derived.
+/* Abstract base class from which other metadata parsers are derived. */
 
 class MdParser
 {
 public:
-	// Parser status codes:
-	// OK       - success
-	// NOTFOUND - value such as exposure or gain was not found
-	// ERROR    - all other errors
+	/*
+	 * Parser status codes:
+	 * OK       - success
+	 * NOTFOUND - value such as exposure or gain was not found
+	 * ERROR    - all other errors
+	 */
 	enum Status {
 		OK = 0,
 		NOTFOUND = 1,
 		ERROR = 2
 	};
-	MdParser() : reset_(true) {}
+
+	MdParser() : reset_(true)
+	{
+	}
+
 	virtual ~MdParser() = default;
-	void Reset() { reset_ = true; }
-	void SetBitsPerPixel(int bpp) { bits_per_pixel_ = bpp; }
-	void SetNumLines(unsigned int num_lines) { num_lines_ = num_lines; }
+
+	void Reset()
+	{
+		reset_ = true;
+	}
+
+	void SetBitsPerPixel(int bpp)
+	{
+		bits_per_pixel_ = bpp;
+	}
+
+	void SetNumLines(unsigned int num_lines)
+	{
+		num_lines_ = num_lines;
+	}
+
 	void SetLineLengthBytes(unsigned int num_bytes)
 	{
 		line_length_bytes_ = num_bytes;
 	}
+
 	virtual Status Parse(libcamera::Span<const uint8_t> buffer) = 0;
 	virtual Status GetExposureLines(unsigned int &lines) = 0;
 	virtual Status GetGainCode(unsigned int &gain_code) = 0;
@@ -87,22 +106,28 @@  protected:
 	unsigned int buffer_size_bytes_;
 };
 
-// This isn't a full implementation of a metadata parser for SMIA sensors,
-// however, it does provide the findRegs method which will prove useful and make
-// it easier to implement parsers for other SMIA-like sensors (see
-// md_parser_imx219.cpp for an example).
+/*
+ * This isn't a full implementation of a metadata parser for SMIA sensors,
+ * however, it does provide the findRegs method which will prove useful and make
+ * it easier to implement parsers for other SMIA-like sensors (see
+ * md_parser_imx219.cpp for an example).
+ */
 
 class MdParserSmia : public MdParser
 {
 public:
-	MdParserSmia() : MdParser() {}
+	MdParserSmia() : MdParser()
+	{
+	}
 
 protected:
-	// Note that error codes > 0 are regarded as non-fatal; codes < 0
-	// indicate a bad data buffer. Status codes are:
-	// PARSE_OK     - found all registers, much happiness
-	// MISSING_REGS - some registers found; should this be a hard error?
-	// The remaining codes are all hard errors.
+	/*
+	 * Note that error codes > 0 are regarded as non-fatal; codes < 0
+	 * indicate a bad data buffer. Status codes are:
+	 * PARSE_OK     - found all registers, much happiness
+	 * MISSING_REGS - some registers found; should this be a hard error?
+	 * The remaining codes are all hard errors.
+	 */
 	enum ParseStatus {
 		PARSE_OK      =  0,
 		MISSING_REGS  =  1,
@@ -112,6 +137,7 @@  protected:
 		BAD_LINE_END  = -4,
 		BAD_PADDING   = -5
 	};
+
 	ParseStatus findRegs(libcamera::Span<const uint8_t> buffer, uint32_t regs[],
 			     int offsets[], unsigned int num_regs);
 };