summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/libcamera/camera.h3
-rw-r--r--include/libcamera/request.h5
2 files changed, 6 insertions, 2 deletions
diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
index 6d693d9a..21fac550 100644
--- a/include/libcamera/camera.h
+++ b/include/libcamera/camera.h
@@ -10,6 +10,7 @@
#include <map>
#include <memory>
#include <set>
+#include <stdint.h>
#include <string>
#include <libcamera/controls.h>
@@ -93,7 +94,7 @@ public:
int allocateBuffers();
int freeBuffers();
- Request *createRequest();
+ Request *createRequest(uint64_t cookie = 0);
int queueRequest(Request *request);
int start();
diff --git a/include/libcamera/request.h b/include/libcamera/request.h
index a93468d7..4fdb3b51 100644
--- a/include/libcamera/request.h
+++ b/include/libcamera/request.h
@@ -8,6 +8,7 @@
#define __LIBCAMERA_REQUEST_H__
#include <map>
+#include <stdint.h>
#include <unordered_set>
#include <libcamera/controls.h>
@@ -29,7 +30,7 @@ public:
RequestCancelled,
};
- explicit Request(Camera *camera);
+ Request(Camera *camera, uint64_t cookie = 0);
Request(const Request &) = delete;
Request &operator=(const Request &) = delete;
@@ -38,6 +39,7 @@ public:
int setBuffers(const std::map<Stream *, Buffer *> &streamMap);
Buffer *findBuffer(Stream *stream) const;
+ uint64_t cookie() const { return cookie_; }
Status status() const { return status_; }
bool hasPendingBuffers() const { return !pending_.empty(); }
@@ -56,6 +58,7 @@ private:
std::map<Stream *, Buffer *> bufferMap_;
std::unordered_set<Buffer *> pending_;
+ const uint64_t cookie_;
Status status_;
};