diff options
author | Steve Kondik <shade@chemlab.org> | 2013-05-04 03:07:51 -0700 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2013-05-04 03:07:51 -0700 |
commit | 93df8a71f87985a9aa3dc142b430c365e2a53276 (patch) | |
tree | 437fa8a8417d94a898fd4dd63503362bd8ffb88c /core/jni | |
parent | 26caff32fde6413ce7f14a543d4300bc252af6ae (diff) | |
download | frameworks_base-93df8a71f87985a9aa3dc142b430c365e2a53276.zip frameworks_base-93df8a71f87985a9aa3dc142b430c365e2a53276.tar.gz frameworks_base-93df8a71f87985a9aa3dc142b430c365e2a53276.tar.bz2 |
camera: Add support for sending raw commands
* Certain camera drivers need magic commands to select special modes
such as ZSL or HDR. Add support for sending raw commands from
applications.
Change-Id: I512a765c7a67ffd2877e465cf6493ffc2b3b54ac
Diffstat (limited to 'core/jni')
-rw-r--r-- | core/jni/android_hardware_Camera.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/core/jni/android_hardware_Camera.cpp b/core/jni/android_hardware_Camera.cpp index d8fc55e..e420a2b 100644 --- a/core/jni/android_hardware_Camera.cpp +++ b/core/jni/android_hardware_Camera.cpp @@ -852,6 +852,17 @@ static void android_hardware_Camera_enableFocusMoveCallback(JNIEnv *env, jobject #endif } +static void android_hardware_Camera_sendRawCommand(JNIEnv *env, jobject thiz, jint arg1, jint arg2, jint arg3) +{ + ALOGV("sendRawCommand %d, %d, %d", arg1, arg2, arg3); + sp<Camera> camera = get_native_camera(env, thiz, NULL); + if (camera == 0) return; + + if (camera->sendCommand(arg1, arg2, arg3) != NO_ERROR) { + jniThrowRuntimeException(env, "send raw command failed"); + } +} + //------------------------------------------------- static JNINativeMethod camMethods[] = { @@ -933,6 +944,9 @@ static JNINativeMethod camMethods[] = { { "enableFocusMoveCallback", "(I)V", (void *)android_hardware_Camera_enableFocusMoveCallback}, + { "sendRawCommand", + "(III)V", + (void *)android_hardware_Camera_sendRawCommand}, }; struct field { |