summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/camera2/CaptureSequencer.h
diff options
context:
space:
mode:
authorEino-Ville Talvala <etalvala@google.com>2012-10-08 12:17:36 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-10-08 12:17:37 -0700
commit8ada0bf772354a1d31361d3b4f49efd36d8a6e6e (patch)
tree8a22116a9416e1f38aa779ce0f6fc0132b8ed1d2 /services/camera/libcameraservice/camera2/CaptureSequencer.h
parent193c13fa1615ad5130b6d75dc05e50468e1c585c (diff)
parente049384cdd0f728c45955d65cae754c46aac18cf (diff)
downloadframeworks_av-8ada0bf772354a1d31361d3b4f49efd36d8a6e6e.zip
frameworks_av-8ada0bf772354a1d31361d3b4f49efd36d8a6e6e.tar.gz
frameworks_av-8ada0bf772354a1d31361d3b4f49efd36d8a6e6e.tar.bz2
Merge "Camera2: On stopping preview, wait until captures are completed." into jb-mr1-dev
Diffstat (limited to 'services/camera/libcameraservice/camera2/CaptureSequencer.h')
-rw-r--r--services/camera/libcameraservice/camera2/CaptureSequencer.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/services/camera/libcameraservice/camera2/CaptureSequencer.h b/services/camera/libcameraservice/camera2/CaptureSequencer.h
index 07e4c01..8df6d95 100644
--- a/services/camera/libcameraservice/camera2/CaptureSequencer.h
+++ b/services/camera/libcameraservice/camera2/CaptureSequencer.h
@@ -53,6 +53,11 @@ class CaptureSequencer:
// Begin still image capture
status_t startCapture();
+ // Wait until current image capture completes; returns immediately if no
+ // capture is active. Returns TIMED_OUT if capture does not complete during
+ // the specified duration.
+ status_t waitUntilIdle(nsecs_t timeout);
+
// Notifications about AE state changes
void notifyAutoExposure(uint8_t newState, int triggerId);
@@ -118,6 +123,8 @@ class CaptureSequencer:
NUM_CAPTURE_STATES
} mCaptureState;
static const char* kStateNames[];
+ Mutex mStateMutex; // Guards mCaptureState
+ Condition mStateChanged;
typedef CaptureState (CaptureSequencer::*StateManager)(sp<Camera2Client> &client);
static const StateManager kStateManagers[];