From dcc024760a8d4eb35b7d0ca285f566bb1b3e773b Mon Sep 17 00:00:00 2001 From: Kieran Bingham Date: Wed, 24 Mar 2021 16:59:03 +0000 Subject: libcamera: buffer: Break friendship with Request The FrameBuffer class is only friends with Request so that the request can be associated with the buffers. FrameBuffer already has a helper to setRequest(), so let's use that directly instead. Reviewed-by: Paul Elder Reviewed-by: Laurent Pinchart Signed-off-by: Kieran Bingham --- src/libcamera/request.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/libcamera/request.cpp') diff --git a/src/libcamera/request.cpp b/src/libcamera/request.cpp index 0071667e..3ad83f3b 100644 --- a/src/libcamera/request.cpp +++ b/src/libcamera/request.cpp @@ -118,8 +118,9 @@ void Request::reuse(ReuseFlag flags) pending_.clear(); if (flags & ReuseBuffers) { for (auto pair : bufferMap_) { - pair.second->request_ = this; - pending_.insert(pair.second); + FrameBuffer *buffer = pair.second; + buffer->setRequest(this); + pending_.insert(buffer); } } else { bufferMap_.clear(); @@ -187,7 +188,7 @@ int Request::addBuffer(const Stream *stream, FrameBuffer *buffer) return -EEXIST; } - buffer->request_ = this; + buffer->setRequest(this); pending_.insert(buffer); bufferMap_[stream] = buffer; @@ -294,7 +295,7 @@ bool Request::completeBuffer(FrameBuffer *buffer) int ret = pending_.erase(buffer); ASSERT(ret == 1); - buffer->request_ = nullptr; + buffer->setRequest(nullptr); if (buffer->metadata().status == FrameMetadata::FrameCancelled) cancelled_ = true; -- cgit v1.2.1