[{"id":19394,"web_url":"https://patchwork.libcamera.org/comment/19394/","msgid":"<c7bc7df8-f423-ecd2-8831-cbea9a0a36d2@ideasonboard.com>","date":"2021-09-06T05:45:26","subject":"Re: [libcamera-devel] [PATCH v2 05/27] libcamera: formats: Move\n\tplane info structure to PixelFormatInfo","submitter":{"id":75,"url":"https://patchwork.libcamera.org/api/people/75/","name":"Jean-Michel Hautbois","email":"jeanmichel.hautbois@ideasonboard.com"},"content":"Hi Laurent,\n\nOn 06/09/2021 04:00, Laurent Pinchart wrote:\n> Move the PixelFormatPlaneInfo structure within the PixelFormatInfo class\n> definition and rename it to Plane, to align the naming scheme with other\n> parts of libcamera, such as FrameBuffer::Plane or FrameMetadata::Plane.\n> \n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\nReviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n> ---\n>  include/libcamera/internal/formats.h | 13 ++++++-------\n>  src/libcamera/formats.cpp            | 12 ++++++------\n>  2 files changed, 12 insertions(+), 13 deletions(-)\n> \n> diff --git a/include/libcamera/internal/formats.h b/include/libcamera/internal/formats.h\n> index 51a8a6b8b0ae..a07de6bc6020 100644\n> --- a/include/libcamera/internal/formats.h\n> +++ b/include/libcamera/internal/formats.h\n> @@ -19,12 +19,6 @@\n>  \n>  namespace libcamera {\n>  \n> -struct PixelFormatPlaneInfo\n> -{\n> -\tunsigned int bytesPerGroup;\n> -\tunsigned int verticalSubSampling;\n> -};\n> -\n>  class PixelFormatInfo\n>  {\n>  public:\n> @@ -34,6 +28,11 @@ public:\n>  \t\tColourEncodingRAW,\n>  \t};\n>  \n> +\tstruct Plane {\n> +\t\tunsigned int bytesPerGroup;\n> +\t\tunsigned int verticalSubSampling;\n> +\t};\n> +\n>  \tbool isValid() const { return format.isValid(); }\n>  \n>  \tstatic const PixelFormatInfo &info(const PixelFormat &format);\n> @@ -58,7 +57,7 @@ public:\n>  \n>  \tunsigned int pixelsPerGroup;\n>  \n> -\tstd::array<PixelFormatPlaneInfo, 3> planes;\n> +\tstd::array<Plane, 3> planes;\n>  };\n>  \n>  } /* namespace libcamera */\n> diff --git a/src/libcamera/formats.cpp b/src/libcamera/formats.cpp\n> index 603d88619fe0..c993960eb982 100644\n> --- a/src/libcamera/formats.cpp\n> +++ b/src/libcamera/formats.cpp\n> @@ -24,15 +24,15 @@ namespace libcamera {\n>  LOG_DEFINE_CATEGORY(Formats)\n>  \n>  /**\n> - * \\class PixelFormatPlaneInfo\n> + * \\class PixelFormatInfo::Plane\n>   * \\brief Information about a single plane of a pixel format\n>   *\n> - * \\var PixelFormatPlaneInfo::bytesPerGroup\n> + * \\var PixelFormatInfo::Plane::bytesPerGroup\n>   * \\brief The number of bytes that a pixel group consumes\n>   *\n>   * \\sa PixelFormatInfo::pixelsPerGroup\n>   *\n> - * \\var PixelFormatPlaneInfo::verticalSubSampling\n> + * \\var PixelFormatInfo::Plane::verticalSubSampling\n>   * \\brief Vertical subsampling multiplier\n>   *\n>   * This value is the ratio between the number of rows of pixels in the frame\n> @@ -87,7 +87,7 @@ LOG_DEFINE_CATEGORY(Formats)\n>   *\n>   * A pixel group is defined as the minimum number of pixels (including padding)\n>   * necessary in a row when the image has only one column of effective pixels.\n> - * pixelsPerGroup refers to this value. PixelFormatPlaneInfo::bytesPerGroup,\n> + * pixelsPerGroup refers to this value. PixelFormatInfo::Plane::bytesPerGroup,\n>   * then, refers to the number of bytes that a pixel group consumes. This\n>   * definition of a pixel group allows simple calculation of stride, as\n>   * ceil(width / pixelsPerGroup) * bytesPerGroup. These values are determined\n> @@ -122,7 +122,7 @@ LOG_DEFINE_CATEGORY(Formats)\n>   * \\var PixelFormatInfo::planes\n>   * \\brief Information about pixels for each plane\n>   *\n> - * \\sa PixelFormatPlaneInfo\n> + * \\sa PixelFormatInfo::Plane\n>   */\n>  \n>  /**\n> @@ -869,7 +869,7 @@ unsigned int PixelFormatInfo::numPlanes() const\n>  {\n>  \tunsigned int count = 0;\n>  \n> -\tfor (const PixelFormatPlaneInfo &p : planes) {\n> +\tfor (const Plane &p : planes) {\n>  \t\tif (p.bytesPerGroup == 0)\n>  \t\t\tbreak;\n>  \n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id B3EB2BD87D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon,  6 Sep 2021 05:45:30 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 246216916C;\n\tMon,  6 Sep 2021 07:45:30 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 40F796024D\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon,  6 Sep 2021 07:45:29 +0200 (CEST)","from tatooine.ideasonboard.com (unknown\n\t[IPv6:2a01:e0a:169:7140:eb18:8e30:9b7:f998])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id C8AA7317;\n\tMon,  6 Sep 2021 07:45:28 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"eiDkgdN9\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1630907128;\n\tbh=1qdKTObgvcJ79ojaHxpfO/v9/JKsrUjtnLclEu55dAo=;\n\th=Subject:To:References:From:Date:In-Reply-To:From;\n\tb=eiDkgdN9jE7g2vk1Q4Ex7n5NS1hvdEj1t/ZoR7uUH2TAEUZIj6q4RZBLZgOXOOQ6/\n\tJjFV5FE1fWdcIvTz78ypUO0AEZdPtwXORSFn1RQmPnAUmtKTdRJNqHOQnGdJSOZlYU\n\tukI/Z5SDDB/or8JbxJL2/Acmho32T1O3IL085PvU=","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","References":"<20210906020100.14430-1-laurent.pinchart@ideasonboard.com>\n\t<20210906020100.14430-6-laurent.pinchart@ideasonboard.com>","From":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>","Message-ID":"<c7bc7df8-f423-ecd2-8831-cbea9a0a36d2@ideasonboard.com>","Date":"Mon, 6 Sep 2021 07:45:26 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.13.0","MIME-Version":"1.0","In-Reply-To":"<20210906020100.14430-6-laurent.pinchart@ideasonboard.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","Subject":"Re: [libcamera-devel] [PATCH v2 05/27] libcamera: formats: Move\n\tplane info structure to PixelFormatInfo","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":19438,"web_url":"https://patchwork.libcamera.org/comment/19438/","msgid":"<CAO5uPHPvrji2z+woKERFPpCZGPz9Q3RfZY8Mb=2wQS2PVmF+UA@mail.gmail.com>","date":"2021-09-06T12:39:28","subject":"Re: [libcamera-devel] [PATCH v2 05/27] libcamera: formats: Move\n\tplane info structure to PixelFormatInfo","submitter":{"id":63,"url":"https://patchwork.libcamera.org/api/people/63/","name":"Hirokazu Honda","email":"hiroh@chromium.org"},"content":"Hi Laurent,\n\nOn Mon, Sep 6, 2021 at 2:45 PM Jean-Michel Hautbois\n<jeanmichel.hautbois@ideasonboard.com> wrote:\n>\n> Hi Laurent,\n>\n> On 06/09/2021 04:00, Laurent Pinchart wrote:\n> > Move the PixelFormatPlaneInfo structure within the PixelFormatInfo class\n> > definition and rename it to Plane, to align the naming scheme with other\n> > parts of libcamera, such as FrameBuffer::Plane or FrameMetadata::Plane.\n> >\n> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n\nReviewed-by: Hirokazu Honda <hiroh@chromium.org>\n\n> > ---\n> >  include/libcamera/internal/formats.h | 13 ++++++-------\n> >  src/libcamera/formats.cpp            | 12 ++++++------\n> >  2 files changed, 12 insertions(+), 13 deletions(-)\n> >\n> > diff --git a/include/libcamera/internal/formats.h b/include/libcamera/internal/formats.h\n> > index 51a8a6b8b0ae..a07de6bc6020 100644\n> > --- a/include/libcamera/internal/formats.h\n> > +++ b/include/libcamera/internal/formats.h\n> > @@ -19,12 +19,6 @@\n> >\n> >  namespace libcamera {\n> >\n> > -struct PixelFormatPlaneInfo\n> > -{\n> > -     unsigned int bytesPerGroup;\n> > -     unsigned int verticalSubSampling;\n> > -};\n> > -\n> >  class PixelFormatInfo\n> >  {\n> >  public:\n> > @@ -34,6 +28,11 @@ public:\n> >               ColourEncodingRAW,\n> >       };\n> >\n> > +     struct Plane {\n> > +             unsigned int bytesPerGroup;\n> > +             unsigned int verticalSubSampling;\n> > +     };\n> > +\n> >       bool isValid() const { return format.isValid(); }\n> >\n> >       static const PixelFormatInfo &info(const PixelFormat &format);\n> > @@ -58,7 +57,7 @@ public:\n> >\n> >       unsigned int pixelsPerGroup;\n> >\n> > -     std::array<PixelFormatPlaneInfo, 3> planes;\n> > +     std::array<Plane, 3> planes;\n> >  };\n> >\n> >  } /* namespace libcamera */\n> > diff --git a/src/libcamera/formats.cpp b/src/libcamera/formats.cpp\n> > index 603d88619fe0..c993960eb982 100644\n> > --- a/src/libcamera/formats.cpp\n> > +++ b/src/libcamera/formats.cpp\n> > @@ -24,15 +24,15 @@ namespace libcamera {\n> >  LOG_DEFINE_CATEGORY(Formats)\n> >\n> >  /**\n> > - * \\class PixelFormatPlaneInfo\n> > + * \\class PixelFormatInfo::Plane\n> >   * \\brief Information about a single plane of a pixel format\n> >   *\n> > - * \\var PixelFormatPlaneInfo::bytesPerGroup\n> > + * \\var PixelFormatInfo::Plane::bytesPerGroup\n> >   * \\brief The number of bytes that a pixel group consumes\n> >   *\n> >   * \\sa PixelFormatInfo::pixelsPerGroup\n> >   *\n> > - * \\var PixelFormatPlaneInfo::verticalSubSampling\n> > + * \\var PixelFormatInfo::Plane::verticalSubSampling\n> >   * \\brief Vertical subsampling multiplier\n> >   *\n> >   * This value is the ratio between the number of rows of pixels in the frame\n> > @@ -87,7 +87,7 @@ LOG_DEFINE_CATEGORY(Formats)\n> >   *\n> >   * A pixel group is defined as the minimum number of pixels (including padding)\n> >   * necessary in a row when the image has only one column of effective pixels.\n> > - * pixelsPerGroup refers to this value. PixelFormatPlaneInfo::bytesPerGroup,\n> > + * pixelsPerGroup refers to this value. PixelFormatInfo::Plane::bytesPerGroup,\n> >   * then, refers to the number of bytes that a pixel group consumes. This\n> >   * definition of a pixel group allows simple calculation of stride, as\n> >   * ceil(width / pixelsPerGroup) * bytesPerGroup. These values are determined\n> > @@ -122,7 +122,7 @@ LOG_DEFINE_CATEGORY(Formats)\n> >   * \\var PixelFormatInfo::planes\n> >   * \\brief Information about pixels for each plane\n> >   *\n> > - * \\sa PixelFormatPlaneInfo\n> > + * \\sa PixelFormatInfo::Plane\n> >   */\n> >\n> >  /**\n> > @@ -869,7 +869,7 @@ unsigned int PixelFormatInfo::numPlanes() const\n> >  {\n> >       unsigned int count = 0;\n> >\n> > -     for (const PixelFormatPlaneInfo &p : planes) {\n> > +     for (const Plane &p : planes) {\n> >               if (p.bytesPerGroup == 0)\n> >                       break;\n> >\n> >","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id A55FDBDC71\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon,  6 Sep 2021 12:39:41 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 5F86269168;\n\tMon,  6 Sep 2021 14:39:41 +0200 (CEST)","from mail-ej1-x634.google.com (mail-ej1-x634.google.com\n\t[IPv6:2a00:1450:4864:20::634])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id EF4C260137\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon,  6 Sep 2021 14:39:39 +0200 (CEST)","by mail-ej1-x634.google.com with SMTP id a25so13273256ejv.6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 06 Sep 2021 05:39:39 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=chromium.org header.i=@chromium.org\n\theader.b=\"KEnRzgbz\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org;\n\ts=google; \n\th=mime-version:references:in-reply-to:from:date:message-id:subject:to\n\t:cc; bh=Up8HcXd9l8fSFCnNGGNXMRrKD4v0d9aTc4yMZbmNebo=;\n\tb=KEnRzgbz5C+gDNZ0yQyULJUxD+4F/oBq0/GpGwUIsm8cHXgfKyJ0n5Ya8VkmSBvszO\n\tmatxtq57umSR3IsRjLQKA/eRalZq0oQydOOfRil7eqO4nXgzNQ2omxgygG9AZDaiuD+z\n\tkTjqa51SI3g2RtqmmHujamm2jzwjPlVJGgL2o=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:references:in-reply-to:from:date\n\t:message-id:subject:to:cc;\n\tbh=Up8HcXd9l8fSFCnNGGNXMRrKD4v0d9aTc4yMZbmNebo=;\n\tb=LNGrBFSfoHLRLYDRikEi8xb82RY5fuI8dEIUALbYzKprnn1f4J8jiAybLVx/WeyQGp\n\tvZIq8kf4N2BfLhHmeuDtdVhDe4BSOPGn5NzGODuhdOuq41KE9PWQYD8nlEFTsDaJEaEf\n\tnpEvGH4MXkMZe8bpZfkz59gbVwCyVYC4JHxGcG+8C7SdXBKmjRIaFZ6MhTSgjj+31ERc\n\tzIzeqcF8PnFuwOoM/bxUSMbGhB2Z7vG1lMA1VEHamB7vOSOcA1SqaTaUcTJnWsyshdPw\n\tmIDdZ2mioHp47DVWIdDqJAQ/rK17LsonB39dXdIXas7rnTriKcowoLFPk9uMADdoQ456\n\txc5A==","X-Gm-Message-State":"AOAM5329Nqc+tjGb2Zu2ZzQH7u/0bKJrmgzZfwNZ5e9+5AS0ugjRM+Zm\n\tAqS2acZVQQ/YA5XiZNtC+IDSvRCa1dL2y/MNoPIYgsuuskA=","X-Google-Smtp-Source":"ABdhPJx9F6kqbv7CZmptgZjrE6KC3KvJQNupumI3K2c3JguljsUXubxil1fgcuVUxiCNONl5NgHiW6vmUEXn7wTse2E=","X-Received":"by 2002:a17:906:3589:: with SMTP id\n\to9mr13851158ejb.150.1630931979653; \n\tMon, 06 Sep 2021 05:39:39 -0700 (PDT)","MIME-Version":"1.0","References":"<20210906020100.14430-1-laurent.pinchart@ideasonboard.com>\n\t<20210906020100.14430-6-laurent.pinchart@ideasonboard.com>\n\t<c7bc7df8-f423-ecd2-8831-cbea9a0a36d2@ideasonboard.com>","In-Reply-To":"<c7bc7df8-f423-ecd2-8831-cbea9a0a36d2@ideasonboard.com>","From":"Hirokazu Honda <hiroh@chromium.org>","Date":"Mon, 6 Sep 2021 21:39:28 +0900","Message-ID":"<CAO5uPHPvrji2z+woKERFPpCZGPz9Q3RfZY8Mb=2wQS2PVmF+UA@mail.gmail.com>","To":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>","Content-Type":"text/plain; charset=\"UTF-8\"","Subject":"Re: [libcamera-devel] [PATCH v2 05/27] libcamera: formats: Move\n\tplane info structure to PixelFormatInfo","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":19493,"web_url":"https://patchwork.libcamera.org/comment/19493/","msgid":"<20210907080421.GU968527@pyrite.rasen.tech>","date":"2021-09-07T08:04:21","subject":"Re: [libcamera-devel] [PATCH v2 05/27] libcamera: formats: Move\n\tplane info structure to PixelFormatInfo","submitter":{"id":17,"url":"https://patchwork.libcamera.org/api/people/17/","name":"Paul Elder","email":"paul.elder@ideasonboard.com"},"content":"Hi Laurent,\n\nOn Mon, Sep 06, 2021 at 05:00:38AM +0300, Laurent Pinchart wrote:\n> Move the PixelFormatPlaneInfo structure within the PixelFormatInfo class\n> definition and rename it to Plane, to align the naming scheme with other\n> parts of libcamera, such as FrameBuffer::Plane or FrameMetadata::Plane.\n> \n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\nReviewed-by: Paul Elder <paul.elder@ideasonboard.com>\n\n> ---\n>  include/libcamera/internal/formats.h | 13 ++++++-------\n>  src/libcamera/formats.cpp            | 12 ++++++------\n>  2 files changed, 12 insertions(+), 13 deletions(-)\n> \n> diff --git a/include/libcamera/internal/formats.h b/include/libcamera/internal/formats.h\n> index 51a8a6b8b0ae..a07de6bc6020 100644\n> --- a/include/libcamera/internal/formats.h\n> +++ b/include/libcamera/internal/formats.h\n> @@ -19,12 +19,6 @@\n>  \n>  namespace libcamera {\n>  \n> -struct PixelFormatPlaneInfo\n> -{\n> -\tunsigned int bytesPerGroup;\n> -\tunsigned int verticalSubSampling;\n> -};\n> -\n>  class PixelFormatInfo\n>  {\n>  public:\n> @@ -34,6 +28,11 @@ public:\n>  \t\tColourEncodingRAW,\n>  \t};\n>  \n> +\tstruct Plane {\n> +\t\tunsigned int bytesPerGroup;\n> +\t\tunsigned int verticalSubSampling;\n> +\t};\n> +\n>  \tbool isValid() const { return format.isValid(); }\n>  \n>  \tstatic const PixelFormatInfo &info(const PixelFormat &format);\n> @@ -58,7 +57,7 @@ public:\n>  \n>  \tunsigned int pixelsPerGroup;\n>  \n> -\tstd::array<PixelFormatPlaneInfo, 3> planes;\n> +\tstd::array<Plane, 3> planes;\n>  };\n>  \n>  } /* namespace libcamera */\n> diff --git a/src/libcamera/formats.cpp b/src/libcamera/formats.cpp\n> index 603d88619fe0..c993960eb982 100644\n> --- a/src/libcamera/formats.cpp\n> +++ b/src/libcamera/formats.cpp\n> @@ -24,15 +24,15 @@ namespace libcamera {\n>  LOG_DEFINE_CATEGORY(Formats)\n>  \n>  /**\n> - * \\class PixelFormatPlaneInfo\n> + * \\class PixelFormatInfo::Plane\n>   * \\brief Information about a single plane of a pixel format\n>   *\n> - * \\var PixelFormatPlaneInfo::bytesPerGroup\n> + * \\var PixelFormatInfo::Plane::bytesPerGroup\n>   * \\brief The number of bytes that a pixel group consumes\n>   *\n>   * \\sa PixelFormatInfo::pixelsPerGroup\n>   *\n> - * \\var PixelFormatPlaneInfo::verticalSubSampling\n> + * \\var PixelFormatInfo::Plane::verticalSubSampling\n>   * \\brief Vertical subsampling multiplier\n>   *\n>   * This value is the ratio between the number of rows of pixels in the frame\n> @@ -87,7 +87,7 @@ LOG_DEFINE_CATEGORY(Formats)\n>   *\n>   * A pixel group is defined as the minimum number of pixels (including padding)\n>   * necessary in a row when the image has only one column of effective pixels.\n> - * pixelsPerGroup refers to this value. PixelFormatPlaneInfo::bytesPerGroup,\n> + * pixelsPerGroup refers to this value. PixelFormatInfo::Plane::bytesPerGroup,\n>   * then, refers to the number of bytes that a pixel group consumes. This\n>   * definition of a pixel group allows simple calculation of stride, as\n>   * ceil(width / pixelsPerGroup) * bytesPerGroup. These values are determined\n> @@ -122,7 +122,7 @@ LOG_DEFINE_CATEGORY(Formats)\n>   * \\var PixelFormatInfo::planes\n>   * \\brief Information about pixels for each plane\n>   *\n> - * \\sa PixelFormatPlaneInfo\n> + * \\sa PixelFormatInfo::Plane\n>   */\n>  \n>  /**\n> @@ -869,7 +869,7 @@ unsigned int PixelFormatInfo::numPlanes() const\n>  {\n>  \tunsigned int count = 0;\n>  \n> -\tfor (const PixelFormatPlaneInfo &p : planes) {\n> +\tfor (const Plane &p : planes) {\n>  \t\tif (p.bytesPerGroup == 0)\n>  \t\t\tbreak;\n>  \n> -- \n> Regards,\n> \n> Laurent Pinchart\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 54C5DBE175\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  7 Sep 2021 08:04:30 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id CD57669166;\n\tTue,  7 Sep 2021 10:04:29 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 85A6269166\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  7 Sep 2021 10:04:28 +0200 (CEST)","from pyrite.rasen.tech (unknown\n\t[IPv6:2400:4051:61:600:2c71:1b79:d06d:5032])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 243DA499;\n\tTue,  7 Sep 2021 10:04:26 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"Jbr/tVbd\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1631001868;\n\tbh=CKUCz3M7p/a2kHZRb0LiNC1OMeP/ahW85f84ZHjDa0c=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=Jbr/tVbdcIDMiMMtq1/U4TRctfg3ADMiAuHakyhdCky9CZnwnkIUC8f/vi2B+wyJk\n\trXoGAf3Fy2yxCbxUTu3Jr7dl21mJVNqQ6VgVXZUUnDMhH7voXvTUbyN+7LjAZKMMoX\n\tGmnRUSvzJSh3AC3ylou7BmaC/IlXv6NzVc5Izny0=","Date":"Tue, 7 Sep 2021 17:04:21 +0900","From":"paul.elder@ideasonboard.com","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Message-ID":"<20210907080421.GU968527@pyrite.rasen.tech>","References":"<20210906020100.14430-1-laurent.pinchart@ideasonboard.com>\n\t<20210906020100.14430-6-laurent.pinchart@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"<20210906020100.14430-6-laurent.pinchart@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v2 05/27] libcamera: formats: Move\n\tplane info structure to PixelFormatInfo","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]