# Choreographer.FrameTimeline

Added in[API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)

# FrameTimeline

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/android/view/Choreographer.FrameTimeline "View this page in Java")  

```
class FrameTimeline
```

|---|--------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                       ||
| ↳ | [android.view.Choreographer.FrameTimeline](https://developer.android.com/reference/kotlin/android/view/Choreographer.FrameTimeline#) |

Holds data that describes one possible VSync frame event to render at.

## Summary

|                                                                                                                                                                                                       Public methods                                                                                                                                                                                                       ||
|----------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| open[Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html) | [getDeadlineNanos](https://developer.android.com/reference/kotlin/android/view/Choreographer.FrameTimeline#getDeadlineNanos())`()` The time in[System.nanoTime()](https://developer.android.com/reference/kotlin/java/lang/System.html#nanoTime())timebase which this frame needs to be ready by.                                        |
| open[Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html) | [getExpectedPresentationTimeNanos](https://developer.android.com/reference/kotlin/android/view/Choreographer.FrameTimeline#getExpectedPresentationTimeNanos())`()` The time in[System.nanoTime()](https://developer.android.com/reference/kotlin/java/lang/System.html#nanoTime())timebase which this frame is expected to be presented. |
| open[Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html) | [getVsyncId](https://developer.android.com/reference/kotlin/android/view/Choreographer.FrameTimeline#getVsyncId())`()` The id that corresponds to this frame timeline, used to correlate a frame produced by HWUI with the timeline data stored in Surface Flinger.                                                                      |

## Public methods

### getDeadlineNanos

Added in[API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun getDeadlineNanos(): Long
```

The time in[System.nanoTime()](https://developer.android.com/reference/kotlin/java/lang/System.html#nanoTime())timebase which this frame needs to be ready by.  

### getExpectedPresentationTimeNanos

Added in[API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun getExpectedPresentationTimeNanos(): Long
```

The time in[System.nanoTime()](https://developer.android.com/reference/kotlin/java/lang/System.html#nanoTime())timebase which this frame is expected to be presented.  

### getVsyncId

Added in[API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun getVsyncId(): Long
```

The id that corresponds to this frame timeline, used to correlate a frame produced by HWUI with the timeline data stored in Surface Flinger.