com.qualcomm.robotcore.hardware

## Enum I2cWaitControl

- java.lang.Object
- - java.lang.Enum<I2cWaitControl>
  - - com.qualcomm.robotcore.hardware.I2cWaitControl

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<I2cWaitControl>

      public enum I2cWaitControl
      extends java.lang.Enum<I2cWaitControl>

  Values in `I2cWaitControl` control the semantics of waiting on I2c writes

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `ATOMIC` The associated write is guaranteed to make it out to the I2c device.
    `NONE` No write timing control is performed.
    `WRITTEN` The semantics of `ATOMIC` with the additional behavior that the wait of the write call will not return until the data has actually been written to the I2c device.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static I2cWaitControl` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static I2cWaitControl[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### NONE

          public static final I2cWaitControl NONE

      No write timing control is performed. The associated write might not actually make it out to the I2c device if a subsequent write updates the same locations with different values.

    - #### ATOMIC

          public static final I2cWaitControl ATOMIC

      The associated write is guaranteed to make it out to the I2c device. Thus, two successive writes in the same location will result in two write transactions to the device. However, the wait on the write call may return before any write has actually made it to the I2c device.

    - #### WRITTEN

          public static final I2cWaitControl WRITTEN

      The semantics of `ATOMIC` with the additional behavior that the wait of the write call will not return until the data has actually been written to the I2c device. This is useful in situations where a certain quiescent delay is required after a particular I2c location has been updated.

  - ### Method Detail

    - #### values

          public static I2cWaitControl[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (I2cWaitControl c : I2cWaitControl.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static I2cWaitControl valueOf(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null