summaryrefslogtreecommitdiffstats
path: root/camera/CameraHal_Module.cpp
diff options
context:
space:
mode:
authorTyler Luu <tluu@ti.com>2012-03-26 17:00:52 -0500
committerDaniel Levin <dendy@ti.com>2012-07-25 08:55:45 -0500
commitd67256d3baed24faed7121ebceaebb0c6be2de6d (patch)
treebd5ea59682378228e49a879fc42e6e8bc540b458 /camera/CameraHal_Module.cpp
parent78f1a95ab2745b74c10d861dd9b91012ea7bfc93 (diff)
downloadhardware_ti_omap4-d67256d3baed24faed7121ebceaebb0c6be2de6d.zip
hardware_ti_omap4-d67256d3baed24faed7121ebceaebb0c6be2de6d.tar.gz
hardware_ti_omap4-d67256d3baed24faed7121ebceaebb0c6be2de6d.tar.bz2
camera: initial implementation for BufferSource
Initial implementation to accept and use a BufferSource (SurfaceTexture) object for buffer management and datacallbacks. Change-Id: I0c1b8854f162eb3ea00c568a56c485d67f41ebca Signed-off-by: Tyler Luu <tluu@ti.com> Signed-off-by: Vladimir Petrov <vppetrov@mm-sol.com>
Diffstat (limited to 'camera/CameraHal_Module.cpp')
-rw-r--r--camera/CameraHal_Module.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/camera/CameraHal_Module.cpp b/camera/CameraHal_Module.cpp
index 8984eae..2181cc2 100644
--- a/camera/CameraHal_Module.cpp
+++ b/camera/CameraHal_Module.cpp
@@ -88,6 +88,25 @@ int camera_set_preview_window(struct camera_device * device,
return rv;
}
+int camera_set_buffer_source(struct camera_device * device,
+ struct preview_stream_ops *tapin,
+ struct preview_stream_ops *tapout)
+{
+ int rv = -EINVAL;
+ ti_camera_device_t* ti_dev = NULL;
+
+ LOGV("%s", __FUNCTION__);
+
+ if(!device)
+ return rv;
+
+ ti_dev = (ti_camera_device_t*) device;
+
+ rv = gCameraHals[ti_dev->cameraid]->setBufferSource(tapin, tapout);
+
+ return rv;
+}
+
void camera_set_callbacks(struct camera_device * device,
camera_notify_callback notify_cb,
camera_data_callback data_cb,
@@ -546,6 +565,7 @@ int camera_device_open(const hw_module_t* module, const char* name,
camera_device->base.ops = camera_ops;
camera_ops->set_preview_window = camera_set_preview_window;
+ camera_ops->set_buffer_source = camera_set_buffer_source;
camera_ops->set_callbacks = camera_set_callbacks;
camera_ops->enable_msg_type = camera_enable_msg_type;
camera_ops->disable_msg_type = camera_disable_msg_type;