7 #ifndef __LIBCAMERA_REQUEST_H__
8 #define __LIBCAMERA_REQUEST_H__
13 #include <unordered_set>
21 class CameraControlValidator;
41 const std::map<Stream *, FrameBuffer *> &
buffers()
const {
return bufferMap_; }
45 uint64_t
cookie()
const {
return cookie_; }
61 std::map<Stream *, FrameBuffer *> bufferMap_;
62 std::unordered_set<FrameBuffer *> pending_;
64 const uint64_t cookie_;
A control validator for Camera instances.
Definition: camera_controls.h:17
Camera device.
Definition: camera.h:70
Associate a list of ControlId with their values for an object.
Definition: controls.h:342
Frame buffer data and its associated dynamic metadata.
Definition: buffer.h:37
Create and manage cameras based on a set of media devices.
Definition: pipeline_handler.h:59
A frame capture request.
Definition: request.h:26
Status
Definition: request.h:28
@ RequestPending
Definition: request.h:29
@ RequestCancelled
Definition: request.h:31
@ RequestComplete
Definition: request.h:30
int addBuffer(Stream *stream, FrameBuffer *buffer)
Add a FrameBuffer with its associated Stream to the Request.
Definition: request.cpp:125
const std::map< Stream *, FrameBuffer * > & buffers() const
Retrieve the request's streams to buffers map.
Definition: request.h:41
uint64_t cookie() const
Retrieve the cookie set when the request was created.
Definition: request.h:45
Status status() const
Retrieve the request completion status.
Definition: request.h:46
ControlList & metadata()
Retrieve the request's metadata.
Definition: request.h:40
FrameBuffer * findBuffer(Stream *stream) const
Return the buffer associated with a stream.
Definition: request.cpp:160
bool hasPendingBuffers() const
Check if a request has buffers yet to be completed.
Definition: request.h:48
Request(Camera *camera, uint64_t cookie=0)
Create a capture request for a camera.
Definition: request.cpp:59
ControlList & controls()
Retrieve the request's ControlList.
Definition: request.h:39
Video stream for a camera.
Definition: stream.h:70
Framework to manage controls related to an object.
Signal & slot implementation.