summaryrefslogtreecommitdiffstats
path: root/src/uca.c
diff options
context:
space:
mode:
authorMatthias Vogelgesang <matthias.vogelgesang@kit.edu>2012-02-03 11:09:54 +0100
committerMatthias Vogelgesang <matthias.vogelgesang@kit.edu>2012-02-03 11:09:54 +0100
commitc9c94390c520ad496082222858c0f1285f1432df (patch)
treee0cec60e2e99a7eba3dca63399054f89097f8d9a /src/uca.c
parent6461f2e549876cb54456925f47094bb53e2c8672 (diff)
downloadlibuca-c9c94390c520ad496082222858c0f1285f1432df.tar.gz
libuca-c9c94390c520ad496082222858c0f1285f1432df.tar.bz2
libuca-c9c94390c520ad496082222858c0f1285f1432df.tar.xz
libuca-c9c94390c520ad496082222858c0f1285f1432df.zip
Callback function have to notify caller about buffer
If they return a UCA_BUFFER_KEEP they have to call uca_cam_release_buffer() in the future. If returning UCA_BUFFER_RELEASE, this is done by the caller.
Diffstat (limited to 'src/uca.c')
-rw-r--r--src/uca.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/uca.c b/src/uca.c
index 4a23e69..1d07ea4 100644
--- a/src/uca.c
+++ b/src/uca.c
@@ -341,6 +341,13 @@ uint32_t uca_cam_register_callback(struct uca_camera *cam, uca_cam_grab_callback
return priv->register_callback(priv, callback, user);
}
+uint32_t uca_cam_release_buffer(struct uca_camera *cam, void *buffer)
+{
+ struct uca_camera_priv *priv = cam->priv;
+ if (priv->release_buffer != NULL)
+ return priv->release_buffer(priv, buffer);
+}
+
uint32_t uca_cam_grab(struct uca_camera *cam, char *buffer, void *meta_data)
{
struct uca_camera_priv *priv = cam->priv;