[{"id":14669,"web_url":"https://patchwork.libcamera.org/comment/14669/","msgid":"<YAnyzRkeK+tT26/k@pendragon.ideasonboard.com>","date":"2021-01-21T21:31:57","subject":"Re: [libcamera-devel] [PATCH 1/7] android: camera_metadata: Add\n\tcopy constructor and getEntry","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Jacopo,\n\nThank you for the patch.\n\nOn Thu, Jan 21, 2021 at 05:52:59PM +0100, Jacopo Mondi wrote:\n> From: Paul Elder <paul.elder@ideasonboard.com>\n> \n> Add a copy constructor and assignment operator to CameraMetadata, as well\n> a constructor from camera_metadata_t. Also add a function getEntry to\n> allow getting metadata entries from CameraMetadata. This allows us to\n> use CameraMetadata for reading from camera_metadata_t.\n> \n> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>\n> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n> ---\n>  src/android/camera_metadata.cpp | 33 +++++++++++++++++++++++++++++++++\n>  src/android/camera_metadata.h   |  5 +++++\n>  2 files changed, 38 insertions(+)\n> \n> diff --git a/src/android/camera_metadata.cpp b/src/android/camera_metadata.cpp\n> index edea48fe5581..8e36e758d231 100644\n> --- a/src/android/camera_metadata.cpp\n> +++ b/src/android/camera_metadata.cpp\n> @@ -19,12 +19,45 @@ CameraMetadata::CameraMetadata(size_t entryCapacity, size_t dataCapacity)\n>  \tvalid_ = metadata_ != nullptr;\n>  }\n>  \n> +CameraMetadata::CameraMetadata(const camera_metadata_t *metadata)\n> +{\n> +\tmetadata_ = clone_camera_metadata(metadata);\n> +\tvalid_ = metadata_ != nullptr;\n> +}\n> +\n> +CameraMetadata::CameraMetadata(const CameraMetadata &other)\n> +\t: CameraMetadata(other.get())\n> +{\n> +}\n> +\n>  CameraMetadata::~CameraMetadata()\n>  {\n>  \tif (metadata_)\n>  \t\tfree_camera_metadata(metadata_);\n>  }\n>  \n> +CameraMetadata &CameraMetadata::operator=(const CameraMetadata &other)\n> +{\n> +\tif (this == &other)\n> +\t\treturn *this;\n> +\n> +\tif (metadata_)\n> +\t\tfree_camera_metadata(metadata_);\n> +\n> +\tmetadata_ = clone_camera_metadata(other.get());\n> +\tvalid_ = metadata_ != nullptr;\n> +\n> +\treturn *this;\n> +}\n> +\n> +bool CameraMetadata::getEntry(uint32_t tag, camera_metadata_ro_entry_t *entry) const\n> +{\n> +\tif (find_camera_metadata_ro_entry(metadata_, tag, entry))\n> +\t\treturn false;\n> +\n> +\treturn true;\n> +}\n> +\n>  bool CameraMetadata::addEntry(uint32_t tag, const void *data, size_t count)\n>  {\n>  \tif (!valid_)\n> diff --git a/src/android/camera_metadata.h b/src/android/camera_metadata.h\n> index 9d047b1bb534..720b760d44da 100644\n> --- a/src/android/camera_metadata.h\n> +++ b/src/android/camera_metadata.h\n> @@ -15,9 +15,14 @@ class CameraMetadata\n>  {\n>  public:\n>  \tCameraMetadata(size_t entryCapacity, size_t dataCapacity);\n> +\tCameraMetadata(const camera_metadata_t *metadata);\n> +\tCameraMetadata(const CameraMetadata &other);\n>  \t~CameraMetadata();\n>  \n> +\tCameraMetadata &operator=(const CameraMetadata &other);\n> +\n>  \tbool isValid() const { return valid_; }\n> +\tbool getEntry(uint32_t tag, camera_metadata_ro_entry_t *entry) const;\n>  \tbool addEntry(uint32_t tag, const void *data, size_t data_count);\n>  \tbool updateEntry(uint32_t tag, const void *data, size_t data_count);\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 98EB9BD808\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 21 Jan 2021 21:32:17 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 11D836821B;\n\tThu, 21 Jan 2021 22:32:17 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id BCABF68204\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 21 Jan 2021 22:32:15 +0100 (CET)","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 2429650E;\n\tThu, 21 Jan 2021 22:32:15 +0100 (CET)"],"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=\"W87Zn3SA\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1611264735;\n\tbh=R1diLHcx+YcBIzU2QIXnmea7DkjUjPvi+q8ZmTJZeqM=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=W87Zn3SAkH3JXhRCQID0WFMaAR8NkpiG/EcYm4DCkHProETiwF4wnyeQDMtSSIt7K\n\t58nS4gYYhwgkBHdWvFIJURlBmbUQjv3XQaudztGmCkNyCTP1jD7YEWPjkvJp4YUwU2\n\tX0xe+rA14hyRmt2x2xaCx076eZugYPSi+rRpI+DU=","Date":"Thu, 21 Jan 2021 23:31:57 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Jacopo Mondi <jacopo@jmondi.org>","Message-ID":"<YAnyzRkeK+tT26/k@pendragon.ideasonboard.com>","References":"<20210121165305.367801-1-jacopo@jmondi.org>\n\t<20210121165305.367801-2-jacopo@jmondi.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210121165305.367801-2-jacopo@jmondi.org>","Subject":"Re: [libcamera-devel] [PATCH 1/7] android: camera_metadata: Add\n\tcopy constructor and getEntry","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@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":14677,"web_url":"https://patchwork.libcamera.org/comment/14677/","msgid":"<20210122034200.GD1943@pyrite.rasen.tech>","date":"2021-01-22T03:42:00","subject":"Re: [libcamera-devel] [PATCH 1/7] android: camera_metadata: Add\n\tcopy constructor and getEntry","submitter":{"id":17,"url":"https://patchwork.libcamera.org/api/people/17/","name":"Paul Elder","email":"paul.elder@ideasonboard.com"},"content":"Hi Jacopo,\n\nOn Thu, Jan 21, 2021 at 05:52:59PM +0100, Jacopo Mondi wrote:\n> From: Paul Elder <paul.elder@ideasonboard.com>\n> \n> Add a copy constructor and assignment operator to CameraMetadata, as well\n> a constructor from camera_metadata_t. Also add a function getEntry to\n> allow getting metadata entries from CameraMetadata. This allows us to\n> use CameraMetadata for reading from camera_metadata_t.\n> \n> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>\n> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n\n(Can I review a patch that's from me?)\n\nAnyway for the minor fix that you applied,\n\nReviewed-by: Paul Elder <paul.elder@ideasonboard.com>\n\n> ---\n>  src/android/camera_metadata.cpp | 33 +++++++++++++++++++++++++++++++++\n>  src/android/camera_metadata.h   |  5 +++++\n>  2 files changed, 38 insertions(+)\n> \n> diff --git a/src/android/camera_metadata.cpp b/src/android/camera_metadata.cpp\n> index edea48fe5581..8e36e758d231 100644\n> --- a/src/android/camera_metadata.cpp\n> +++ b/src/android/camera_metadata.cpp\n> @@ -19,12 +19,45 @@ CameraMetadata::CameraMetadata(size_t entryCapacity, size_t dataCapacity)\n>  \tvalid_ = metadata_ != nullptr;\n>  }\n>  \n> +CameraMetadata::CameraMetadata(const camera_metadata_t *metadata)\n> +{\n> +\tmetadata_ = clone_camera_metadata(metadata);\n> +\tvalid_ = metadata_ != nullptr;\n> +}\n> +\n> +CameraMetadata::CameraMetadata(const CameraMetadata &other)\n> +\t: CameraMetadata(other.get())\n> +{\n> +}\n> +\n>  CameraMetadata::~CameraMetadata()\n>  {\n>  \tif (metadata_)\n>  \t\tfree_camera_metadata(metadata_);\n>  }\n>  \n> +CameraMetadata &CameraMetadata::operator=(const CameraMetadata &other)\n> +{\n> +\tif (this == &other)\n> +\t\treturn *this;\n> +\n> +\tif (metadata_)\n> +\t\tfree_camera_metadata(metadata_);\n> +\n> +\tmetadata_ = clone_camera_metadata(other.get());\n> +\tvalid_ = metadata_ != nullptr;\n> +\n> +\treturn *this;\n> +}\n> +\n> +bool CameraMetadata::getEntry(uint32_t tag, camera_metadata_ro_entry_t *entry) const\n> +{\n> +\tif (find_camera_metadata_ro_entry(metadata_, tag, entry))\n> +\t\treturn false;\n> +\n> +\treturn true;\n> +}\n> +\n>  bool CameraMetadata::addEntry(uint32_t tag, const void *data, size_t count)\n>  {\n>  \tif (!valid_)\n> diff --git a/src/android/camera_metadata.h b/src/android/camera_metadata.h\n> index 9d047b1bb534..720b760d44da 100644\n> --- a/src/android/camera_metadata.h\n> +++ b/src/android/camera_metadata.h\n> @@ -15,9 +15,14 @@ class CameraMetadata\n>  {\n>  public:\n>  \tCameraMetadata(size_t entryCapacity, size_t dataCapacity);\n> +\tCameraMetadata(const camera_metadata_t *metadata);\n> +\tCameraMetadata(const CameraMetadata &other);\n>  \t~CameraMetadata();\n>  \n> +\tCameraMetadata &operator=(const CameraMetadata &other);\n> +\n>  \tbool isValid() const { return valid_; }\n> +\tbool getEntry(uint32_t tag, camera_metadata_ro_entry_t *entry) const;\n>  \tbool addEntry(uint32_t tag, const void *data, size_t data_count);\n>  \tbool updateEntry(uint32_t tag, const void *data, size_t data_count);\n>  \n> -- \n> 2.29.2\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 43448BD808\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 22 Jan 2021 03:42:09 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id C79A768212;\n\tFri, 22 Jan 2021 04:42:08 +0100 (CET)","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 8E4EF68212\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 22 Jan 2021 04:42:07 +0100 (CET)","from pyrite.rasen.tech (unknown\n\t[IPv6:2400:4051:61:600:2c71:1b79:d06d:5032])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id EE758B56;\n\tFri, 22 Jan 2021 04:42:05 +0100 (CET)"],"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=\"b8Z2gnof\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1611286927;\n\tbh=R8mmRl4QportWb0ZPUd9Dx4+ta56zCRe5z5NEFuPirA=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=b8Z2gnofStklKGqLfwVPyofOk1HdEVCv0gRAQeA236so7S+okTyEffCFGYUv+d7Ex\n\tlSyn1/o65/RnWMt1kUF6qagkVndDvO/BvfRWMn/llnsV8za5ztFIQeqtXePGaIb7MM\n\tWdcbpKqM4iaQxhJW4h7HyX9B1aoxGyu7HBwUpCHo=","Date":"Fri, 22 Jan 2021 12:42:00 +0900","From":"paul.elder@ideasonboard.com","To":"Jacopo Mondi <jacopo@jmondi.org>","Message-ID":"<20210122034200.GD1943@pyrite.rasen.tech>","References":"<20210121165305.367801-1-jacopo@jmondi.org>\n\t<20210121165305.367801-2-jacopo@jmondi.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210121165305.367801-2-jacopo@jmondi.org>","Subject":"Re: [libcamera-devel] [PATCH 1/7] android: camera_metadata: Add\n\tcopy constructor and getEntry","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@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":14684,"web_url":"https://patchwork.libcamera.org/comment/14684/","msgid":"<20210122084841.sq2gt6zixekuoct3@uno.localdomain>","date":"2021-01-22T08:48:41","subject":"Re: [libcamera-devel] [PATCH 1/7] android: camera_metadata: Add\n\tcopy constructor and getEntry","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/people/3/","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"content":"Hi Paul,\n\nOn Fri, Jan 22, 2021 at 12:42:00PM +0900, paul.elder@ideasonboard.com wrote:\n> Hi Jacopo,\n>\n> On Thu, Jan 21, 2021 at 05:52:59PM +0100, Jacopo Mondi wrote:\n> > From: Paul Elder <paul.elder@ideasonboard.com>\n> >\n> > Add a copy constructor and assignment operator to CameraMetadata, as well\n> > a constructor from camera_metadata_t. Also add a function getEntry to\n> > allow getting metadata entries from CameraMetadata. This allows us to\n> > use CameraMetadata for reading from camera_metadata_t.\n> >\n> > Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>\n> > Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>\n> > Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n>\n> (Can I review a patch that's from me?)\n\nSure you can\n\n>\n> Anyway for the minor fix that you applied,\n\nI'm sorry I just realized I took the liberty to edit your patch and\nre-send it. I should have asked first.\n\n>\n> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>\n\nThanks\n  j\n\n>\n> > ---\n> >  src/android/camera_metadata.cpp | 33 +++++++++++++++++++++++++++++++++\n> >  src/android/camera_metadata.h   |  5 +++++\n> >  2 files changed, 38 insertions(+)\n> >\n> > diff --git a/src/android/camera_metadata.cpp b/src/android/camera_metadata.cpp\n> > index edea48fe5581..8e36e758d231 100644\n> > --- a/src/android/camera_metadata.cpp\n> > +++ b/src/android/camera_metadata.cpp\n> > @@ -19,12 +19,45 @@ CameraMetadata::CameraMetadata(size_t entryCapacity, size_t dataCapacity)\n> >  \tvalid_ = metadata_ != nullptr;\n> >  }\n> >\n> > +CameraMetadata::CameraMetadata(const camera_metadata_t *metadata)\n> > +{\n> > +\tmetadata_ = clone_camera_metadata(metadata);\n> > +\tvalid_ = metadata_ != nullptr;\n> > +}\n> > +\n> > +CameraMetadata::CameraMetadata(const CameraMetadata &other)\n> > +\t: CameraMetadata(other.get())\n> > +{\n> > +}\n> > +\n> >  CameraMetadata::~CameraMetadata()\n> >  {\n> >  \tif (metadata_)\n> >  \t\tfree_camera_metadata(metadata_);\n> >  }\n> >\n> > +CameraMetadata &CameraMetadata::operator=(const CameraMetadata &other)\n> > +{\n> > +\tif (this == &other)\n> > +\t\treturn *this;\n> > +\n> > +\tif (metadata_)\n> > +\t\tfree_camera_metadata(metadata_);\n> > +\n> > +\tmetadata_ = clone_camera_metadata(other.get());\n> > +\tvalid_ = metadata_ != nullptr;\n> > +\n> > +\treturn *this;\n> > +}\n> > +\n> > +bool CameraMetadata::getEntry(uint32_t tag, camera_metadata_ro_entry_t *entry) const\n> > +{\n> > +\tif (find_camera_metadata_ro_entry(metadata_, tag, entry))\n> > +\t\treturn false;\n> > +\n> > +\treturn true;\n> > +}\n> > +\n> >  bool CameraMetadata::addEntry(uint32_t tag, const void *data, size_t count)\n> >  {\n> >  \tif (!valid_)\n> > diff --git a/src/android/camera_metadata.h b/src/android/camera_metadata.h\n> > index 9d047b1bb534..720b760d44da 100644\n> > --- a/src/android/camera_metadata.h\n> > +++ b/src/android/camera_metadata.h\n> > @@ -15,9 +15,14 @@ class CameraMetadata\n> >  {\n> >  public:\n> >  \tCameraMetadata(size_t entryCapacity, size_t dataCapacity);\n> > +\tCameraMetadata(const camera_metadata_t *metadata);\n> > +\tCameraMetadata(const CameraMetadata &other);\n> >  \t~CameraMetadata();\n> >\n> > +\tCameraMetadata &operator=(const CameraMetadata &other);\n> > +\n> >  \tbool isValid() const { return valid_; }\n> > +\tbool getEntry(uint32_t tag, camera_metadata_ro_entry_t *entry) const;\n> >  \tbool addEntry(uint32_t tag, const void *data, size_t data_count);\n> >  \tbool updateEntry(uint32_t tag, const void *data, size_t data_count);\n> >\n> > --\n> > 2.29.2\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 E54ACC0F2A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 22 Jan 2021 08:48:24 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 6E88F68230;\n\tFri, 22 Jan 2021 09:48:24 +0100 (CET)","from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net\n\t[217.70.183.201])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id A9184681DF\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 22 Jan 2021 09:48:22 +0100 (CET)","from uno.localdomain (93-34-118-233.ip49.fastwebnet.it\n\t[93.34.118.233]) (Authenticated sender: jacopo@jmondi.org)\n\tby relay8-d.mail.gandi.net (Postfix) with ESMTPSA id 326561BF20A;\n\tFri, 22 Jan 2021 08:48:21 +0000 (UTC)"],"X-Originating-IP":"93.34.118.233","Date":"Fri, 22 Jan 2021 09:48:41 +0100","From":"Jacopo Mondi <jacopo@jmondi.org>","To":"paul.elder@ideasonboard.com","Message-ID":"<20210122084841.sq2gt6zixekuoct3@uno.localdomain>","References":"<20210121165305.367801-1-jacopo@jmondi.org>\n\t<20210121165305.367801-2-jacopo@jmondi.org>\n\t<20210122034200.GD1943@pyrite.rasen.tech>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210122034200.GD1943@pyrite.rasen.tech>","Subject":"Re: [libcamera-devel] [PATCH 1/7] android: camera_metadata: Add\n\tcopy constructor and getEntry","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@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>"}}]