From ed734693350220f38aab768aee5e106b92dc9eb9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20S=C3=B6derlund?= Date: Fri, 24 Jul 2020 15:16:57 +0200 Subject: cam: capture: Cache the EventLoop handler MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Prepare for the ability to exit the event loop based on conditions in the request complete handler by caching the pointer instead of passing it as an argument. Signed-off-by: Niklas Söderlund Reviewed-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- src/cam/capture.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/cam/capture.h') diff --git a/src/cam/capture.h b/src/cam/capture.h index 9bca5661..acdefc47 100644 --- a/src/cam/capture.h +++ b/src/cam/capture.h @@ -24,12 +24,12 @@ class Capture { public: Capture(std::shared_ptr camera, - libcamera::CameraConfiguration *config); + libcamera::CameraConfiguration *config, + EventLoop *loop); - int run(EventLoop *loop, const OptionsParser::Options &options); + int run(const OptionsParser::Options &options); private: - int capture(EventLoop *loop, - libcamera::FrameBufferAllocator *allocator); + int capture(libcamera::FrameBufferAllocator *allocator); void requestComplete(libcamera::Request *request); @@ -39,6 +39,8 @@ private: std::map streamName_; BufferWriter *writer_; std::chrono::steady_clock::time_point last_; + + EventLoop *loop_; }; #endif /* __CAM_CAPTURE_H__ */ -- cgit v1.2.1