diff options
-rw-r--r-- | include/libcamera/base/class.h | 4 | ||||
-rw-r--r-- | include/libcamera/internal/framebuffer.h | 2 | ||||
-rw-r--r-- | src/android/camera_hal_config.cpp | 7 | ||||
-rw-r--r-- | src/android/mm/cros_camera_buffer.cpp | 4 | ||||
-rw-r--r-- | src/android/mm/generic_camera_buffer.cpp | 3 | ||||
-rw-r--r-- | src/libcamera/base/class.cpp | 6 | ||||
-rw-r--r-- | src/libcamera/camera.cpp | 10 | ||||
-rw-r--r-- | src/libcamera/camera_manager.cpp | 8 | ||||
-rw-r--r-- | src/libcamera/framebuffer.cpp | 6 |
9 files changed, 25 insertions, 25 deletions
diff --git a/include/libcamera/base/class.h b/include/libcamera/base/class.h index 9c7f0f2e..a5946836 100644 --- a/include/libcamera/base/class.h +++ b/include/libcamera/base/class.h @@ -64,7 +64,7 @@ public: class Private { public: - Private(Extensible *o); + Private(); virtual ~Private(); #ifndef __DOXYGEN__ @@ -82,6 +82,8 @@ public: #endif private: + /* To initialize o_ from Extensible. */ + friend class Extensible; Extensible *const o_; }; diff --git a/include/libcamera/internal/framebuffer.h b/include/libcamera/internal/framebuffer.h index a11e895d..8c187adf 100644 --- a/include/libcamera/internal/framebuffer.h +++ b/include/libcamera/internal/framebuffer.h @@ -52,7 +52,7 @@ class FrameBuffer::Private : public Extensible::Private LIBCAMERA_DECLARE_PUBLIC(FrameBuffer) public: - Private(FrameBuffer *buffer); + Private(); void setRequest(Request *request) { request_ = request; } diff --git a/src/android/camera_hal_config.cpp b/src/android/camera_hal_config.cpp index 833cf4ba..bbbb1410 100644 --- a/src/android/camera_hal_config.cpp +++ b/src/android/camera_hal_config.cpp @@ -32,7 +32,7 @@ class CameraHalConfig::Private : public Extensible::Private LIBCAMERA_DECLARE_PUBLIC(CameraHalConfig) public: - Private(CameraHalConfig *halConfig); + Private(); int parseConfigFile(FILE *fh, std::map<std::string, CameraConfigData> *cameras); @@ -50,8 +50,7 @@ private: std::map<std::string, CameraConfigData> *cameras_; }; -CameraHalConfig::Private::Private(CameraHalConfig *halConfig) - : Extensible::Private(halConfig) +CameraHalConfig::Private::Private() { } @@ -344,7 +343,7 @@ int CameraHalConfig::Private::parseConfigFile(FILE *fh, } CameraHalConfig::CameraHalConfig() - : Extensible(new Private(this)), exists_(false), valid_(false) + : Extensible(new Private()), exists_(false), valid_(false) { parseConfigurationFile(); } diff --git a/src/android/mm/cros_camera_buffer.cpp b/src/android/mm/cros_camera_buffer.cpp index bb55b95e..437502fb 100644 --- a/src/android/mm/cros_camera_buffer.cpp +++ b/src/android/mm/cros_camera_buffer.cpp @@ -47,8 +47,8 @@ private: CameraBuffer::Private::Private(CameraBuffer *cameraBuffer, buffer_handle_t camera3Buffer, [[maybe_unused]] int flags) - : Extensible::Private(cameraBuffer), handle_(camera3Buffer), - numPlanes_(0), valid_(false), registered_(false) + : handle_(camera3Buffer), numPlanes_(0), valid_(false), + registered_(false) { bufferManager_ = cros::CameraBufferManager::GetInstance(); diff --git a/src/android/mm/generic_camera_buffer.cpp b/src/android/mm/generic_camera_buffer.cpp index 166be36e..2a4b77ea 100644 --- a/src/android/mm/generic_camera_buffer.cpp +++ b/src/android/mm/generic_camera_buffer.cpp @@ -34,9 +34,8 @@ public: size_t jpegBufferSize(size_t maxJpegBufferSize) const; }; -CameraBuffer::Private::Private(CameraBuffer *cameraBuffer, +CameraBuffer::Private::Private([[maybe_unused]] CameraBuffer *cameraBuffer, buffer_handle_t camera3Buffer, int flags) - : Extensible::Private(cameraBuffer) { maps_.reserve(camera3Buffer->numFds); error_ = 0; diff --git a/src/libcamera/base/class.cpp b/src/libcamera/base/class.cpp index d4f0ac64..d24043c2 100644 --- a/src/libcamera/base/class.cpp +++ b/src/libcamera/base/class.cpp @@ -151,6 +151,7 @@ namespace libcamera { Extensible::Extensible(Extensible::Private *d) : d_(d) { + *const_cast<Extensible **>(&d_->o_) = this; } /** @@ -182,10 +183,9 @@ Extensible::Extensible(Extensible::Private *d) /** * \brief Construct an instance of an Extensible class private data - * \param[in] o Pointer to the public class object */ -Extensible::Private::Private(Extensible *o) - : o_(o) +Extensible::Private::Private() + : o_(nullptr) { } diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp index c8858e71..c126b492 100644 --- a/src/libcamera/camera.cpp +++ b/src/libcamera/camera.cpp @@ -344,7 +344,7 @@ public: CameraRunning, }; - Private(Camera *camera, PipelineHandler *pipe, const std::string &id, + Private(PipelineHandler *pipe, const std::string &id, const std::set<Stream *> &streams); ~Private(); @@ -368,11 +368,11 @@ private: std::atomic<State> state_; }; -Camera::Private::Private(Camera *camera, PipelineHandler *pipe, +Camera::Private::Private(PipelineHandler *pipe, const std::string &id, const std::set<Stream *> &streams) - : Extensible::Private(camera), pipe_(pipe->shared_from_this()), id_(id), - streams_(streams), disconnected_(false), state_(CameraAvailable) + : pipe_(pipe->shared_from_this()), id_(id), streams_(streams), + disconnected_(false), state_(CameraAvailable) { } @@ -632,7 +632,7 @@ const std::string &Camera::id() const Camera::Camera(PipelineHandler *pipe, const std::string &id, const std::set<Stream *> &streams) - : Extensible(new Private(this, pipe, id, streams)) + : Extensible(new Private(pipe, id, streams)) { } diff --git a/src/libcamera/camera_manager.cpp b/src/libcamera/camera_manager.cpp index 1c79308a..384a574f 100644 --- a/src/libcamera/camera_manager.cpp +++ b/src/libcamera/camera_manager.cpp @@ -39,7 +39,7 @@ class CameraManager::Private : public Extensible::Private, public Thread LIBCAMERA_DECLARE_PUBLIC(CameraManager) public: - Private(CameraManager *cm); + Private(); int start(); void addCamera(std::shared_ptr<Camera> camera, @@ -74,8 +74,8 @@ private: ProcessManager processManager_; }; -CameraManager::Private::Private(CameraManager *cm) - : Extensible::Private(cm), initialized_(false) +CameraManager::Private::Private() + : initialized_(false) { } @@ -258,7 +258,7 @@ void CameraManager::Private::removeCamera(Camera *camera) CameraManager *CameraManager::self_ = nullptr; CameraManager::CameraManager() - : Extensible(new CameraManager::Private(this)) + : Extensible(new CameraManager::Private()) { if (self_) LOG(Camera, Fatal) diff --git a/src/libcamera/framebuffer.cpp b/src/libcamera/framebuffer.cpp index 40bf64b0..48d14b31 100644 --- a/src/libcamera/framebuffer.cpp +++ b/src/libcamera/framebuffer.cpp @@ -100,8 +100,8 @@ LOG_DEFINE_CATEGORY(Buffer) * \brief Array of per-plane metadata */ -FrameBuffer::Private::Private(FrameBuffer *buffer) - : Extensible::Private(buffer), request_(nullptr) +FrameBuffer::Private::Private() + : request_(nullptr) { } @@ -176,7 +176,7 @@ FrameBuffer::Private::Private(FrameBuffer *buffer) * \param[in] cookie Cookie */ FrameBuffer::FrameBuffer(const std::vector<Plane> &planes, unsigned int cookie) - : Extensible(new Private(this)), planes_(planes), cookie_(cookie) + : Extensible(new Private()), planes_(planes), cookie_(cookie) { } |