summaryrefslogtreecommitdiffstats
path: root/core/java/android/hardware/Camera.java
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2014-07-11 11:46:20 -0700
committerRuben Brunk <rubenbrunk@google.com>2014-07-16 01:23:39 +0000
commitd1f113d0f0ce5099f8efba40a88398f7945bb5e0 (patch)
tree9191016c7af12ed6fe000b3c750c67ce0a6643fa /core/java/android/hardware/Camera.java
parentce50e7af920bf19f3ebf6274657fc51f136c5c87 (diff)
downloadframeworks_base-d1f113d0f0ce5099f8efba40a88398f7945bb5e0.zip
frameworks_base-d1f113d0f0ce5099f8efba40a88398f7945bb5e0.tar.gz
frameworks_base-d1f113d0f0ce5099f8efba40a88398f7945bb5e0.tar.bz2
DO NOT MERGE: camera2: Performance potpourri.
Bug: 16208403 Bug: 15116722 Fixes many of the performance issues in the Camera2 API and LEGACY mode CPU path, including: - Only call getParameters/setParameters when the request has changed. - Cache Request/Result objects. - Cache object hashes for long-lived CameraMetadata, TypeReference, and Key objects with frequently used hash methods. - Switch to Command pattern instead of repeated if/equals calls. in frequently hit CameraMetadata get/set methods. - Move string construction for logging behind flags to avoid extra StringBuilder calls in frequently acquired lock methods. - Cache results from frequently used JNI calls in object Builders. Change-Id: I77bc4a023d4fe8bc46efcf771ff18ee268dcb9a9
Diffstat (limited to 'core/java/android/hardware/Camera.java')
-rw-r--r--core/java/android/hardware/Camera.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/core/java/android/hardware/Camera.java b/core/java/android/hardware/Camera.java
index 4c73e6a..eadfa73 100644
--- a/core/java/android/hardware/Camera.java
+++ b/core/java/android/hardware/Camera.java
@@ -2423,6 +2423,19 @@ public class Camera {
return Camera.this;
}
+
+ /**
+ * Value equality check.
+ *
+ * @hide
+ */
+ public boolean same(Parameters other) {
+ if (this == other) {
+ return true;
+ }
+ return other != null && Parameters.this.mMap.equals(other.mMap);
+ }
+
/**
* Writes the current Parameters to the log.
* @hide