14#include <unordered_set>
21using namespace std::chrono_literals;
44 void prepare(std::chrono::milliseconds timeout = 0ms);
48 friend class PipelineHandler;
51 void doCancelRequest();
52 void emitPrepareCompleted();
58 uint32_t sequence_ = 0;
59 bool prepared_ =
false;
61 std::unordered_set<FrameBuffer *> pending_;
62 std::map<FrameBuffer *, std::unique_ptr<EventNotifier>> notifiers_;
63 std::unique_ptr<Timer> timer_;
#define LIBCAMERA_DECLARE_PUBLIC(klass)
Declare public data for a private class.
Definition class.h:57
Camera device.
Definition camera.h:115
Base class for private data managed through a d-pointer.
Definition class.h:65
Private()
Construct an instance of an Extensible class private data.
Definition class.cpp:194
Frame buffer data and its associated dynamic metadata.
Definition framebuffer.h:49
Request private data.
Definition request.h:29
void prepare(std::chrono::milliseconds timeout=0ms)
Prepare the Request to be queued to the device.
Definition request.cpp:223
void reset()
Reset the request internal data to default values.
Definition request.cpp:173
Private(Camera *camera)
Create a Request::Private.
Definition request.cpp:57
void cancel()
Cancel a queued request.
Definition request.cpp:157
bool completeBuffer(FrameBuffer *buffer)
Complete a buffer for the request.
Definition request.cpp:98
Signal prepared
Request preparation completed Signal.
Definition request.h:45
void complete()
Complete a queued request.
Definition request.cpp:120
Camera * camera() const
Retrieve the camera this request has been queued to.
Definition request.h:36
friend std::ostream & operator<<(std::ostream &out, const Request &r)
Insert a text representation of a Request into an output stream.
Definition request.cpp:606
bool hasPendingBuffers() const
Check if a request has buffers yet to be completed.
Definition request.cpp:80
Request(Camera *camera, uint64_t cookie=0)
Create a capture request for a camera.
Definition request.cpp:355
Generic signal and slot communication mechanism.
Definition signal.h:39
File descriptor event notifier.
Top-level libcamera namespace.
Definition backtrace.h:17
Describes a frame capture request to be processed by a camera.