From patchwork Tue Sep 24 17:14:35 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacopo Mondi X-Patchwork-Id: 1993 Return-Path: Received: from relay7-d.mail.gandi.net (relay7-d.mail.gandi.net [217.70.183.200]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 3B5FA60BCF for ; Tue, 24 Sep 2019 19:13:05 +0200 (CEST) X-Originating-IP: 213.45.248.89 Received: from uno.homenet.telecomitalia.it (host89-248-dynamic.45-213-r.retail.telecomitalia.it [213.45.248.89]) (Authenticated sender: jacopo@jmondi.org) by relay7-d.mail.gandi.net (Postfix) with ESMTPSA id E077920004 for ; Tue, 24 Sep 2019 17:13:04 +0000 (UTC) From: Jacopo Mondi To: libcamera-devel@lists.libcamera.org Date: Tue, 24 Sep 2019 19:14:35 +0200 Message-Id: <20190924171440.29758-1-jacopo@jmondi.org> X-Mailer: git-send-email 2.23.0 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 0/5] libcamera: Control framework backend rewor 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: , X-List-Received-Date: Tue, 24 Sep 2019 17:13:05 -0000 Updated version of DataValue and DataInfo series, with comments from Kieran taken in. Question on the Control and V4L2Control classes API are still open (see v1 cover letter) v1 -> v2: 1/1 -> remove rougue #if 0 -> remove copy constructor -> use sizeof(type) for DataSize 2,3,4 -> spelling and minor updates 5/5 -> Fix comments about undefined behaviour -> s/Control/ControlValue -> still a few open points in kieran's comments: - s/update/merge - mentioning of gen-controls.awk in ControlMetadata documentation Thanks j Jacopo Mondi (5): libcamera: Create DataValue and DataInfo libcamera: controls: Use DataType and DataValue libcamera: v4l2_controls: Use DataValue and DataInfo libcamera: controls: De-couple Controls from Camera libcamera: controls: Control framework refresh include/libcamera/controls.h | 95 +--- include/libcamera/data_value.h | 82 ++++ include/libcamera/meson.build | 1 + src/libcamera/controls.cpp | 429 ++++++------------ src/libcamera/data_value.cpp | 259 +++++++++++ src/libcamera/gen-controls.awk | 4 +- src/libcamera/include/v4l2_controls.h | 22 +- src/libcamera/include/v4l2_device.h | 1 - src/libcamera/meson.build | 7 +- src/libcamera/request.cpp | 4 +- src/libcamera/v4l2_controls.cpp | 49 +- src/libcamera/v4l2_device.cpp | 29 +- test/controls/control_info.cpp | 4 +- test/controls/control_list.cpp | 9 +- test/controls/meson.build | 1 - .../control_value.cpp => data_value.cpp} | 24 +- test/meson.build | 1 + 17 files changed, 554 insertions(+), 467 deletions(-) create mode 100644 include/libcamera/data_value.h create mode 100644 src/libcamera/data_value.cpp rename test/{controls/control_value.cpp => data_value.cpp} (68%) --- 2.23.0