[{"id":16323,"web_url":"https://patchwork.libcamera.org/comment/16323/","msgid":"<dc3f48db-e6fa-dd47-168b-f6a3f2aa6d35@ideasonboard.com>","date":"2021-04-16T19:40:26","subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","submitter":{"id":75,"url":"https://patchwork.libcamera.org/api/people/75/","name":"Jean-Michel Hautbois","email":"jeanmichel.hautbois@ideasonboard.com"},"content":"Hi Kieran,\n\nThanks for the patch !\n\nOn 16/04/2021 18:04, Kieran Bingham wrote:\n> Simplify name-spacing of the IPU3 components by placing it in the\n> ipa::ipu3 namespace directly.\n> \n> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n\n> ---\n>  src/ipa/ipu3/ipu3.cpp | 34 +++++++++++++++++++++-------------\n>  1 file changed, 21 insertions(+), 13 deletions(-)\n> \n> diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp\n> index 34a907f23ef5..edd325555b51 100644\n> --- a/src/ipa/ipu3/ipu3.cpp\n> +++ b/src/ipa/ipu3/ipu3.cpp\n> @@ -25,7 +25,11 @@ namespace libcamera {\n>  \n>  LOG_DEFINE_CATEGORY(IPAIPU3)\n>  \n> -class IPAIPU3 : public ipa::ipu3::IPAIPU3Interface\n> +namespace ipa {\n> +\n> +namespace ipu3 {\n> +\n> +class IPAIPU3 : public IPAIPU3Interface\n>  {\n>  public:\n>  \tint init([[maybe_unused]] const IPASettings &settings) override\n> @@ -40,7 +44,7 @@ public:\n>  \n>  \tvoid mapBuffers(const std::vector<IPABuffer> &buffers) override;\n>  \tvoid unmapBuffers(const std::vector<unsigned int> &ids) override;\n> -\tvoid processEvent(const ipa::ipu3::IPU3Event &event) override;\n> +\tvoid processEvent(const IPU3Event &event) override;\n>  \n>  private:\n>  \tvoid processControls(unsigned int frame, const ControlList &controls);\n> @@ -119,14 +123,14 @@ void IPAIPU3::unmapBuffers(const std::vector<unsigned int> &ids)\n>  \t}\n>  }\n>  \n> -void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n> +void IPAIPU3::processEvent(const IPU3Event &event)\n>  {\n>  \tswitch (event.op) {\n> -\tcase ipa::ipu3::EventProcessControls: {\n> +\tcase EventProcessControls: {\n>  \t\tprocessControls(event.frame, event.controls);\n>  \t\tbreak;\n>  \t}\n> -\tcase ipa::ipu3::EventStatReady: {\n> +\tcase EventStatReady: {\n>  \t\tauto it = buffers_.find(event.bufferId);\n>  \t\tif (it == buffers_.end()) {\n>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find stats buffer!\";\n> @@ -140,7 +144,7 @@ void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>  \t\tparseStatistics(event.frame, stats);\n>  \t\tbreak;\n>  \t}\n> -\tcase ipa::ipu3::EventFillParams: {\n> +\tcase EventFillParams: {\n>  \t\tauto it = buffers_.find(event.bufferId);\n>  \t\tif (it == buffers_.end()) {\n>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find param buffer!\";\n> @@ -173,8 +177,8 @@ void IPAIPU3::fillParams(unsigned int frame, ipu3_uapi_params *params)\n>  \n>  \t/* \\todo Fill in parameters buffer. */\n>  \n> -\tipa::ipu3::IPU3Action op;\n> -\top.op = ipa::ipu3::ActionParamFilled;\n> +\tIPU3Action op;\n> +\top.op = ActionParamFilled;\n>  \n>  \tqueueFrameAction.emit(frame, op);\n>  }\n> @@ -187,8 +191,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>  \t/* \\todo React to statistics and update internal state machine. */\n>  \t/* \\todo Add meta-data information to ctrls. */\n>  \n> -\tipa::ipu3::IPU3Action op;\n> -\top.op = ipa::ipu3::ActionMetadataReady;\n> +\tIPU3Action op;\n> +\top.op = ActionMetadataReady;\n>  \top.controls = ctrls;\n>  \n>  \tqueueFrameAction.emit(frame, op);\n> @@ -196,8 +200,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>  \n>  void IPAIPU3::setControls(unsigned int frame)\n>  {\n> -\tipa::ipu3::IPU3Action op;\n> -\top.op = ipa::ipu3::ActionSetSensorControls;\n> +\tIPU3Action op;\n> +\top.op = ActionSetSensorControls;\n>  \n>  \tControlList ctrls(ctrls_);\n>  \tctrls.set(V4L2_CID_EXPOSURE, static_cast<int32_t>(exposure_));\n> @@ -207,6 +211,10 @@ void IPAIPU3::setControls(unsigned int frame)\n>  \tqueueFrameAction.emit(frame, op);\n>  }\n>  \n> +} /* namespace ipu3 */\n> +\n> +} /* namespace ipa */\n> +\n>  /*\n>   * External IPA module interface\n>   */\n> @@ -221,7 +229,7 @@ const struct IPAModuleInfo ipaModuleInfo = {\n>  \n>  IPAInterface *ipaCreate()\n>  {\n> -\treturn new IPAIPU3();\n> +\treturn new ipa::ipu3::IPAIPU3();\n>  }\n>  }\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 2635FBD235\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 16 Apr 2021 19:40:29 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 978396880C;\n\tFri, 16 Apr 2021 21:40:28 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 925E868806\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 16 Apr 2021 21:40:27 +0200 (CEST)","from [IPv6:2a01:e0a:169:7140:5b63:445c:7960:347a] (unknown\n\t[IPv6:2a01:e0a:169:7140:5b63:445c:7960:347a])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 2F8995A5;\n\tFri, 16 Apr 2021 21:40:27 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"wfaGiV/t\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618602027;\n\tbh=zkpgoZkElxsXyVuqUQWIBeprWeWk5hbr5ODW1rKt0oo=;\n\th=Subject:To:References:From:Date:In-Reply-To:From;\n\tb=wfaGiV/t6JXd96SvVzQqVGcvfcEBgD3HJkhCczSqbQCWiWFqxmQRDde9Mx9PwZpPT\n\tuDO9pp0uGSxq7YRdGInhiuPf5oKBT45ECsm2K6lZwe1+guUpnnkkcH9K0apUXO1ZcD\n\th7NIOWsjEB/jNUJMk8LJ5SjZuVE3dhHu9MhEc02U=","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>,\n\tlibcamera devel <libcamera-devel@lists.libcamera.org>","References":"<20210416160411.68226-1-kieran.bingham@ideasonboard.com>","From":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>","Message-ID":"<dc3f48db-e6fa-dd47-168b-f6a3f2aa6d35@ideasonboard.com>","Date":"Fri, 16 Apr 2021 21:40:26 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.7.1","MIME-Version":"1.0","In-Reply-To":"<20210416160411.68226-1-kieran.bingham@ideasonboard.com>","Content-Language":"en-US","Subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","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>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":16324,"web_url":"https://patchwork.libcamera.org/comment/16324/","msgid":"<df05fa49-1d79-e7e9-e4dd-59fa729841d0@ideasonboard.com>","date":"2021-04-16T19:43:01","subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","submitter":{"id":75,"url":"https://patchwork.libcamera.org/api/people/75/","name":"Jean-Michel Hautbois","email":"jeanmichel.hautbois@ideasonboard.com"},"content":"JM, I think you missed a line ?\n\nOn 16/04/2021 21:40, Jean-Michel Hautbois wrote:\n> Hi Kieran,\n> \n> Thanks for the patch !\n> \n> On 16/04/2021 18:04, Kieran Bingham wrote:\n>> Simplify name-spacing of the IPU3 components by placing it in the\n>> ipa::ipu3 namespace directly.\n>>\n>> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\nReviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n>> ---\n>>  src/ipa/ipu3/ipu3.cpp | 34 +++++++++++++++++++++-------------\n>>  1 file changed, 21 insertions(+), 13 deletions(-)\n>>\n>> diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp\n>> index 34a907f23ef5..edd325555b51 100644\n>> --- a/src/ipa/ipu3/ipu3.cpp\n>> +++ b/src/ipa/ipu3/ipu3.cpp\n>> @@ -25,7 +25,11 @@ namespace libcamera {\n>>  \n>>  LOG_DEFINE_CATEGORY(IPAIPU3)\n>>  \n>> -class IPAIPU3 : public ipa::ipu3::IPAIPU3Interface\n>> +namespace ipa {\n>> +\n>> +namespace ipu3 {\n>> +\n>> +class IPAIPU3 : public IPAIPU3Interface\n>>  {\n>>  public:\n>>  \tint init([[maybe_unused]] const IPASettings &settings) override\n>> @@ -40,7 +44,7 @@ public:\n>>  \n>>  \tvoid mapBuffers(const std::vector<IPABuffer> &buffers) override;\n>>  \tvoid unmapBuffers(const std::vector<unsigned int> &ids) override;\n>> -\tvoid processEvent(const ipa::ipu3::IPU3Event &event) override;\n>> +\tvoid processEvent(const IPU3Event &event) override;\n>>  \n>>  private:\n>>  \tvoid processControls(unsigned int frame, const ControlList &controls);\n>> @@ -119,14 +123,14 @@ void IPAIPU3::unmapBuffers(const std::vector<unsigned int> &ids)\n>>  \t}\n>>  }\n>>  \n>> -void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>> +void IPAIPU3::processEvent(const IPU3Event &event)\n>>  {\n>>  \tswitch (event.op) {\n>> -\tcase ipa::ipu3::EventProcessControls: {\n>> +\tcase EventProcessControls: {\n>>  \t\tprocessControls(event.frame, event.controls);\n>>  \t\tbreak;\n>>  \t}\n>> -\tcase ipa::ipu3::EventStatReady: {\n>> +\tcase EventStatReady: {\n>>  \t\tauto it = buffers_.find(event.bufferId);\n>>  \t\tif (it == buffers_.end()) {\n>>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find stats buffer!\";\n>> @@ -140,7 +144,7 @@ void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>>  \t\tparseStatistics(event.frame, stats);\n>>  \t\tbreak;\n>>  \t}\n>> -\tcase ipa::ipu3::EventFillParams: {\n>> +\tcase EventFillParams: {\n>>  \t\tauto it = buffers_.find(event.bufferId);\n>>  \t\tif (it == buffers_.end()) {\n>>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find param buffer!\";\n>> @@ -173,8 +177,8 @@ void IPAIPU3::fillParams(unsigned int frame, ipu3_uapi_params *params)\n>>  \n>>  \t/* \\todo Fill in parameters buffer. */\n>>  \n>> -\tipa::ipu3::IPU3Action op;\n>> -\top.op = ipa::ipu3::ActionParamFilled;\n>> +\tIPU3Action op;\n>> +\top.op = ActionParamFilled;\n>>  \n>>  \tqueueFrameAction.emit(frame, op);\n>>  }\n>> @@ -187,8 +191,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>>  \t/* \\todo React to statistics and update internal state machine. */\n>>  \t/* \\todo Add meta-data information to ctrls. */\n>>  \n>> -\tipa::ipu3::IPU3Action op;\n>> -\top.op = ipa::ipu3::ActionMetadataReady;\n>> +\tIPU3Action op;\n>> +\top.op = ActionMetadataReady;\n>>  \top.controls = ctrls;\n>>  \n>>  \tqueueFrameAction.emit(frame, op);\n>> @@ -196,8 +200,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>>  \n>>  void IPAIPU3::setControls(unsigned int frame)\n>>  {\n>> -\tipa::ipu3::IPU3Action op;\n>> -\top.op = ipa::ipu3::ActionSetSensorControls;\n>> +\tIPU3Action op;\n>> +\top.op = ActionSetSensorControls;\n>>  \n>>  \tControlList ctrls(ctrls_);\n>>  \tctrls.set(V4L2_CID_EXPOSURE, static_cast<int32_t>(exposure_));\n>> @@ -207,6 +211,10 @@ void IPAIPU3::setControls(unsigned int frame)\n>>  \tqueueFrameAction.emit(frame, op);\n>>  }\n>>  \n>> +} /* namespace ipu3 */\n>> +\n>> +} /* namespace ipa */\n>> +\n>>  /*\n>>   * External IPA module interface\n>>   */\n>> @@ -221,7 +229,7 @@ const struct IPAModuleInfo ipaModuleInfo = {\n>>  \n>>  IPAInterface *ipaCreate()\n>>  {\n>> -\treturn new IPAIPU3();\n>> +\treturn new ipa::ipu3::IPAIPU3();\n>>  }\n>>  }\n>>  \n>>\n> _______________________________________________\n> libcamera-devel mailing list\n> libcamera-devel@lists.libcamera.org\n> https://lists.libcamera.org/listinfo/libcamera-devel\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 A4960BD235\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 16 Apr 2021 19:43:03 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 347656880A;\n\tFri, 16 Apr 2021 21:43:03 +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 0CA1D68806\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 16 Apr 2021 21:43:02 +0200 (CEST)","from [IPv6:2a01:e0a:169:7140:5b63:445c:7960:347a] (unknown\n\t[IPv6:2a01:e0a:169:7140:5b63:445c:7960:347a])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id A934E5A5;\n\tFri, 16 Apr 2021 21:43:01 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"PundwPFW\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618602181;\n\tbh=EEHDWvL+xxrzc1vOOD5gntdFcikMJZJ1HhWZjbuidHc=;\n\th=Subject:From:To:References:Date:In-Reply-To:From;\n\tb=PundwPFWwd5xtNDKnMnwJmUXzEf+9Kcu/JMMeGKsofSzhANQN1pOF0YCVMpVLD/e3\n\tqjLDad5dwjb59uYuedMCpQzoHXaBWX958Hqzcl0nbVGDkpdcPc+D71NeTtS2Fwlmyl\n\tu04SHTdhT2Xdtgnq0BKgMqe4vNRlIF1W9D7RebOA=","From":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>,\n\tlibcamera devel <libcamera-devel@lists.libcamera.org>","References":"<20210416160411.68226-1-kieran.bingham@ideasonboard.com>\n\t<dc3f48db-e6fa-dd47-168b-f6a3f2aa6d35@ideasonboard.com>","Message-ID":"<df05fa49-1d79-e7e9-e4dd-59fa729841d0@ideasonboard.com>","Date":"Fri, 16 Apr 2021 21:43:01 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.7.1","MIME-Version":"1.0","In-Reply-To":"<dc3f48db-e6fa-dd47-168b-f6a3f2aa6d35@ideasonboard.com>","Content-Language":"en-US","Subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","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>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":16329,"web_url":"https://patchwork.libcamera.org/comment/16329/","msgid":"<YHoMNDRJsWSuUWce@pendragon.ideasonboard.com>","date":"2021-04-16T22:14:12","subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Kieran,\n\nThank you for the patch.\n\nOn Fri, Apr 16, 2021 at 05:04:11PM +0100, Kieran Bingham wrote:\n> Simplify name-spacing of the IPU3 components by placing it in the\n> ipa::ipu3 namespace directly.\n> \n> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n> ---\n>  src/ipa/ipu3/ipu3.cpp | 34 +++++++++++++++++++++-------------\n>  1 file changed, 21 insertions(+), 13 deletions(-)\n> \n> diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp\n> index 34a907f23ef5..edd325555b51 100644\n> --- a/src/ipa/ipu3/ipu3.cpp\n> +++ b/src/ipa/ipu3/ipu3.cpp\n> @@ -25,7 +25,11 @@ namespace libcamera {\n>  \n>  LOG_DEFINE_CATEGORY(IPAIPU3)\n>  \n> -class IPAIPU3 : public ipa::ipu3::IPAIPU3Interface\n> +namespace ipa {\n> +\n> +namespace ipu3 {\n\nI think you can write this\n\nnamespace ipa::ipu3 {\n\nin C++17.\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n> +\n> +class IPAIPU3 : public IPAIPU3Interface\n>  {\n>  public:\n>  \tint init([[maybe_unused]] const IPASettings &settings) override\n> @@ -40,7 +44,7 @@ public:\n>  \n>  \tvoid mapBuffers(const std::vector<IPABuffer> &buffers) override;\n>  \tvoid unmapBuffers(const std::vector<unsigned int> &ids) override;\n> -\tvoid processEvent(const ipa::ipu3::IPU3Event &event) override;\n> +\tvoid processEvent(const IPU3Event &event) override;\n>  \n>  private:\n>  \tvoid processControls(unsigned int frame, const ControlList &controls);\n> @@ -119,14 +123,14 @@ void IPAIPU3::unmapBuffers(const std::vector<unsigned int> &ids)\n>  \t}\n>  }\n>  \n> -void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n> +void IPAIPU3::processEvent(const IPU3Event &event)\n>  {\n>  \tswitch (event.op) {\n> -\tcase ipa::ipu3::EventProcessControls: {\n> +\tcase EventProcessControls: {\n>  \t\tprocessControls(event.frame, event.controls);\n>  \t\tbreak;\n>  \t}\n> -\tcase ipa::ipu3::EventStatReady: {\n> +\tcase EventStatReady: {\n>  \t\tauto it = buffers_.find(event.bufferId);\n>  \t\tif (it == buffers_.end()) {\n>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find stats buffer!\";\n> @@ -140,7 +144,7 @@ void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>  \t\tparseStatistics(event.frame, stats);\n>  \t\tbreak;\n>  \t}\n> -\tcase ipa::ipu3::EventFillParams: {\n> +\tcase EventFillParams: {\n>  \t\tauto it = buffers_.find(event.bufferId);\n>  \t\tif (it == buffers_.end()) {\n>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find param buffer!\";\n> @@ -173,8 +177,8 @@ void IPAIPU3::fillParams(unsigned int frame, ipu3_uapi_params *params)\n>  \n>  \t/* \\todo Fill in parameters buffer. */\n>  \n> -\tipa::ipu3::IPU3Action op;\n> -\top.op = ipa::ipu3::ActionParamFilled;\n> +\tIPU3Action op;\n> +\top.op = ActionParamFilled;\n>  \n>  \tqueueFrameAction.emit(frame, op);\n>  }\n> @@ -187,8 +191,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>  \t/* \\todo React to statistics and update internal state machine. */\n>  \t/* \\todo Add meta-data information to ctrls. */\n>  \n> -\tipa::ipu3::IPU3Action op;\n> -\top.op = ipa::ipu3::ActionMetadataReady;\n> +\tIPU3Action op;\n> +\top.op = ActionMetadataReady;\n>  \top.controls = ctrls;\n>  \n>  \tqueueFrameAction.emit(frame, op);\n> @@ -196,8 +200,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>  \n>  void IPAIPU3::setControls(unsigned int frame)\n>  {\n> -\tipa::ipu3::IPU3Action op;\n> -\top.op = ipa::ipu3::ActionSetSensorControls;\n> +\tIPU3Action op;\n> +\top.op = ActionSetSensorControls;\n>  \n>  \tControlList ctrls(ctrls_);\n>  \tctrls.set(V4L2_CID_EXPOSURE, static_cast<int32_t>(exposure_));\n> @@ -207,6 +211,10 @@ void IPAIPU3::setControls(unsigned int frame)\n>  \tqueueFrameAction.emit(frame, op);\n>  }\n>  \n> +} /* namespace ipu3 */\n> +\n> +} /* namespace ipa */\n> +\n>  /*\n>   * External IPA module interface\n>   */\n> @@ -221,7 +229,7 @@ const struct IPAModuleInfo ipaModuleInfo = {\n>  \n>  IPAInterface *ipaCreate()\n>  {\n> -\treturn new IPAIPU3();\n> +\treturn new ipa::ipu3::IPAIPU3();\n>  }\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 5F792BD235\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 16 Apr 2021 22:14:17 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id CC8F86880C;\n\tSat, 17 Apr 2021 00:14:16 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 9D702687F3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 17 Apr 2021 00:14:15 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 17E3D51E;\n\tSat, 17 Apr 2021 00:14:15 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"oKlRY2IV\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618611255;\n\tbh=LQtu0ARWa7HrUUlMRhk8S/Bstef8ED3yW1WaPFVTtbQ=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=oKlRY2IVFFhbGjIgxCSkyTW1Miq4YHvrmSRH9QigyndD13ppNLAhdMINV9SQfj5OY\n\tP4qhyUn9F9cR52siUNiGHJnZG2XUveqNHZZ+dRcpO8q8WkE2TePoITnAmsqqSjdJ3i\n\t0tpddnwQzl9a5be6cejPCEWIFjQjdZW+37xl1/4o=","Date":"Sat, 17 Apr 2021 01:14:12 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<YHoMNDRJsWSuUWce@pendragon.ideasonboard.com>","References":"<20210416160411.68226-1-kieran.bingham@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210416160411.68226-1-kieran.bingham@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","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>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":16330,"web_url":"https://patchwork.libcamera.org/comment/16330/","msgid":"<2896dd86-7786-0d5d-af2c-87cdd344a3e6@ideasonboard.com>","date":"2021-04-16T22:25:32","subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi Laurent,\n\nOn 16/04/2021 23:14, Laurent Pinchart wrote:\n> Hi Kieran,\n> \n> Thank you for the patch.\n> \n> On Fri, Apr 16, 2021 at 05:04:11PM +0100, Kieran Bingham wrote:\n>> Simplify name-spacing of the IPU3 components by placing it in the\n>> ipa::ipu3 namespace directly.\n>>\n>> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n>> ---\n>>  src/ipa/ipu3/ipu3.cpp | 34 +++++++++++++++++++++-------------\n>>  1 file changed, 21 insertions(+), 13 deletions(-)\n>>\n>> diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp\n>> index 34a907f23ef5..edd325555b51 100644\n>> --- a/src/ipa/ipu3/ipu3.cpp\n>> +++ b/src/ipa/ipu3/ipu3.cpp\n>> @@ -25,7 +25,11 @@ namespace libcamera {\n>>  \n>>  LOG_DEFINE_CATEGORY(IPAIPU3)\n>>  \n>> -class IPAIPU3 : public ipa::ipu3::IPAIPU3Interface\n>> +namespace ipa {\n>> +\n>> +namespace ipu3 {\n> \n> I think you can write this\n> \n> namespace ipa::ipu3 {\n> \n\nAh yes, and I've tried to move towards that in other (internal) places\ntoo, so I've missed this one.\n\nI think it's better, so I'll update it.\n--\nKieran\n\n\n> in C++17.\n> \n> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> \n>> +\n>> +class IPAIPU3 : public IPAIPU3Interface\n>>  {\n>>  public:\n>>  \tint init([[maybe_unused]] const IPASettings &settings) override\n>> @@ -40,7 +44,7 @@ public:\n>>  \n>>  \tvoid mapBuffers(const std::vector<IPABuffer> &buffers) override;\n>>  \tvoid unmapBuffers(const std::vector<unsigned int> &ids) override;\n>> -\tvoid processEvent(const ipa::ipu3::IPU3Event &event) override;\n>> +\tvoid processEvent(const IPU3Event &event) override;\n>>  \n>>  private:\n>>  \tvoid processControls(unsigned int frame, const ControlList &controls);\n>> @@ -119,14 +123,14 @@ void IPAIPU3::unmapBuffers(const std::vector<unsigned int> &ids)\n>>  \t}\n>>  }\n>>  \n>> -void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>> +void IPAIPU3::processEvent(const IPU3Event &event)\n>>  {\n>>  \tswitch (event.op) {\n>> -\tcase ipa::ipu3::EventProcessControls: {\n>> +\tcase EventProcessControls: {\n>>  \t\tprocessControls(event.frame, event.controls);\n>>  \t\tbreak;\n>>  \t}\n>> -\tcase ipa::ipu3::EventStatReady: {\n>> +\tcase EventStatReady: {\n>>  \t\tauto it = buffers_.find(event.bufferId);\n>>  \t\tif (it == buffers_.end()) {\n>>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find stats buffer!\";\n>> @@ -140,7 +144,7 @@ void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>>  \t\tparseStatistics(event.frame, stats);\n>>  \t\tbreak;\n>>  \t}\n>> -\tcase ipa::ipu3::EventFillParams: {\n>> +\tcase EventFillParams: {\n>>  \t\tauto it = buffers_.find(event.bufferId);\n>>  \t\tif (it == buffers_.end()) {\n>>  \t\t\tLOG(IPAIPU3, Error) << \"Could not find param buffer!\";\n>> @@ -173,8 +177,8 @@ void IPAIPU3::fillParams(unsigned int frame, ipu3_uapi_params *params)\n>>  \n>>  \t/* \\todo Fill in parameters buffer. */\n>>  \n>> -\tipa::ipu3::IPU3Action op;\n>> -\top.op = ipa::ipu3::ActionParamFilled;\n>> +\tIPU3Action op;\n>> +\top.op = ActionParamFilled;\n>>  \n>>  \tqueueFrameAction.emit(frame, op);\n>>  }\n>> @@ -187,8 +191,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>>  \t/* \\todo React to statistics and update internal state machine. */\n>>  \t/* \\todo Add meta-data information to ctrls. */\n>>  \n>> -\tipa::ipu3::IPU3Action op;\n>> -\top.op = ipa::ipu3::ActionMetadataReady;\n>> +\tIPU3Action op;\n>> +\top.op = ActionMetadataReady;\n>>  \top.controls = ctrls;\n>>  \n>>  \tqueueFrameAction.emit(frame, op);\n>> @@ -196,8 +200,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>>  \n>>  void IPAIPU3::setControls(unsigned int frame)\n>>  {\n>> -\tipa::ipu3::IPU3Action op;\n>> -\top.op = ipa::ipu3::ActionSetSensorControls;\n>> +\tIPU3Action op;\n>> +\top.op = ActionSetSensorControls;\n>>  \n>>  \tControlList ctrls(ctrls_);\n>>  \tctrls.set(V4L2_CID_EXPOSURE, static_cast<int32_t>(exposure_));\n>> @@ -207,6 +211,10 @@ void IPAIPU3::setControls(unsigned int frame)\n>>  \tqueueFrameAction.emit(frame, op);\n>>  }\n>>  \n>> +} /* namespace ipu3 */\n>> +\n>> +} /* namespace ipa */\n>> +\n>>  /*\n>>   * External IPA module interface\n>>   */\n>> @@ -221,7 +229,7 @@ const struct IPAModuleInfo ipaModuleInfo = {\n>>  \n>>  IPAInterface *ipaCreate()\n>>  {\n>> -\treturn new IPAIPU3();\n>> +\treturn new ipa::ipu3::IPAIPU3();\n>>  }\n>>  }\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 9C605BD237\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 16 Apr 2021 22:25:37 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 21ABD6880C;\n\tSat, 17 Apr 2021 00:25:37 +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 A9F3E687F3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 17 Apr 2021 00:25:35 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 3AEB658E;\n\tSat, 17 Apr 2021 00:25:35 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"iRPZ2MMa\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618611935;\n\tbh=Q8az7USm41BPWmy3N8+oiFuHFKSQnrPFYbINAN/A9Bg=;\n\th=Reply-To:Subject:To:Cc:References:From:Date:In-Reply-To:From;\n\tb=iRPZ2MMauRqvZiPpeJWX6plbVpQGG1thRkKGDuLwRKsYRCqWZLKwqTUCa5wXHh4d2\n\tOdAmZHsY5Sqw6Om2ctgvwbRrflSpxHi26YUp0y8QMbcCwbPjQZNgQ4pQ9FTyjmhxSo\n\tNuYypEEAglWbspTd56cioyB2URHxbElvqdfu8dXY=","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","References":"<20210416160411.68226-1-kieran.bingham@ideasonboard.com>\n\t<YHoMNDRJsWSuUWce@pendragon.ideasonboard.com>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Organization":"Ideas on Board","Message-ID":"<2896dd86-7786-0d5d-af2c-87cdd344a3e6@ideasonboard.com>","Date":"Fri, 16 Apr 2021 23:25:32 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.7.1","MIME-Version":"1.0","In-Reply-To":"<YHoMNDRJsWSuUWce@pendragon.ideasonboard.com>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","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>","Reply-To":"kieran.bingham@ideasonboard.com","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":16342,"web_url":"https://patchwork.libcamera.org/comment/16342/","msgid":"<d169bfbe-24bc-05b3-5544-9f016b4432ad@ideasonboard.com>","date":"2021-04-19T08:01:46","subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","submitter":{"id":86,"url":"https://patchwork.libcamera.org/api/people/86/","name":"Umang Jain","email":"umang.jain@ideasonboard.com"},"content":"On 4/17/21 3:55 AM, Kieran Bingham wrote:\n> Hi Laurent,\n>\n> On 16/04/2021 23:14, Laurent Pinchart wrote:\n>> Hi Kieran,\n>>\n>> Thank you for the patch.\n>>\n>> On Fri, Apr 16, 2021 at 05:04:11PM +0100, Kieran Bingham wrote:\n>>> Simplify name-spacing of the IPU3 components by placing it in the\n>>> ipa::ipu3 namespace directly.\n>>>\n>>> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n>>> ---\n>>>   src/ipa/ipu3/ipu3.cpp | 34 +++++++++++++++++++++-------------\n>>>   1 file changed, 21 insertions(+), 13 deletions(-)\n>>>\n>>> diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp\n>>> index 34a907f23ef5..edd325555b51 100644\n>>> --- a/src/ipa/ipu3/ipu3.cpp\n>>> +++ b/src/ipa/ipu3/ipu3.cpp\n>>> @@ -25,7 +25,11 @@ namespace libcamera {\n>>>   \n>>>   LOG_DEFINE_CATEGORY(IPAIPU3)\n>>>   \n>>> -class IPAIPU3 : public ipa::ipu3::IPAIPU3Interface\n>>> +namespace ipa {\n>>> +\n>>> +namespace ipu3 {\n>> I think you can write this\n>>\n>> namespace ipa::ipu3 {\n>>\n> Ah yes, and I've tried to move towards that in other (internal) places\n> too, so I've missed this one.\n>\n> I think it's better, so I'll update it.\nyes, I was about to ask you the namespacing style is going a bit \ndifferent for our different components. But it's already noticed, cool\n\nReviewed-by: Umang Jain <umang.jain@ideasonboard.com>\n> --\n> Kieran\n>\n>\n>> in C++17.\n>>\n>> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n>>\n>>> +\n>>> +class IPAIPU3 : public IPAIPU3Interface\n>>>   {\n>>>   public:\n>>>   \tint init([[maybe_unused]] const IPASettings &settings) override\n>>> @@ -40,7 +44,7 @@ public:\n>>>   \n>>>   \tvoid mapBuffers(const std::vector<IPABuffer> &buffers) override;\n>>>   \tvoid unmapBuffers(const std::vector<unsigned int> &ids) override;\n>>> -\tvoid processEvent(const ipa::ipu3::IPU3Event &event) override;\n>>> +\tvoid processEvent(const IPU3Event &event) override;\n>>>   \n>>>   private:\n>>>   \tvoid processControls(unsigned int frame, const ControlList &controls);\n>>> @@ -119,14 +123,14 @@ void IPAIPU3::unmapBuffers(const std::vector<unsigned int> &ids)\n>>>   \t}\n>>>   }\n>>>   \n>>> -void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>>> +void IPAIPU3::processEvent(const IPU3Event &event)\n>>>   {\n>>>   \tswitch (event.op) {\n>>> -\tcase ipa::ipu3::EventProcessControls: {\n>>> +\tcase EventProcessControls: {\n>>>   \t\tprocessControls(event.frame, event.controls);\n>>>   \t\tbreak;\n>>>   \t}\n>>> -\tcase ipa::ipu3::EventStatReady: {\n>>> +\tcase EventStatReady: {\n>>>   \t\tauto it = buffers_.find(event.bufferId);\n>>>   \t\tif (it == buffers_.end()) {\n>>>   \t\t\tLOG(IPAIPU3, Error) << \"Could not find stats buffer!\";\n>>> @@ -140,7 +144,7 @@ void IPAIPU3::processEvent(const ipa::ipu3::IPU3Event &event)\n>>>   \t\tparseStatistics(event.frame, stats);\n>>>   \t\tbreak;\n>>>   \t}\n>>> -\tcase ipa::ipu3::EventFillParams: {\n>>> +\tcase EventFillParams: {\n>>>   \t\tauto it = buffers_.find(event.bufferId);\n>>>   \t\tif (it == buffers_.end()) {\n>>>   \t\t\tLOG(IPAIPU3, Error) << \"Could not find param buffer!\";\n>>> @@ -173,8 +177,8 @@ void IPAIPU3::fillParams(unsigned int frame, ipu3_uapi_params *params)\n>>>   \n>>>   \t/* \\todo Fill in parameters buffer. */\n>>>   \n>>> -\tipa::ipu3::IPU3Action op;\n>>> -\top.op = ipa::ipu3::ActionParamFilled;\n>>> +\tIPU3Action op;\n>>> +\top.op = ActionParamFilled;\n>>>   \n>>>   \tqueueFrameAction.emit(frame, op);\n>>>   }\n>>> @@ -187,8 +191,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>>>   \t/* \\todo React to statistics and update internal state machine. */\n>>>   \t/* \\todo Add meta-data information to ctrls. */\n>>>   \n>>> -\tipa::ipu3::IPU3Action op;\n>>> -\top.op = ipa::ipu3::ActionMetadataReady;\n>>> +\tIPU3Action op;\n>>> +\top.op = ActionMetadataReady;\n>>>   \top.controls = ctrls;\n>>>   \n>>>   \tqueueFrameAction.emit(frame, op);\n>>> @@ -196,8 +200,8 @@ void IPAIPU3::parseStatistics(unsigned int frame,\n>>>   \n>>>   void IPAIPU3::setControls(unsigned int frame)\n>>>   {\n>>> -\tipa::ipu3::IPU3Action op;\n>>> -\top.op = ipa::ipu3::ActionSetSensorControls;\n>>> +\tIPU3Action op;\n>>> +\top.op = ActionSetSensorControls;\n>>>   \n>>>   \tControlList ctrls(ctrls_);\n>>>   \tctrls.set(V4L2_CID_EXPOSURE, static_cast<int32_t>(exposure_));\n>>> @@ -207,6 +211,10 @@ void IPAIPU3::setControls(unsigned int frame)\n>>>   \tqueueFrameAction.emit(frame, op);\n>>>   }\n>>>   \n>>> +} /* namespace ipu3 */\n>>> +\n>>> +} /* namespace ipa */\n>>> +\n>>>   /*\n>>>    * External IPA module interface\n>>>    */\n>>> @@ -221,7 +229,7 @@ const struct IPAModuleInfo ipaModuleInfo = {\n>>>   \n>>>   IPAInterface *ipaCreate()\n>>>   {\n>>> -\treturn new IPAIPU3();\n>>> +\treturn new ipa::ipu3::IPAIPU3();\n>>>   }\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 0163DBD814\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 19 Apr 2021 08:01:55 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id ED48C687F3;\n\tMon, 19 Apr 2021 10:01:54 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id CF31B60364\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 19 Apr 2021 10:01:52 +0200 (CEST)","from localhost.localdomain (unknown [103.251.226.21])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id CAC7A897\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 19 Apr 2021 10:01:51 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"Vg3xJZn4\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618819312;\n\tbh=ZDjzF7JbFJ1fkic0fWvFAMz6T7pBDARqpaS7EclT0ak=;\n\th=Subject:To:References:From:Date:In-Reply-To:From;\n\tb=Vg3xJZn4xtT9KfnoBMxDHIUzW9uKYVcYVulYGJNcm7/sa6Z9nFxHjZurc63Y5Sr7c\n\tSE0ugFq5krpUrUbRo+AmE85TjfCBkv10R7zp2zHSPNP33XZGB85ML7G9GdCAElXQl6\n\tu1+vg2O8Hd7gi/dvuVhHHUQmkzKDnVGeG20f80mc=","To":"libcamera-devel@lists.libcamera.org","References":"<20210416160411.68226-1-kieran.bingham@ideasonboard.com>\n\t<YHoMNDRJsWSuUWce@pendragon.ideasonboard.com>\n\t<2896dd86-7786-0d5d-af2c-87cdd344a3e6@ideasonboard.com>","From":"Umang Jain <umang.jain@ideasonboard.com>","Message-ID":"<d169bfbe-24bc-05b3-5544-9f016b4432ad@ideasonboard.com>","Date":"Mon, 19 Apr 2021 13:31:46 +0530","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101\n\tThunderbird/68.11.0","MIME-Version":"1.0","In-Reply-To":"<2896dd86-7786-0d5d-af2c-87cdd344a3e6@ideasonboard.com>","Content-Language":"en-US","Subject":"Re: [libcamera-devel] [PATCH] ipa: ipu3: Move the IPA to the\n\tipa::ipu3 namespace","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>","Content-Transfer-Encoding":"7bit","Content-Type":"text/plain; charset=\"us-ascii\"; Format=\"flowed\"","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]