com.qualcomm.robotcore.hardware

## Class I2cDeviceSynchImpl.WriteCacheStatus

- java.lang.Object
- - com.qualcomm.robotcore.hardware.I2cDeviceSynchImpl.WriteCacheStatus

- Enclosing class:
    I2cDeviceSynchImpl

      protected class I2cDeviceSynchImpl.WriteCacheStatus
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `WriteCacheStatus()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `I2cDeviceSynchImpl.WRITE_CACHE_STATUS` | `getStatus()`
    `void` | `initStatus(I2cDeviceSynchImpl.WRITE_CACHE_STATUS status)`
    `void` | `setStatus(I2cDeviceSynchImpl.WRITE_CACHE_STATUS status)`
    `long` | `waitForIdle()` Waits for the write cache to become idle.

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### WriteCacheStatus

          protected WriteCacheStatus()

  - ### Method Detail

    - #### setStatus

          public void setStatus(I2cDeviceSynchImpl.WRITE_CACHE_STATUS status)

    - #### initStatus

          public void initStatus(I2cDeviceSynchImpl.WRITE_CACHE_STATUS status)

    - #### getStatus

          public I2cDeviceSynchImpl.WRITE_CACHE_STATUS getStatus()

    - #### waitForIdle

          public long waitForIdle()
                           throws java.lang.InterruptedException

      Waits for the write cache to become idle. But that doesn't come within a totally unreasonable amount of time, we're going to assume that our ReadWriteRunnable thread is either stuck or is dead, and we're going to get out of here.
      Returns:
        the time on the nanotime clock clock at which the idle transition occurred
      Throws:
        `java.lang.InterruptedException`