summaryrefslogtreecommitdiffstats
path: root/src/uca-grabber.h
diff options
context:
space:
mode:
authorMatthias Vogelgesang <matthias.vogelgesang@ipe.fzk.de>2011-02-28 17:48:55 +0100
committerMatthias Vogelgesang <matthias.vogelgesang@ipe.fzk.de>2011-02-28 17:48:55 +0100
commit28873ccf3f3f32486049eb40cd639bbab86e09dc (patch)
tree1411086a03efeee7ce8051a362bc2f83ac2a929b /src/uca-grabber.h
parentf6f2bafe19fd57c56201e79be6b7692f16f16099 (diff)
downloaduca-28873ccf3f3f32486049eb40cd639bbab86e09dc.tar.gz
uca-28873ccf3f3f32486049eb40cd639bbab86e09dc.tar.bz2
uca-28873ccf3f3f32486049eb40cd639bbab86e09dc.tar.xz
uca-28873ccf3f3f32486049eb40cd639bbab86e09dc.zip
Start grab interface
Diffstat (limited to 'src/uca-grabber.h')
-rw-r--r--src/uca-grabber.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/uca-grabber.h b/src/uca-grabber.h
index 0ae229d..0e203e1 100644
--- a/src/uca-grabber.h
+++ b/src/uca-grabber.h
@@ -1,6 +1,8 @@
#ifndef __UNIFIED_CAMERA_ACCESS_GRABBER_H
#define __UNIFIED_CAMERA_ACCESS_GRABBER_H
+#include <stdbool.h>
+
/*
* --- virtual methods --------------------------------------------------------
*/
@@ -37,6 +39,14 @@ typedef uint32_t (*uca_grabber_get_property) (struct uca_grabber_t *grabber, enu
*/
typedef uint32_t (*uca_grabber_alloc) (struct uca_grabber_t *grabber, uint32_t n_buffers);
+/**
+ * \brief Begin acquiring frames
+ * \param[in] n_frames Number of frames to acquire, -1 means infinite number
+ * \param[in] async Grab asynchronous if true
+ */
+typedef uint32_t (*uca_grabber_acquire) (struct uca_grabber_t *grabber, int32_t n_frames, bool async);
+
+typedef uint32_t (*uca_grabber_grab) (struct uca_grabber_t *grabber, char *buffer, size_t n_bytes);
struct uca_grabber_t {
@@ -47,6 +57,8 @@ struct uca_grabber_t {
uca_grabber_set_property set_property;
uca_grabber_get_property get_property;
uca_grabber_alloc alloc;
+ uca_grabber_acquire acquire;
+ uca_grabber_grab grab;
/* Private */
void *user;