Google is committed to advancing racial equity for Black communities. See how.
Added in API level 21

Key

class Key<T : Any!>
kotlin.Any
   ↳ android.hardware.camera2.CaptureResult.Key

A Key is used to do capture result field lookups with CaptureResult#get.

For example, to get the timestamp corresponding to the exposure of the first row:

<code>
  long timestamp = captureResult.get(CaptureResult.SENSOR_TIMESTAMP);
  </code>

To enumerate over all possible keys for CaptureResult, see CameraCharacteristics#getAvailableCaptureResultKeys.

Summary

Public constructors
<init>(name: String, type: Class<T>)

Construct a new Key with a given name and type.

Public methods
Boolean
equals(other: Any?)

Indicates whether some other object is "equal to" this one.

String

Return a camelCase, period separated name formatted like: "root.section[.subsections].name".

Int

Returns a hash code value for the object.

String

Return this Key as a string representation.

Public constructors

<init>

Added in API level 29
Key(
    name: String,
    type: Class<T>)

Construct a new Key with a given name and type.

Normally, applications should use the existing Key definitions in CaptureResult, and not need to construct their own Key objects. However, they may be useful for testing purposes and for defining custom capture result fields.

Parameters
name String: This value cannot be null.
type Class<T>: This value cannot be null.

Public methods

equals

Added in API level 21
fun equals(other: Any?): Boolean

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).

Note that it is generally necessary to override the hashCode method whenever this method is overridden, so as to maintain the general contract for the hashCode method, which states that equal objects must have equal hash codes.

Parameters
obj the reference object with which to compare.
Return
Boolean true if this object is the same as the obj argument; false otherwise.

getName

Added in API level 21
fun getName(): String

Return a camelCase, period separated name formatted like: "root.section[.subsections].name".

Built-in keys exposed by the Android SDK are always prefixed with "android."; keys that are device/platform-specific are prefixed with "com.".

For example, CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP would have a name of "android.scaler.streamConfigurationMap"; whereas a device specific key might look like "com.google.nexus.data.private".

Return
String String representation of the key name This value cannot be null.

hashCode

Added in API level 21
fun hashCode(): Int

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the java.lang.Object#equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the Java™ programming language.)

Return
Int a hash code value for this object.

toString

Added in API level 21
fun toString(): String

Return this Key as a string representation.

"CaptureResult.Key(%s)", where %s represents the name of this key as returned by getName.

Return
String string representation of Key This value cannot be null.