[libcamera-devel] [PATCH 1/3] Documentation: Update code examples to match Request related changes
Daniel Semkowicz
dse at thaumatec.com
Wed Jun 15 18:25:59 CEST 2022
- Camera::createRequest() now returns unique_ptr instead of raw pointer
- Request::BufferMap key type is now const
---
Documentation/guides/application-developer.rst | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/Documentation/guides/application-developer.rst b/Documentation/guides/application-developer.rst
index 16bea9c4..6ab8b7e5 100644
--- a/Documentation/guides/application-developer.rst
+++ b/Documentation/guides/application-developer.rst
@@ -308,7 +308,7 @@ the camera.
Stream *stream = streamConfig.stream();
const std::vector<std::unique_ptr<FrameBuffer>> &buffers = allocator->buffers(stream);
- std::vector<Request *> requests;
+ std::vector<std::unique_ptr<Request>> requests;
Proceed to fill the request vector by creating ``Request`` instances from the
camera device, and associate a buffer for each of them for the ``Stream``.
@@ -316,7 +316,7 @@ camera device, and associate a buffer for each of them for the ``Stream``.
.. code:: cpp
for (unsigned int i = 0; i < buffers.size(); ++i) {
- Request *request = camera->createRequest();
+ std::unique_ptr<Request> request = camera->createRequest();
if (!request)
{
std::cerr << "Can't create request" << std::endl;
@@ -332,7 +332,7 @@ camera device, and associate a buffer for each of them for the ``Stream``.
return ret;
}
- requests.push_back(request);
+ requests.push_back(std::move(request));
}
.. TODO: Controls
@@ -410,7 +410,7 @@ images.
.. code:: cpp
- const std::map<Stream *, FrameBuffer *> &buffers = request->buffers();
+ const std::map<const Stream *, FrameBuffer *> &buffers = request->buffers();
Iterating through the map allows applications to inspect each completed buffer
in this request, and access the metadata associated to each frame.
@@ -517,8 +517,8 @@ and queue all the previously created requests.
.. code:: cpp
camera->start();
- for (Request *request : requests)
- camera->queueRequest(request);
+ for (std::unique_ptr<Request> &request : requests)
+ camera->queueRequest(request.get());
Start an event loop
~~~~~~~~~~~~~~~~~~~
--
2.34.1
More information about the libcamera-devel
mailing list