diff options
author | Zhijun He <zhijunhe@google.com> | 2013-11-07 13:20:46 -0800 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2013-11-07 13:20:46 -0800 |
commit | 0cc7337bac5b1e5368baa896afef0ed41490e69e (patch) | |
tree | be435cc2d7d10b9f13546a175d2469b4e6474358 | |
parent | 536308c30ace1070276ee88e9dcaf07802bd3b07 (diff) | |
parent | 020e6d9bb46850ad39f14e575259a04887a2ea26 (diff) | |
download | android_frameworks_ex-0cc7337bac5b1e5368baa896afef0ed41490e69e.tar.gz android_frameworks_ex-0cc7337bac5b1e5368baa896afef0ed41490e69e.tar.bz2 android_frameworks_ex-0cc7337bac5b1e5368baa896afef0ed41490e69e.zip |
am 020e6d9b: Merge "camera2: Add updateCaptureRequest method" into klp-dev
* commit '020e6d9bb46850ad39f14e575259a04887a2ea26':
camera2: Add updateCaptureRequest method
-rw-r--r-- | camera2/public/src/com/android/ex/camera2/pos/AutoFocusStateMachine.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/camera2/public/src/com/android/ex/camera2/pos/AutoFocusStateMachine.java b/camera2/public/src/com/android/ex/camera2/pos/AutoFocusStateMachine.java index 23959e4..500fb12 100644 --- a/camera2/public/src/com/android/ex/camera2/pos/AutoFocusStateMachine.java +++ b/camera2/public/src/com/android/ex/camera2/pos/AutoFocusStateMachine.java @@ -366,4 +366,25 @@ public class AutoFocusStateMachine { SysTrace.endSectionAsync(mCurrentAfTrace, mCurrentAfCookie); mCurrentAfCookie = AF_UNINITIALIZED; } + + /** + * Update the repeating request with current focus mode. + * + * <p>This is typically used when a new repeating request is created to update preview with + * new metadata (i.e. crop region). The current auto focus mode needs to be carried over for + * correct auto focus behavior.<p> + * + * @param repeatingBuilder Builder for a repeating request. + */ + public synchronized void updateCaptureRequest(CaptureRequest.Builder repeatingBuilder) { + if (repeatingBuilder == null) { + throw new IllegalArgumentException("repeatingBuilder shouldn't be null"); + } + + if (mCurrentAfMode == AF_UNINITIALIZED) { + throw new IllegalStateException("AF mode was not enabled"); + } + + repeatingBuilder.set(CaptureRequest.CONTROL_AF_MODE, mCurrentAfMode); + } } |