public class **ByteBufferMlImageBuilder** Builds a `https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/MlImage` from a `https://developer.android.com/reference/java/nio/ByteBuffer.html`.

You can pass in either mutable or immutable `https://developer.android.com/reference/java/nio/ByteBuffer.html`. However once `https://developer.android.com/reference/java/nio/ByteBuffer.html` is passed in, to keep data integrity you shouldn't modify content in it.

Use `https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/ByteBufferExtractor` to get `https://developer.android.com/reference/java/nio/ByteBuffer.html` you passed in.

<br />

<br />

### Public Constructors

|---|---|
|   | [ByteBufferMlImageBuilder](https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/ByteBufferMlImageBuilder#ByteBufferMlImageBuilder(java.nio.ByteBuffer,%20int,%20int,%20int))([ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html) byteBuffer, int width, int height, int imageFormat) Creates the builder with mandatory `https://developer.android.com/reference/java/nio/ByteBuffer.html` and the represented image. |

### Public Methods

|---|---|
| [MlImage](https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/MlImage) | [build](https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/ByteBufferMlImageBuilder#build())() Builds an `https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/MlImage` instance. |
| [ByteBufferMlImageBuilder](https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/ByteBufferMlImageBuilder) | [setRotation](https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/ByteBufferMlImageBuilder#setRotation(int))(int rotation) Sets value for `https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/MlImage#getRotation()`. |

### Inherited Methods

From class java.lang.Object

|---|---|
| boolean | equals([Object](https://developer.android.com/reference/java/lang/Object.html) arg0) |
| final [Class](https://developer.android.com/reference/java/lang/Class.html)\<?\> | getClass() |
| int | hashCode() |
| final void | notify() |
| final void | notifyAll() |
| [String](https://developer.android.com/reference/java/lang/String.html) | toString() |
| final void | wait(long arg0, int arg1) |
| final void | wait(long arg0) |
| final void | wait() |

## Public Constructors

#### public
**ByteBufferMlImageBuilder**
([ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html) byteBuffer, int width, int height, int imageFormat)

Creates the builder with mandatory `https://developer.android.com/reference/java/nio/ByteBuffer.html` and the represented image.

We will validate the size of the `byteBuffer` with given `width`, `height`
and `imageFormat`.

Also calls `https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/ByteBufferMlImageBuilder#setRotation(int)` to set the optional properties. If not set, the values
will be set with default:

- rotation: 0

<br />

<br />

<br />

##### Parameters

| byteBuffer | image data object. |
| width | the width of the represented image. |
| height | the height of the represented image. |
| imageFormat | how the data encode the image. |
|---|---|

## Public Methods

#### public [MlImage](https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/MlImage)
**build**
()

Builds an `https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/MlImage` instance.

#### public [ByteBufferMlImageBuilder](https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/ByteBufferMlImageBuilder)
**setRotation**
(int rotation)

Sets value for `https://developers.google.com/edge/api/tflite/java/com/google/android/odml/image/MlImage#getRotation()`.

##### Parameters

| rotation |   |
|---|---|

##### Throws

| [IllegalArgumentException](https://developer.android.com/reference/java/lang/IllegalArgumentException.html) | if the rotation value is not 0, 90, 180 or 270. |
|---|---|