summaryrefslogtreecommitdiff
path: root/Documentation/guides
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-09-27 00:07:33 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-09-27 23:41:18 +0300
commit2d5a78f664c5e0068cd3f78ff4c501cf4f331d3c (patch)
treeeafd8c9e948ffa47ed13f8559ca597c224a42534 /Documentation/guides
parent348df7bc4b5d5281e50c42b5c44b125d7049eb57 (diff)
Documentation: application-developer: Add camera detection check
The simple-cam application has a check to ensure that at least one camera is present before attempting to access the first camera, to avoid a crash. Update the application developer's guide to match this behaviour. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'Documentation/guides')
-rw-r--r--Documentation/guides/application-developer.rst10
1 files changed, 9 insertions, 1 deletions
diff --git a/Documentation/guides/application-developer.rst b/Documentation/guides/application-developer.rst
index 41a7d883..cafb24b1 100644
--- a/Documentation/guides/application-developer.rst
+++ b/Documentation/guides/application-developer.rst
@@ -109,10 +109,18 @@ the Camera Manager reports as available to applications.
Camera devices are stored by the CameraManager in a list accessible by index, or
can be retrieved by name through the ``CameraManager::get()`` function. The
code below retrieves the name of the first available camera and gets the camera
-by name from the Camera Manager.
+by name from the Camera Manager, after making sure that at least one camera is
+available.
.. code:: cpp
+ if (cm->cameras().empty()) {
+ std::cout << "No cameras were identified on the system."
+ << std::endl;
+ cm->stop();
+ return EXIT_FAILURE;
+ }
+
std::string cameraId = cm->cameras()[0]->id();
camera = cm->get(cameraId);