summaryrefslogtreecommitdiff
path: root/src/qcam/assets/feathericons/user-check.svg
diff options
context:
space:
mode:
authorJacopo Mondi <jacopo@jmondi.org>2019-11-20 16:39:39 +0100
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-06 18:35:36 +0200
commita14b6baca9afe5ad15b49a3ff25b01a6f582689e (patch)
treef8258c656bd41b81a659f4127a7c357d3db7a307 /src/qcam/assets/feathericons/user-check.svg
parent50478550e5e23426db7a8e2d63f45ddfccbf80da (diff)
cam: Add option to list camera properties
Add the '-p'|'--list-properties' option to the cam application to list the properties of a camera. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/qcam/assets/feathericons/user-check.svg')
0 files changed, 0 insertions, 0 deletions
m"> */ #pragma once #include <map> #include <memory> #include <vector> #include <libcamera/base/class.h> #include <libcamera/base/thread.h> #include <libcamera/camera.h> #include <libcamera/framebuffer.h> #include <hardware/camera3.h> #include "camera_metadata.h" #include "camera_worker.h" class CameraBuffer; class CameraStream; class Camera3RequestDescriptor { public: enum class Status { Success, Error, }; struct StreamBuffer { StreamBuffer(CameraStream *stream, const camera3_stream_buffer_t &buffer, Camera3RequestDescriptor *request); ~StreamBuffer(); StreamBuffer(StreamBuffer &&); StreamBuffer &operator=(StreamBuffer &&); CameraStream *stream; buffer_handle_t *camera3Buffer; std::unique_ptr<libcamera::FrameBuffer> frameBuffer; int fence; Status status = Status::Success; libcamera::FrameBuffer *internalBuffer = nullptr; const libcamera::FrameBuffer *srcBuffer = nullptr; std::unique_ptr<CameraBuffer> dstBuffer; Camera3RequestDescriptor *request; private: LIBCAMERA_DISABLE_COPY(StreamBuffer) }; /* Keeps track of streams requiring post-processing. */ std::map<CameraStream *, StreamBuffer *> pendingStreamsToProcess_; libcamera::Mutex streamsProcessMutex_; Camera3RequestDescriptor(libcamera::Camera *camera, const camera3_capture_request_t *camera3Request); ~Camera3RequestDescriptor(); bool isPending() const { return !complete_; } uint32_t frameNumber_ = 0; std::vector<StreamBuffer> buffers_; CameraMetadata settings_; std::unique_ptr<CaptureRequest> request_; std::unique_ptr<CameraMetadata> resultMetadata_; bool complete_ = false; Status status_ = Status::Success; private: LIBCAMERA_DISABLE_COPY(Camera3RequestDescriptor) };