diff options
Diffstat (limited to 'src/libcamera/camera_manager.cpp')
-rw-r--r-- | src/libcamera/camera_manager.cpp | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/libcamera/camera_manager.cpp b/src/libcamera/camera_manager.cpp index 337496c2..2cf01423 100644 --- a/src/libcamera/camera_manager.cpp +++ b/src/libcamera/camera_manager.cpp @@ -14,6 +14,7 @@ #include "event_dispatcher_poll.h" #include "log.h" #include "pipeline_handler.h" +#include "thread.h" #include "utils.h" /** @@ -56,7 +57,7 @@ LOG_DEFINE_CATEGORY(Camera) */ CameraManager::CameraManager() - : enumerator_(nullptr), dispatcher_(nullptr) + : enumerator_(nullptr) { } @@ -247,12 +248,7 @@ CameraManager *CameraManager::instance() */ void CameraManager::setEventDispatcher(std::unique_ptr<EventDispatcher> dispatcher) { - if (dispatcher_) { - LOG(Camera, Warning) << "Event dispatcher is already set"; - return; - } - - dispatcher_ = std::move(dispatcher); + Thread::current()->setEventDispatcher(std::move(dispatcher)); } /** @@ -268,10 +264,7 @@ void CameraManager::setEventDispatcher(std::unique_ptr<EventDispatcher> dispatch */ EventDispatcher *CameraManager::eventDispatcher() { - if (!dispatcher_) - dispatcher_ = utils::make_unique<EventDispatcherPoll>(); - - return dispatcher_.get(); + return Thread::current()->eventDispatcher(); } } /* namespace libcamera */ |