summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-08-18 01:45:01 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-08-19 19:07:33 +0300
commit0ed40d2cd4342465cce916c3b6388d1849aef610 (patch)
treea99a31111f9e52e764612ebc7a5021d8f983adf9 /src
parent5ce4bb62e77e85a681d6742f25e5173963b55415 (diff)
android: Pass Camera shared pointer to CameraProxy by const reference
The CameraProxy is constructed with a Camera instance passed through a shared pointer. It forwards it to the CameraDevice constructor, which takes a reference used for the sole purpose of making an internal copy of the shared pointer. Both constructors can thus take a const reference instead of a value or a mutable reference. This optimises the constructors slightly. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src')
-rw-r--r--src/android/camera_device.cpp2
-rw-r--r--src/android/camera_device.h2
-rw-r--r--src/android/camera_proxy.cpp2
-rw-r--r--src/android/camera_proxy.h2
4 files changed, 4 insertions, 4 deletions
diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp
index 999c51e6..9acfed69 100644
--- a/src/android/camera_device.cpp
+++ b/src/android/camera_device.cpp
@@ -49,7 +49,7 @@ CameraDevice::Camera3RequestDescriptor::~Camera3RequestDescriptor()
* to the framework using the designated callbacks.
*/
-CameraDevice::CameraDevice(unsigned int id, std::shared_ptr<Camera> &camera)
+CameraDevice::CameraDevice(unsigned int id, const std::shared_ptr<Camera> &camera)
: running_(false), camera_(camera), staticMetadata_(nullptr),
requestTemplate_(nullptr)
{
diff --git a/src/android/camera_device.h b/src/android/camera_device.h
index 4d834ceb..7897ba9d 100644
--- a/src/android/camera_device.h
+++ b/src/android/camera_device.h
@@ -31,7 +31,7 @@ class ThreadRpc;
class CameraDevice : public libcamera::Object
{
public:
- CameraDevice(unsigned int id, std::shared_ptr<libcamera::Camera> &camera);
+ CameraDevice(unsigned int id, const std::shared_ptr<libcamera::Camera> &camera);
~CameraDevice();
void call(ThreadRpc *rpc);
diff --git a/src/android/camera_proxy.cpp b/src/android/camera_proxy.cpp
index 3eb2f9fb..4f5c0a02 100644
--- a/src/android/camera_proxy.cpp
+++ b/src/android/camera_proxy.cpp
@@ -113,7 +113,7 @@ static camera3_device_ops hal_dev_ops = {
.reserved = { nullptr },
};
-CameraProxy::CameraProxy(unsigned int id, std::shared_ptr<Camera> camera)
+CameraProxy::CameraProxy(unsigned int id, const std::shared_ptr<Camera> &camera)
: id_(id)
{
cameraDevice_ = new CameraDevice(id, camera);
diff --git a/src/android/camera_proxy.h b/src/android/camera_proxy.h
index da63bfa7..7940eac4 100644
--- a/src/android/camera_proxy.h
+++ b/src/android/camera_proxy.h
@@ -19,7 +19,7 @@ class ThreadRpc;
class CameraProxy
{
public:
- CameraProxy(unsigned int id, std::shared_ptr<libcamera::Camera> camera);
+ CameraProxy(unsigned int id, const std::shared_ptr<libcamera::Camera> &camera);
~CameraProxy();
int open(const hw_module_t *hardwareModule);