From a95fb6dad12ef73b05e79198763465f418090e99 Mon Sep 17 00:00:00 2001 From: Matthias Vogelgesang Date: Fri, 18 Mar 2011 10:42:11 +0100 Subject: Add (possible) meta data transmission and integrate callback in pco and pf --- src/cameras/ipe.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/cameras/ipe.c') diff --git a/src/cameras/ipe.c b/src/cameras/ipe.c index 4b3d021..a9f1ff2 100644 --- a/src/cameras/ipe.c +++ b/src/cameras/ipe.c @@ -88,11 +88,21 @@ static uint32_t uca_ipe_stop_recording(struct uca_camera *cam) return UCA_NO_ERROR; } -static uint32_t uca_ipe_grab(struct uca_camera *cam, char *buffer) +static uint32_t uca_ipe_grab(struct uca_camera *cam, char *buffer, void *meta_data) { return UCA_NO_ERROR; } +static uint32_t uca_ipe_register_callback(struct uca_camera *cam, uca_cam_grab_callback cb, void *user) +{ + if (cam->callback == NULL) { + cam->callback = cb; + cam->callback_user = user; + return UCA_NO_ERROR; + } + return UCA_ERR_GRABBER_CALLBACK_ALREADY_REGISTERED; +} + static uint32_t uca_ipe_destroy(struct uca_camera *cam) { pcilib_close(GET_HANDLE(cam)); @@ -118,7 +128,10 @@ uint32_t uca_ipe_init(struct uca_camera **cam, struct uca_grabber *grabber) uca->start_recording = &uca_ipe_start_recording; uca->stop_recording = &uca_ipe_stop_recording; uca->grab = &uca_ipe_grab; + uca->register_callback = &uca_ipe_register_callback; + uca->callback = NULL; + uca_>callback_user = NULL; uca->state = UCA_CAM_CONFIGURABLE; uca->user = handle; *cam = uca; -- cgit v1.2.3