summaryrefslogtreecommitdiff
path: root/include/libcamera/camera.h
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-09-21 04:06:34 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-11-08 00:11:21 +0200
commit68d2c41835a871ecd7b441cd650cab3fefa88cf5 (patch)
tree520624e7e517ab5bd3ebc9a4f5797aa7da8ac91b /include/libcamera/camera.h
parent549d982f61fd3820aa3d14c21406f5ce360a5b90 (diff)
libcamera: camera: Inherit from Extensible
Use the d-pointer infrastructure offered by the Extensible class to replace the custom implementation. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Diffstat (limited to 'include/libcamera/camera.h')
-rw-r--r--include/libcamera/camera.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
index 79ff8d6b..5c5f1a05 100644
--- a/include/libcamera/camera.h
+++ b/include/libcamera/camera.h
@@ -13,6 +13,7 @@
#include <string>
#include <libcamera/controls.h>
+#include <libcamera/extensible.h>
#include <libcamera/object.h>
#include <libcamera/request.h>
#include <libcamera/signal.h>
@@ -70,8 +71,11 @@ protected:
std::vector<StreamConfiguration> config_;
};
-class Camera final : public Object, public std::enable_shared_from_this<Camera>
+class Camera final : public Object, public std::enable_shared_from_this<Camera>,
+ public Extensible
{
+ LIBCAMERA_DECLARE_PRIVATE(Camera)
+
public:
static std::shared_ptr<Camera> create(PipelineHandler *pipe,
const std::string &id,
@@ -107,9 +111,6 @@ private:
const std::set<Stream *> &streams);
~Camera();
- class Private;
- std::unique_ptr<Private> p_;
-
friend class PipelineHandler;
void disconnect();
void requestComplete(Request *request);