summaryrefslogtreecommitdiff
path: root/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
diff options
context:
space:
mode:
authorSundar Raman <sunds@ti.com>2011-09-25 23:10:19 -0700
committerIliyan Malchev <malchev@google.com>2011-09-27 17:33:06 -0700
commitb3fb1a45ce906ab0365f247caf596665ea0c9f39 (patch)
treed70eef52ead1e65ce2b2de3e07de073226cf61a2 /camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
parent4af5978e0677b13118611721f265e2dbaba849ff (diff)
downloadomap4xxx-omapzoom-b3fb1a45ce906ab0365f247caf596665ea0c9f39.tar.gz
CameraHAL: Improved error handling inside the adapters
1. unlock and cancel buffers to ANativeWindow when freeBuffers is called 2. Free the omx handle and deinitialize DOMX when errors occur while calling critical OMXCamera apis 3. Retry OMX_GetHandle if it fails to take care of error recovery scenarios. "Fixes b/5379663" Change-Id: I4729fab40e6104dfa6660ba6f6b1a90f805c2f59 Signed-off-by: Sundar Raman <sunds@ti.com>
Diffstat (limited to 'camera/inc/OMXCameraAdapter/OMXCameraAdapter.h')
-rw-r--r--camera/inc/OMXCameraAdapter/OMXCameraAdapter.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h b/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
index 06d7d738..3435305f 100644
--- a/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
+++ b/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h
@@ -46,6 +46,7 @@ extern "C"
#include "timm_osal_semaphores.h"
}
+
namespace android {
#define Q16_OFFSET 16
@@ -372,6 +373,9 @@ public:
OMX_ERRORTYPE OMXCameraAdapterFillBufferDone(OMX_IN OMX_HANDLETYPE hComponent,
OMX_IN OMX_BUFFERHEADERTYPE* pBuffHeader);
+
+ static OMX_ERRORTYPE OMXCameraGetHandle(OMX_HANDLETYPE *handle, OMX_PTR pAppData=NULL);
+
protected:
//Parent class method implementation
@@ -398,6 +402,8 @@ protected:
private:
+ void performCleanupAfterError();
+
status_t switchToLoaded();
OMXCameraPortParameters *getPortParams(CameraFrame::FrameType frameType);