{"id":21736,"url":"https://patchwork.libcamera.org/api/1.1/covers/21736/?format=json","web_url":"https://patchwork.libcamera.org/cover/21736/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20241022145321.25923-1-jacopo.mondi@ideasonboard.com>","date":"2024-10-22T14:53:12","name":"[0/3] Introduce CameraSensorFactory","submitter":{"id":143,"url":"https://patchwork.libcamera.org/api/1.1/people/143/?format=json","name":"Jacopo Mondi","email":"jacopo.mondi@ideasonboard.com"},"mbox":"https://patchwork.libcamera.org/cover/21736/mbox/","series":[{"id":4736,"url":"https://patchwork.libcamera.org/api/1.1/series/4736/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4736","date":"2024-10-22T14:53:12","name":"Introduce CameraSensorFactory","version":1,"mbox":"https://patchwork.libcamera.org/series/4736/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/21736/comments/","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 5AA09BD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 22 Oct 2024 14:53:32 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 6E03C65399;\n\tTue, 22 Oct 2024 16:53:31 +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 9A48D6053E\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 22 Oct 2024 16:53:29 +0200 (CEST)","from ideasonboard.com (93-61-96-190.ip145.fastwebnet.it\n\t[93.61.96.190])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id B0042874;\n\tTue, 22 Oct 2024 16:51:42 +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=\"T/0glX/x\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1729608702;\n\tbh=BzEA5MUbiV4AKamCm248mbS1iXhLqAXmBJHNMAYYVPs=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=T/0glX/x2XJciGz0UHtViQt76EjdF5NFgWYvMPTt8Uu+lW4tcfP6HIth/ApFAbpv8\n\tqFa1MZG37Jcgmie4v+Nn4Pf3uHDl5PBSxHnz/gnNdk2cw5uiV+seQZiGdaSXRFcIsM\n\tZWBhgmi6Xs1qh4nwpjE2OXvWgIY4pyj8O3296+qU=","From":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","Subject":"[PATCH 0/3] Introduce CameraSensorFactory","Date":"Tue, 22 Oct 2024 16:53:12 +0200","Message-ID":"<20241022145321.25923-1-jacopo.mondi@ideasonboard.com>","X-Mailer":"git-send-email 2.47.0","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","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>"},"content":"The introduction of CameraSensorFactory has been proposed in many different\nseries since (!!!) 2020\n\nIn order to prepare to support RAW camera sensor models that supports multiple\ndata streams, re-propose the CameraSensorFactory to later extend it with a\nCameraSensorRaw implementation.\n\n\nJacopo Mondi (1):\n  libcamera: camera_sensor: Introduce CameraSensorFactory\n\nLaurent Pinchart (2):\n  libcamera: camera_sensor: Create abstract base class\n  libcamera: camera_sensor: Sort factories by priority\n\n Documentation/Doxyfile-internal.in            |    1 +\n include/libcamera/internal/camera_sensor.h    |  146 ++-\n src/libcamera/pipeline/imx8-isi/imx8-isi.cpp  |    9 +-\n src/libcamera/pipeline/ipu3/cio2.cpp          |    7 +-\n src/libcamera/pipeline/mali-c55/mali-c55.cpp  |    5 +-\n src/libcamera/pipeline/rkisp1/rkisp1.cpp      |    7 +-\n .../pipeline/rpi/common/pipeline_base.cpp     |    5 +-\n src/libcamera/pipeline/simple/simple.cpp      |    9 +-\n src/libcamera/pipeline/vimc/vimc.cpp          |    7 +-\n src/libcamera/sensor/camera_sensor.cpp        | 1038 +++--------------\n src/libcamera/sensor/camera_sensor_legacy.cpp | 1015 ++++++++++++++++\n src/libcamera/sensor/meson.build              |    1 +\n test/camera-sensor.cpp                        |    7 +-\n .../v4l2_videodevice_test.cpp                 |    5 +-\n test/v4l2_videodevice/v4l2_videodevice_test.h |    2 +-\n 15 files changed, 1280 insertions(+), 984 deletions(-)\n create mode 100644 src/libcamera/sensor/camera_sensor_legacy.cpp\n\n--\n2.47.0"}