[{"id":29886,"web_url":"https://patchwork.libcamera.org/comment/29886/","msgid":"<Zmqh4jgrjQhVyRxm@pyrite.rasen.tech>","date":"2024-06-13T07:38:10","subject":"Re: [PATCH 05/11] ipa: libipa: pwl: Suffix \\param with direction","submitter":{"id":17,"url":"https://patchwork.libcamera.org/api/people/17/","name":"Paul Elder","email":"paul.elder@ideasonboard.com"},"content":"On Thu, Jun 13, 2024 at 04:39:38AM +0300, Laurent Pinchart wrote:\n> Suffix the Doxygen \\param commands with the direction for all\n> parameters.\n\nI thought they're [in] if unspecified?\n\n> \n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\nReviewed-by: Paul Elder <paul.elder@ideasonboard.com>\n\n> ---\n>  src/ipa/libipa/pwl.cpp | 41 +++++++++++++++++++++--------------------\n>  1 file changed, 21 insertions(+), 20 deletions(-)\n> \n> diff --git a/src/ipa/libipa/pwl.cpp b/src/ipa/libipa/pwl.cpp\n> index 901e42ceb2ce..1ba0108515a1 100644\n> --- a/src/ipa/libipa/pwl.cpp\n> +++ b/src/ipa/libipa/pwl.cpp\n> @@ -60,14 +60,14 @@ namespace ipa {\n>  /**\n>   * \\fn Pwl::Interval::Interval(double _start, double _end)\n>   * \\brief Construct an interval\n> - * \\param _start Start of the interval\n> - * \\param _end End of the interval\n> + * \\param[in] _start Start of the interval\n> + * \\param[in] _end End of the interval\n>   */\n>  \n>  /**\n>   * \\fn Pwl::Interval::contains\n>   * \\brief Check if a given value falls within the interval\n> - * \\param value Value to check\n> + * \\param[in] value Value to check\n>   * \\return True if the value falls within the interval, including its bounds,\n>   * or false otherwise\n>   */\n> @@ -75,7 +75,7 @@ namespace ipa {\n>  /**\n>   * \\fn Pwl::Interval::clamp\n>   * \\brief Clamp a value such that it is within the interval\n> - * \\param value Value to clamp\n> + * \\param[in] value Value to clamp\n>   * \\return The clamped value\n>   */\n>  \n> @@ -104,7 +104,8 @@ Pwl::Pwl()\n>  \n>  /**\n>   * \\brief Construct a piecewise linear function from a list of 2D points\n> - * \\param points Vector of points from which to construct the piecewise linear function\n> + * \\param[in] points Vector of points from which to construct the piecewise\n> + * linear function\n>   *\n>   * \\a points must be in ascending order of x-value.\n>   */\n> @@ -115,7 +116,7 @@ Pwl::Pwl(const std::vector<Point> &points)\n>  \n>  /**\n>   * \\brief Populate the piecewise linear function from yaml data\n> - * \\param params Yaml data to populate the piecewise linear function with\n> + * \\param[in] params Yaml data to populate the piecewise linear function with\n>   *\n>   * Any existing points in the piecewise linear function *will* be overwritten.\n>   *\n> @@ -153,9 +154,9 @@ int Pwl::readYaml(const libcamera::YamlObject &params)\n>  \n>  /**\n>   * \\brief Append a point to the end of the piecewise linear function\n> - * \\param x x-coordinate of the point to add to the piecewise linear function\n> - * \\param y y-coordinate of the point to add to the piecewise linear function\n> - * \\param eps Epsilon for the minimum x distance between points (optional)\n> + * \\param[in] x x-coordinate of the point to add to the piecewise linear function\n> + * \\param[in] y y-coordinate of the point to add to the piecewise linear function\n> + * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n>   *\n>   * The point's x-coordinate must be greater than the x-coordinate of the last\n>   * (= greatest) point already in the piecewise linear function.\n> @@ -168,9 +169,9 @@ void Pwl::append(double x, double y, const double eps)\n>  \n>  /**\n>   * \\brief Prepend a point to the beginning of the piecewise linear function\n> - * \\param x x-coordinate of the point to add to the piecewise linear function\n> - * \\param y y-coordinate of the point to add to the piecewise linear function\n> - * \\param eps Epsilon for the minimum x distance between points (optional)\n> + * \\param[in] x x-coordinate of the point to add to the piecewise linear function\n> + * \\param[in] y y-coordinate of the point to add to the piecewise linear function\n> + * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n>   *\n>   * The point's x-coordinate must be less than the x-coordinate of the first\n>   * (= smallest) point already in the piecewise linear function.\n> @@ -353,7 +354,7 @@ Pwl Pwl::compose(Pwl const &other, const double eps) const\n>  \n>  /**\n>   * \\brief Apply function to (x, y) values at every control point\n> - * \\param f Function to be applied\n> + * \\param[in] f Function to be applied\n>   */\n>  void Pwl::map(std::function<void(double x, double y)> f) const\n>  {\n> @@ -364,9 +365,9 @@ void Pwl::map(std::function<void(double x, double y)> f) const\n>  /**\n>   * \\brief Apply function to (x, y0, y1) values wherever either Pwl has a\n>   * control point.\n> - * \\param pwl0 First piecewise linear function\n> - * \\param pwl1 Second piecewise linear function\n> - * \\param f Function to be applied\n> + * \\param[in] pwl0 First piecewise linear function\n> + * \\param[in] pwl1 Second piecewise linear function\n> + * \\param[in] f Function to be applied\n>   *\n>   * This applies the function \\a f to every parameter (x, y0, y1), where x is\n>   * the combined list of x-values from \\a pwl0 and \\a pwl1, y0 is the y-value\n> @@ -395,9 +396,9 @@ void Pwl::map2(Pwl const &pwl0, Pwl const &pwl1,\n>  \n>  /**\n>   * \\brief Combine two Pwls\n> - * \\param pwl0 First piecewise linear function\n> - * \\param pwl1 Second piecewise linear function\n> - * \\param f Function to be applied\n> + * \\param[in] pwl0 First piecewise linear function\n> + * \\param[in] pwl1 Second piecewise linear function\n> + * \\param[in] f Function to be applied\n>   * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n>   *\n>   * Create a new Pwl where the y values are given by running \\a f wherever\n> @@ -418,7 +419,7 @@ Pwl Pwl::combine(Pwl const &pwl0, Pwl const &pwl1,\n>  \n>  /**\n>   * \\brief Multiply the piecewise linear function\n> - * \\param d Scalar multiplier to multiply the function by\n> + * \\param[in] d Scalar multiplier to multiply the function by\n>   * \\return This function, after it has been multiplied by \\a d\n>   */\n>  Pwl &Pwl::operator*=(double d)","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 9CC9AC3237\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Jun 2024 07:38:18 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 54D016548F;\n\tThu, 13 Jun 2024 09:38:18 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 0B1466548B\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Jun 2024 09:38:17 +0200 (CEST)","from pyrite.rasen.tech (h175-177-049-156.catv02.itscom.jp\n\t[175.177.49.156])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id E072BBEB;\n\tThu, 13 Jun 2024 09:38:01 +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=\"JcmA+4j8\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1718264283;\n\tbh=820+mdKhjg1xbHs5IQDwjAu4M5qBZtOpryNfRMY3Wfw=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=JcmA+4j8MqeAEbE8S2ShPbAKzrMUOKwZ4xyVBr7cAp2uLVbCpAHkNaIP4kO5NbmkR\n\toTCd2YbKzv17gkmAzKWCTHMyX0+YfHbgejDRmrG21DdQnj9A0AIGuwj59+itabK/sE\n\tcdAY7TxeRaHPBn+8LsUNvumhwHGMdLQt03Def+JM=","Date":"Thu, 13 Jun 2024 16:38:10 +0900","From":"Paul Elder <paul.elder@ideasonboard.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org,\n\tDavid Plowman <david.plowman@raspberrypi.com>,\n\tNaushir Patuck <naush@raspberrypi.com>","Subject":"Re: [PATCH 05/11] ipa: libipa: pwl: Suffix \\param with direction","Message-ID":"<Zmqh4jgrjQhVyRxm@pyrite.rasen.tech>","References":"<20240613013944.23344-1-laurent.pinchart@ideasonboard.com>\n\t<20240613013944.23344-6-laurent.pinchart@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"<20240613013944.23344-6-laurent.pinchart@ideasonboard.com>","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":29904,"web_url":"https://patchwork.libcamera.org/comment/29904/","msgid":"<20240613103158.GG7291@pendragon.ideasonboard.com>","date":"2024-06-13T10:31:58","subject":"Re: [PATCH 05/11] ipa: libipa: pwl: Suffix \\param with direction","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"On Thu, Jun 13, 2024 at 04:38:10PM +0900, Paul Elder wrote:\n> On Thu, Jun 13, 2024 at 04:39:38AM +0300, Laurent Pinchart wrote:\n> > Suffix the Doxygen \\param commands with the direction for all\n> > parameters.\n> \n> I thought they're [in] if unspecified?\n\nI think so, but I thought we always specify them explicitly. I'm OK\nchanging the rule globally if that's preferred.\n\n> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> \n> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>\n> \n> > ---\n> >  src/ipa/libipa/pwl.cpp | 41 +++++++++++++++++++++--------------------\n> >  1 file changed, 21 insertions(+), 20 deletions(-)\n> > \n> > diff --git a/src/ipa/libipa/pwl.cpp b/src/ipa/libipa/pwl.cpp\n> > index 901e42ceb2ce..1ba0108515a1 100644\n> > --- a/src/ipa/libipa/pwl.cpp\n> > +++ b/src/ipa/libipa/pwl.cpp\n> > @@ -60,14 +60,14 @@ namespace ipa {\n> >  /**\n> >   * \\fn Pwl::Interval::Interval(double _start, double _end)\n> >   * \\brief Construct an interval\n> > - * \\param _start Start of the interval\n> > - * \\param _end End of the interval\n> > + * \\param[in] _start Start of the interval\n> > + * \\param[in] _end End of the interval\n> >   */\n> >  \n> >  /**\n> >   * \\fn Pwl::Interval::contains\n> >   * \\brief Check if a given value falls within the interval\n> > - * \\param value Value to check\n> > + * \\param[in] value Value to check\n> >   * \\return True if the value falls within the interval, including its bounds,\n> >   * or false otherwise\n> >   */\n> > @@ -75,7 +75,7 @@ namespace ipa {\n> >  /**\n> >   * \\fn Pwl::Interval::clamp\n> >   * \\brief Clamp a value such that it is within the interval\n> > - * \\param value Value to clamp\n> > + * \\param[in] value Value to clamp\n> >   * \\return The clamped value\n> >   */\n> >  \n> > @@ -104,7 +104,8 @@ Pwl::Pwl()\n> >  \n> >  /**\n> >   * \\brief Construct a piecewise linear function from a list of 2D points\n> > - * \\param points Vector of points from which to construct the piecewise linear function\n> > + * \\param[in] points Vector of points from which to construct the piecewise\n> > + * linear function\n> >   *\n> >   * \\a points must be in ascending order of x-value.\n> >   */\n> > @@ -115,7 +116,7 @@ Pwl::Pwl(const std::vector<Point> &points)\n> >  \n> >  /**\n> >   * \\brief Populate the piecewise linear function from yaml data\n> > - * \\param params Yaml data to populate the piecewise linear function with\n> > + * \\param[in] params Yaml data to populate the piecewise linear function with\n> >   *\n> >   * Any existing points in the piecewise linear function *will* be overwritten.\n> >   *\n> > @@ -153,9 +154,9 @@ int Pwl::readYaml(const libcamera::YamlObject &params)\n> >  \n> >  /**\n> >   * \\brief Append a point to the end of the piecewise linear function\n> > - * \\param x x-coordinate of the point to add to the piecewise linear function\n> > - * \\param y y-coordinate of the point to add to the piecewise linear function\n> > - * \\param eps Epsilon for the minimum x distance between points (optional)\n> > + * \\param[in] x x-coordinate of the point to add to the piecewise linear function\n> > + * \\param[in] y y-coordinate of the point to add to the piecewise linear function\n> > + * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n> >   *\n> >   * The point's x-coordinate must be greater than the x-coordinate of the last\n> >   * (= greatest) point already in the piecewise linear function.\n> > @@ -168,9 +169,9 @@ void Pwl::append(double x, double y, const double eps)\n> >  \n> >  /**\n> >   * \\brief Prepend a point to the beginning of the piecewise linear function\n> > - * \\param x x-coordinate of the point to add to the piecewise linear function\n> > - * \\param y y-coordinate of the point to add to the piecewise linear function\n> > - * \\param eps Epsilon for the minimum x distance between points (optional)\n> > + * \\param[in] x x-coordinate of the point to add to the piecewise linear function\n> > + * \\param[in] y y-coordinate of the point to add to the piecewise linear function\n> > + * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n> >   *\n> >   * The point's x-coordinate must be less than the x-coordinate of the first\n> >   * (= smallest) point already in the piecewise linear function.\n> > @@ -353,7 +354,7 @@ Pwl Pwl::compose(Pwl const &other, const double eps) const\n> >  \n> >  /**\n> >   * \\brief Apply function to (x, y) values at every control point\n> > - * \\param f Function to be applied\n> > + * \\param[in] f Function to be applied\n> >   */\n> >  void Pwl::map(std::function<void(double x, double y)> f) const\n> >  {\n> > @@ -364,9 +365,9 @@ void Pwl::map(std::function<void(double x, double y)> f) const\n> >  /**\n> >   * \\brief Apply function to (x, y0, y1) values wherever either Pwl has a\n> >   * control point.\n> > - * \\param pwl0 First piecewise linear function\n> > - * \\param pwl1 Second piecewise linear function\n> > - * \\param f Function to be applied\n> > + * \\param[in] pwl0 First piecewise linear function\n> > + * \\param[in] pwl1 Second piecewise linear function\n> > + * \\param[in] f Function to be applied\n> >   *\n> >   * This applies the function \\a f to every parameter (x, y0, y1), where x is\n> >   * the combined list of x-values from \\a pwl0 and \\a pwl1, y0 is the y-value\n> > @@ -395,9 +396,9 @@ void Pwl::map2(Pwl const &pwl0, Pwl const &pwl1,\n> >  \n> >  /**\n> >   * \\brief Combine two Pwls\n> > - * \\param pwl0 First piecewise linear function\n> > - * \\param pwl1 Second piecewise linear function\n> > - * \\param f Function to be applied\n> > + * \\param[in] pwl0 First piecewise linear function\n> > + * \\param[in] pwl1 Second piecewise linear function\n> > + * \\param[in] f Function to be applied\n> >   * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n> >   *\n> >   * Create a new Pwl where the y values are given by running \\a f wherever\n> > @@ -418,7 +419,7 @@ Pwl Pwl::combine(Pwl const &pwl0, Pwl const &pwl1,\n> >  \n> >  /**\n> >   * \\brief Multiply the piecewise linear function\n> > - * \\param d Scalar multiplier to multiply the function by\n> > + * \\param[in] d Scalar multiplier to multiply the function by\n> >   * \\return This function, after it has been multiplied by \\a d\n> >   */\n> >  Pwl &Pwl::operator*=(double d)","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 6CF52C3237\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Jun 2024 10:32:22 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7EC2B6548E;\n\tThu, 13 Jun 2024 12:32:21 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id E6379634D3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Jun 2024 12:32:19 +0200 (CEST)","from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 89600743;\n\tThu, 13 Jun 2024 12:32:05 +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=\"apRWVLEG\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1718274725;\n\tbh=FuuqPqDF2rpFhWRtuS9hVBMtlVJxC9ECogVIt7Jjh+I=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=apRWVLEGxSyJLzncFpopXnPyCrHsoPpsM0Xg6hwHqPKtIelQLhEYy1iVBiWR6+gv1\n\tGAxeA4ehoipOwwaJeOTNFDKRYW7iRf9e77aFfvsYZrXS9cQtUW8dW/Goa3HZ795nOq\n\tgSPDwkuRFEcIJ0MsBj/vIbrQEaXxWvUSq9gAv+yY=","Date":"Thu, 13 Jun 2024 13:31:58 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Paul Elder <paul.elder@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org,\n\tDavid Plowman <david.plowman@raspberrypi.com>,\n\tNaushir Patuck <naush@raspberrypi.com>","Subject":"Re: [PATCH 05/11] ipa: libipa: pwl: Suffix \\param with direction","Message-ID":"<20240613103158.GG7291@pendragon.ideasonboard.com>","References":"<20240613013944.23344-1-laurent.pinchart@ideasonboard.com>\n\t<20240613013944.23344-6-laurent.pinchart@ideasonboard.com>\n\t<Zmqh4jgrjQhVyRxm@pyrite.rasen.tech>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<Zmqh4jgrjQhVyRxm@pyrite.rasen.tech>","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":29905,"web_url":"https://patchwork.libcamera.org/comment/29905/","msgid":"<171827611459.2248009.2847278384719310685@ping.linuxembedded.co.uk>","date":"2024-06-13T10:55:14","subject":"Re: [PATCH 05/11] ipa: libipa: pwl: Suffix \\param with direction","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Quoting Laurent Pinchart (2024-06-13 11:31:58)\n> On Thu, Jun 13, 2024 at 04:38:10PM +0900, Paul Elder wrote:\n> > On Thu, Jun 13, 2024 at 04:39:38AM +0300, Laurent Pinchart wrote:\n> > > Suffix the Doxygen \\param commands with the direction for all\n> > > parameters.\n> > \n> > I thought they're [in] if unspecified?\n> \n> I think so, but I thought we always specify them explicitly. I'm OK\n> changing the rule globally if that's preferred.\n\nIt looks like we're far more prevalent with specifying [in], so I'd keep\nthis patch.\n\nProbably a checkpatch rule candidate for the future.\n\n\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n> \n> > > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> > \n> > Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>\n> > \n> > > ---\n> > >  src/ipa/libipa/pwl.cpp | 41 +++++++++++++++++++++--------------------\n> > >  1 file changed, 21 insertions(+), 20 deletions(-)\n> > > \n> > > diff --git a/src/ipa/libipa/pwl.cpp b/src/ipa/libipa/pwl.cpp\n> > > index 901e42ceb2ce..1ba0108515a1 100644\n> > > --- a/src/ipa/libipa/pwl.cpp\n> > > +++ b/src/ipa/libipa/pwl.cpp\n> > > @@ -60,14 +60,14 @@ namespace ipa {\n> > >  /**\n> > >   * \\fn Pwl::Interval::Interval(double _start, double _end)\n> > >   * \\brief Construct an interval\n> > > - * \\param _start Start of the interval\n> > > - * \\param _end End of the interval\n> > > + * \\param[in] _start Start of the interval\n> > > + * \\param[in] _end End of the interval\n> > >   */\n> > >  \n> > >  /**\n> > >   * \\fn Pwl::Interval::contains\n> > >   * \\brief Check if a given value falls within the interval\n> > > - * \\param value Value to check\n> > > + * \\param[in] value Value to check\n> > >   * \\return True if the value falls within the interval, including its bounds,\n> > >   * or false otherwise\n> > >   */\n> > > @@ -75,7 +75,7 @@ namespace ipa {\n> > >  /**\n> > >   * \\fn Pwl::Interval::clamp\n> > >   * \\brief Clamp a value such that it is within the interval\n> > > - * \\param value Value to clamp\n> > > + * \\param[in] value Value to clamp\n> > >   * \\return The clamped value\n> > >   */\n> > >  \n> > > @@ -104,7 +104,8 @@ Pwl::Pwl()\n> > >  \n> > >  /**\n> > >   * \\brief Construct a piecewise linear function from a list of 2D points\n> > > - * \\param points Vector of points from which to construct the piecewise linear function\n> > > + * \\param[in] points Vector of points from which to construct the piecewise\n> > > + * linear function\n> > >   *\n> > >   * \\a points must be in ascending order of x-value.\n> > >   */\n> > > @@ -115,7 +116,7 @@ Pwl::Pwl(const std::vector<Point> &points)\n> > >  \n> > >  /**\n> > >   * \\brief Populate the piecewise linear function from yaml data\n> > > - * \\param params Yaml data to populate the piecewise linear function with\n> > > + * \\param[in] params Yaml data to populate the piecewise linear function with\n> > >   *\n> > >   * Any existing points in the piecewise linear function *will* be overwritten.\n> > >   *\n> > > @@ -153,9 +154,9 @@ int Pwl::readYaml(const libcamera::YamlObject &params)\n> > >  \n> > >  /**\n> > >   * \\brief Append a point to the end of the piecewise linear function\n> > > - * \\param x x-coordinate of the point to add to the piecewise linear function\n> > > - * \\param y y-coordinate of the point to add to the piecewise linear function\n> > > - * \\param eps Epsilon for the minimum x distance between points (optional)\n> > > + * \\param[in] x x-coordinate of the point to add to the piecewise linear function\n> > > + * \\param[in] y y-coordinate of the point to add to the piecewise linear function\n> > > + * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n> > >   *\n> > >   * The point's x-coordinate must be greater than the x-coordinate of the last\n> > >   * (= greatest) point already in the piecewise linear function.\n> > > @@ -168,9 +169,9 @@ void Pwl::append(double x, double y, const double eps)\n> > >  \n> > >  /**\n> > >   * \\brief Prepend a point to the beginning of the piecewise linear function\n> > > - * \\param x x-coordinate of the point to add to the piecewise linear function\n> > > - * \\param y y-coordinate of the point to add to the piecewise linear function\n> > > - * \\param eps Epsilon for the minimum x distance between points (optional)\n> > > + * \\param[in] x x-coordinate of the point to add to the piecewise linear function\n> > > + * \\param[in] y y-coordinate of the point to add to the piecewise linear function\n> > > + * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n> > >   *\n> > >   * The point's x-coordinate must be less than the x-coordinate of the first\n> > >   * (= smallest) point already in the piecewise linear function.\n> > > @@ -353,7 +354,7 @@ Pwl Pwl::compose(Pwl const &other, const double eps) const\n> > >  \n> > >  /**\n> > >   * \\brief Apply function to (x, y) values at every control point\n> > > - * \\param f Function to be applied\n> > > + * \\param[in] f Function to be applied\n> > >   */\n> > >  void Pwl::map(std::function<void(double x, double y)> f) const\n> > >  {\n> > > @@ -364,9 +365,9 @@ void Pwl::map(std::function<void(double x, double y)> f) const\n> > >  /**\n> > >   * \\brief Apply function to (x, y0, y1) values wherever either Pwl has a\n> > >   * control point.\n> > > - * \\param pwl0 First piecewise linear function\n> > > - * \\param pwl1 Second piecewise linear function\n> > > - * \\param f Function to be applied\n> > > + * \\param[in] pwl0 First piecewise linear function\n> > > + * \\param[in] pwl1 Second piecewise linear function\n> > > + * \\param[in] f Function to be applied\n> > >   *\n> > >   * This applies the function \\a f to every parameter (x, y0, y1), where x is\n> > >   * the combined list of x-values from \\a pwl0 and \\a pwl1, y0 is the y-value\n> > > @@ -395,9 +396,9 @@ void Pwl::map2(Pwl const &pwl0, Pwl const &pwl1,\n> > >  \n> > >  /**\n> > >   * \\brief Combine two Pwls\n> > > - * \\param pwl0 First piecewise linear function\n> > > - * \\param pwl1 Second piecewise linear function\n> > > - * \\param f Function to be applied\n> > > + * \\param[in] pwl0 First piecewise linear function\n> > > + * \\param[in] pwl1 Second piecewise linear function\n> > > + * \\param[in] f Function to be applied\n> > >   * \\param[in] eps Epsilon for the minimum x distance between points (optional)\n> > >   *\n> > >   * Create a new Pwl where the y values are given by running \\a f wherever\n> > > @@ -418,7 +419,7 @@ Pwl Pwl::combine(Pwl const &pwl0, Pwl const &pwl1,\n> > >  \n> > >  /**\n> > >   * \\brief Multiply the piecewise linear function\n> > > - * \\param d Scalar multiplier to multiply the function by\n> > > + * \\param[in] d Scalar multiplier to multiply the function by\n> > >   * \\return This function, after it has been multiplied by \\a d\n> > >   */\n> > >  Pwl &Pwl::operator*=(double d)\n> \n> -- \n> Regards,\n> \n> Laurent Pinchart","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 CCE42BD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Jun 2024 10:55:20 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id E4CEB65462;\n\tThu, 13 Jun 2024 12:55:19 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B7358634D3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Jun 2024 12:55:17 +0200 (CEST)","from pendragon.ideasonboard.com\n\t(cpc89244-aztw30-2-0-cust6594.18-1.cable.virginm.net [86.31.185.195])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 890AE4CC;\n\tThu, 13 Jun 2024 12:55:03 +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=\"dLpWRlx6\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1718276103;\n\tbh=j1Z33YDSVosgjhDVb7CNG6yZ+SXH5KCgyMy6ttAa3+c=;\n\th=In-Reply-To:References:Subject:From:Cc:To:Date:From;\n\tb=dLpWRlx6sQDfCNlRizYpyAiLr72AgpmjCXzYNSungj56cGx4CLDCJQUJt5twWQNq6\n\tgg7LXWgveXfAlyQsj0jD3GPxnJlPLJRclRJAsDbIgu2LECQK2cQfi6WgzKJDipk+ay\n\tG+WYgp4pJSA0NjWja+ywPjv/H8hW491av3X0qgao=","Content-Type":"text/plain; charset=\"utf-8\"","MIME-Version":"1.0","Content-Transfer-Encoding":"quoted-printable","In-Reply-To":"<20240613103158.GG7291@pendragon.ideasonboard.com>","References":"<20240613013944.23344-1-laurent.pinchart@ideasonboard.com>\n\t<20240613013944.23344-6-laurent.pinchart@ideasonboard.com>\n\t<Zmqh4jgrjQhVyRxm@pyrite.rasen.tech>\n\t<20240613103158.GG7291@pendragon.ideasonboard.com>","Subject":"Re: [PATCH 05/11] ipa: libipa: pwl: Suffix \\param with direction","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org,\n\tDavid Plowman <david.plowman@raspberrypi.com>,\n\tNaushir Patuck <naush@raspberrypi.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tPaul Elder <paul.elder@ideasonboard.com>","Date":"Thu, 13 Jun 2024 11:55:14 +0100","Message-ID":"<171827611459.2248009.2847278384719310685@ping.linuxembedded.co.uk>","User-Agent":"alot/0.10","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>"}}]