summaryrefslogtreecommitdiff
path: root/src/libcamera/camera.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcamera/camera.cpp')
-rw-r--r--src/libcamera/camera.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp
index 810cb129..1f307654 100644
--- a/src/libcamera/camera.cpp
+++ b/src/libcamera/camera.cpp
@@ -754,10 +754,16 @@ int Camera::freeBuffers()
/**
* \brief Create a request object for the camera
+ * \param[in] cookie Opaque cookie for application use
*
* This method creates an empty request for the application to fill with
* buffers and paramaters, and queue for capture.
*
+ * The \a cookie is stored in the request and is accessible through the
+ * Request::cookie() method at any time. It is typically used by applications
+ * to map the request to an external resource in the request completion
+ * handler, and is completely opaque to libcamera.
+ *
* The ownership of the returned request is passed to the caller, which is
* responsible for either queueing the request or deleting it.
*
@@ -766,12 +772,12 @@ int Camera::freeBuffers()
*
* \return A pointer to the newly created request, or nullptr on error
*/
-Request *Camera::createRequest()
+Request *Camera::createRequest(uint64_t cookie)
{
if (disconnected_ || !stateBetween(CameraPrepared, CameraRunning))
return nullptr;
- return new Request(this);
+ return new Request(this, cookie);
}
/**