diff options
author | Niklas Söderlund <niklas.soderlund@ragnatech.se> | 2020-03-23 21:59:18 +0100 |
---|---|---|
committer | Niklas Söderlund <niklas.soderlund@ragnatech.se> | 2020-03-27 16:27:28 +0100 |
commit | 125be3436ae095413b90f00c7516efba8964d061 (patch) | |
tree | f35b4b2be09a4caea43a1604c09988d9a8edbd7c | |
parent | 417e3143a99493d89fbb5a3f3ccd82a716f5d53a (diff) |
libcamera: FrameBuffer: Add a setRequest() interface
Add the ability to set the Request a buffer is associated with. This is
needed for buffers that live inside a pipeline handler and is
temporarily associated with a request as it's being processed inside the
pipeline.
While we are at it delete a stray semicolon.
Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r-- | include/libcamera/buffer.h | 3 | ||||
-rw-r--r-- | src/libcamera/buffer.cpp | 11 |
2 files changed, 13 insertions, 1 deletions
diff --git a/include/libcamera/buffer.h b/include/libcamera/buffer.h index ef3a3b36..6bb2e4f8 100644 --- a/include/libcamera/buffer.h +++ b/include/libcamera/buffer.h @@ -52,7 +52,8 @@ public: const std::vector<Plane> &planes() const { return planes_; } Request *request() const { return request_; } - const FrameMetadata &metadata() const { return metadata_; }; + void setRequest(Request *request) { request_ = request; } + const FrameMetadata &metadata() const { return metadata_; } unsigned int cookie() const { return cookie_; } void setCookie(unsigned int cookie) { cookie_ = cookie; } diff --git a/src/libcamera/buffer.cpp b/src/libcamera/buffer.cpp index 93057568..0c5e56cf 100644 --- a/src/libcamera/buffer.cpp +++ b/src/libcamera/buffer.cpp @@ -183,6 +183,17 @@ FrameBuffer::FrameBuffer(const std::vector<Plane> &planes, unsigned int cookie) */ /** + * \fn FrameBuffer::setRequest() + * \brief Set the request this buffer belongs to + * \param[in] request Request to set + * + * The intended callers of this method are pipeline handlers and only for + * buffers that are internal to the pipeline. + * + * \todo Shall be hidden from applications with a d-pointer design. + */ + +/** * \fn FrameBuffer::metadata() * \brief Retrieve the dynamic metadata * \return Dynamic metadata for the frame contained in the buffer |