# FakeAdaptiveDataSet.Iterator

Artifact: [androidx.media3:media3-test-utils](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/test/utils/FakeAdaptiveDataSet.java+class:androidx.media3.test.utils.FakeAdaptiveDataSet.Iterator)

*** ** * ** ***


```
class FakeAdaptiveDataSet.Iterator : BaseMediaChunkIterator
```

<br />

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [androidx.media3.exoplayer.source.chunk.BaseMediaChunkIterator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator) ||
|   | ↳ | [androidx.media3.test.utils.FakeAdaptiveDataSet.Iterator](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FakeAdaptiveDataSet.Iterator) |

*** ** * ** ***

`https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator` for the chunks defined by a fake adaptive data set.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FakeAdaptiveDataSet.Iterator#Iterator(androidx.media3.test.utils.FakeAdaptiveDataSet,int,int)( dataSet: https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FakeAdaptiveDataSet!, trackGroupIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, chunkIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html )` Create iterator. |

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FakeAdaptiveDataSet.Iterator#getChunkEndTimeUs()()` Returns the media end time of the chunk, in microseconds. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FakeAdaptiveDataSet.Iterator#getChunkStartTimeUs()()` Returns the media start time of the chunk, in microseconds. |
| `https://developer.android.com/reference/kotlin/androidx/media3/datasource/DataSpec!` | `https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FakeAdaptiveDataSet.Iterator#getDataSpec()()` Returns the `https://developer.android.com/reference/kotlin/androidx/media3/datasource/DataSpec` used to load the media chunk. |

### Inherited Constants

From [androidx.media3.exoplayer.source.chunk.MediaChunkIterator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator) `const https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator!` `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#EMPTY()`

An empty media chunk iterator without available data.

### Inherited functions

From [androidx.media3.exoplayer.source.chunk.BaseMediaChunkIterator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator#checkInBounds()()`

Verifies that the iterator points to a valid element.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator#isEnded()()`

Returns whether the iteration has reached the end of the available data.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator#next()()`

Moves the iterator to the next media chunk.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator#reset()()`

Resets the iterator to the initial position.
From [androidx.media3.exoplayer.source.chunk.MediaChunkIterator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#getLocationSteeringPriorityIndex()()`

Returns the index in the steering priority list of the locations (e.g., DASH service location or HLS pathway) for the current media chunks, or `Integer.MAX_VALUE` if steering is inactive or unavailable.

### Inherited properties

From [androidx.media3.exoplayer.source.chunk.BaseMediaChunkIterator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/BaseMediaChunkIterator#currentIndex()`

## Public constructors

### Iterator

```
Iterator(
    dataSet: FakeAdaptiveDataSet!,
    trackGroupIndex: Int,
    chunkIndex: Int
)
```

Create iterator.

| Parameters |
|---|---|
| `dataSet: https://developer.android.com/reference/kotlin/androidx/media3/test/utils/FakeAdaptiveDataSet!` | The data set to iterate over. |
| `trackGroupIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | The index of the track group to iterate over. |
| `chunkIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | The chunk index to which the iterator points initially. |

## Public functions

### getChunkEndTimeUs

```
fun getChunkEndTimeUs(): Long
```

Returns the media end time of the chunk, in microseconds.

| Throws |
|---|---|
| `https://developer.android.com/reference/java/util/NoSuchElementException.html` | If the method is called before the first call to `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#next()` or when `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#isEnded()` is true. |

### getChunkStartTimeUs

```
fun getChunkStartTimeUs(): Long
```

Returns the media start time of the chunk, in microseconds.

| Throws |
|---|---|
| `https://developer.android.com/reference/java/util/NoSuchElementException.html` | If the method is called before the first call to `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#next()` or when `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#isEnded()` is true. |

### getDataSpec

```
fun getDataSpec(): DataSpec!
```

Returns the `https://developer.android.com/reference/kotlin/androidx/media3/datasource/DataSpec` used to load the media chunk.

| Throws |
|---|---|
| `https://developer.android.com/reference/java/util/NoSuchElementException.html` | If the method is called before the first call to `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#next()` or when `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/chunk/MediaChunkIterator#isEnded()` is true. |