diff options
Diffstat (limited to 'src/libcamera/camera.cpp')
-rw-r--r-- | src/libcamera/camera.cpp | 10 |
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); } /** |