From patchwork Wed Jun 11 01:32:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan O'Donoghue X-Patchwork-Id: 23507 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id D563CC3240 for ; Wed, 11 Jun 2025 01:33:01 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 58D1268DB4; Wed, 11 Jun 2025 03:33:01 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="DxItX6e+"; dkim-atps=neutral Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id E4FF668DB2 for ; Wed, 11 Jun 2025 03:32:58 +0200 (CEST) Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-3a507e88b0aso5459926f8f.1 for ; Tue, 10 Jun 2025 18:32:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1749605578; x=1750210378; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=81Ng/LIxFB09YHT8LrVidJKxmT29lxMXyQw7vM5fRDM=; b=DxItX6e+kr2d2hyJLwSE2C7xca5sR6dPTJpYzIobkwghYUx0UC1JA8XZx+X4GA8ekw e6BvI3mRKa1aOMODepDSoa7wJY/Jx/guHSKDfHehlIzbx7ox5dbLmoR16+znyh0qbMcG firtKu/gjnxn3UnerD7wG1Ed5ffJ1532o8Z3CqhrSPtTVr289Uwep8ZY/R2B4vc8ung1 mH2N2XsXWnGZXpYrLMQkeXyBoIRqt/Ai8AcSYV4786OJCiAO7YYQcN1OeAqHDlG/XyFT 6904+/xtnorf+l27d0OW9ST1LAGztePhH2lUr0HLfFpVqu2hAETam9wKqrhFSX5u805r KYVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749605578; x=1750210378; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=81Ng/LIxFB09YHT8LrVidJKxmT29lxMXyQw7vM5fRDM=; b=n5SneyPus/9wDiGnFtX1ah+hU+08sz3cQY3peY2dQhZ0GEEpMo8VhT+j8gAtqkGrMU bxqkGqucMdCLKjj9swEoQriqGGjDcarO2bLHQGwk44J0HNp5BcMDQxUA88WNAEE9NaJd i0i8tPH6ZdQJW3EvESHBajzUkTa9EO3Xcosa/unMXj4gnbgeUXzEY4+TBQ5T/JLIOPwE bWDzxasNpMJSpLjW22ARzYpmxDrJ90cDmq7DjQ4WhMz8tKuXjwlxoXQfu7I88YSIRIcH B29jw9hBK2V2061wgtSbh5z5gxjeaKRyTmRHm7WwdbGOwtvf1yqBdFiKPWRhOMYV0p97 5EVQ== X-Gm-Message-State: AOJu0YxNb89dGdkz3eJZzvuG2bZMlIZS/f75VKfZ8l6OO8nSCLsNKF6+ VypPWFNzpq6xWhpPraW6N88YBn2FKgOmnIABAscWKxqp4Ry5ID8sLmagtleQzcZr8i9MBIC8r0H DhgP31Ho= X-Gm-Gg: ASbGncvVhqhIWyiMbqjNeyuLb1impkBNg1HNca17nNRN/c4irY/v0cEhMjvu5mqPcaR k9Qef8anHmO1lSINgmLAKd7v8Od2m1bDiNTGqg+7FzHH8i11HqPP1cvXCp83yJQewYwupvNO5L8 3WkZMb+kmZMcUXODGDWHYyYlXleslQHi+/RBb7m4jQYqHaPGiTGQXM1b3E/yLLaIdsrTyxL+zOf 9pJXgFuW8ZJNNf0QL9zy69gsqrDkOmF+jup4laBvcOYPVBkITePdpn4+dU7IThNJss6afkIMyza 2Z3cP4+oZnRg+KIMDZtFXqYIS5+eyWVi86QaSKPRpfZ5CZ5U5fUAoOWHh7kBk5BKI+Rbe5enHKu NDWUWCy68kziowqA7aaM6l08jEcdscLcXFVANhi+XRQ== X-Google-Smtp-Source: AGHT+IHhXOpdsjY3UkRy751yLw8C9SSSiEEGYuX280Z7091lif4Za7c5nj07iA/r6OQfXSoutZs9qw== X-Received: by 2002:a05:6000:2411:b0:3a4:eed7:15f2 with SMTP id ffacd0b85a97d-3a558aec634mr656421f8f.43.1749605578273; Tue, 10 Jun 2025 18:32:58 -0700 (PDT) Received: from inspiron14p-linux.ht.home (188-141-3-146.dynamic.upc.ie. [188.141.3.146]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532514138asm5680625e9.3.2025.06.10.18.32.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Jun 2025 18:32:57 -0700 (PDT) From: Bryan O'Donoghue To: libcamera-devel@lists.libcamera.org Cc: Hans de Goede , Kieran Bingham , Milan Zamazal , Bryan O'Donoghue Subject: [PATCH 01/35] libcamera: swstats_cpu: Update statsProcessFn() / processLine0() documentation Date: Wed, 11 Jun 2025 02:32:11 +0100 Message-ID: <20250611013245.133785-2-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250611013245.133785-1-bryan.odonoghue@linaro.org> References: <20250611013245.133785-1-bryan.odonoghue@linaro.org> MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" From: Hans de Goede Update the documentation of the statsProcessFn() / processLine0() src[] pointer argument to take into account that swstats_cpu may also be used with planar input data or with non Bayer single plane input data. The statsProcessFn typedef is private, so no documentation is generated for it. Move the new updated src[] pointer argument documentation to processLine0() so that it gets included in the generated docs. Reviewed-by: Kieran Bingham Reviewed-by: Milan Zamazal Signed-off-by: Hans de Goede Signed-off-by: Bryan O'Donoghue --- src/libcamera/software_isp/swstats_cpu.cpp | 27 +++++++++++----------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/src/libcamera/software_isp/swstats_cpu.cpp b/src/libcamera/software_isp/swstats_cpu.cpp index c520c806..a9a3e77a 100644 --- a/src/libcamera/software_isp/swstats_cpu.cpp +++ b/src/libcamera/software_isp/swstats_cpu.cpp @@ -71,6 +71,19 @@ namespace libcamera { * patternSize height == 1. * It'll process line 0 and 1 for input formats with patternSize height >= 2. * This function may only be called after a successful setWindow() call. + * + * This function takes an array of src pointers each pointing to a line in + * the source image. + * + * Bayer input data requires (patternSize_.height + 1) src pointers, with + * the middle element of the array pointing to the actual line being processed. + * Earlier element(s) will point to the previous line(s) and later element(s) + * to the next line(s). See the DebayerCpu::debayerFn documentation for details. + * + * Planar input data requires a src pointer for each plane, with src[0] pointing + * to the line in plane 0, etc. + * + * For non Bayer single plane input data only a single src pointer is required. */ /** @@ -89,20 +102,6 @@ namespace libcamera { * \brief Signals that the statistics are ready */ -/** - * \typedef SwStatsCpu::statsProcessFn - * \brief Called when there is data to get statistics from - * \param[in] src The input data - * - * These functions take an array of (patternSize_.height + 1) src - * pointers each pointing to a line in the source image. The middle - * element of the array will point to the actual line being processed. - * Earlier element(s) will point to the previous line(s) and later - * element(s) to the next line(s). - * - * See the documentation of DebayerCpu::debayerFn for more details. - */ - /** * \var unsigned int SwStatsCpu::ySkipMask_ * \brief Skip lines where this bitmask is set in y