summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/libcamera/camera.h8
-rw-r--r--include/libcamera/camera_manager.h2
2 files changed, 7 insertions, 3 deletions
diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
index 2ea1a688..efafb9e2 100644
--- a/include/libcamera/camera.h
+++ b/include/libcamera/camera.h
@@ -12,10 +12,13 @@
namespace libcamera {
+class PipelineHandler;
+
class Camera final
{
public:
- static std::shared_ptr<Camera> create(const std::string &name);
+ static std::shared_ptr<Camera> create(PipelineHandler *pipe,
+ const std::string &name);
Camera(const Camera &) = delete;
void operator=(const Camera &) = delete;
@@ -23,9 +26,10 @@ public:
const std::string &name() const;
private:
- explicit Camera(const std::string &name);
+ Camera(PipelineHandler *pipe, const std::string &name);
~Camera();
+ std::shared_ptr<PipelineHandler> pipe_;
std::string name_;
};
diff --git a/include/libcamera/camera_manager.h b/include/libcamera/camera_manager.h
index 9ade29d7..45e72df0 100644
--- a/include/libcamera/camera_manager.h
+++ b/include/libcamera/camera_manager.h
@@ -41,7 +41,7 @@ private:
~CameraManager();
std::unique_ptr<DeviceEnumerator> enumerator_;
- std::vector<PipelineHandler *> pipes_;
+ std::vector<std::shared_ptr<PipelineHandler>> pipes_;
std::vector<std::shared_ptr<Camera>> cameras_;
std::unique_ptr<EventDispatcher> dispatcher_;