Package com.google.android.exoplayer2.analytics

## Class AnalyticsListener.EventTime

- java.lang.Object
- - com.google.android.exoplayer2.analytics.AnalyticsListener.EventTime

- Enclosing interface:
    AnalyticsListener

      public static final class AnalyticsListener.EventTime
      extends Object

  Time information of an event.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `MediaSource.MediaPeriodId` | `currentMediaPeriodId` | `Media period identifier` for the currently playing media period at the time of the event, or `null` if no current media period identifier is available.
    `long` | `currentPlaybackPositionMs` | Position in the `current timeline window` or the currently playing ad at the time of the event, in milliseconds.
    `Timeline` | `currentTimeline` | The current `Timeline` at the time of the event (equivalent to `Player.getCurrentTimeline()`).
    `int` | `currentWindowIndex` | The current window index in `currentTimeline` at the time of the event, or the prospective window index if the timeline is not yet known and empty (equivalent to `Player.getCurrentWindowIndex()`).
    `long` | `eventPlaybackPositionMs` | Position in the window or ad this event belongs to at the time of the event, in milliseconds.
    `MediaSource.MediaPeriodId` | `mediaPeriodId` | `Media period identifier` for the media period this event belongs to, or `null` if the event is not associated with a specific media period.
    `long` | `realtimeMs` | Elapsed real-time as returned by `SystemClock.elapsedRealtime()` at the time of the event, in milliseconds.
    `Timeline` | `timeline` | Most recent `Timeline` that contains the event position.
    `long` | `totalBufferedDurationMs` | Total buffered duration from `currentPlaybackPositionMs` at the time of the event, in milliseconds.
    `int` | `windowIndex` | Window index in the `timeline` this event belongs to, or the prospective window index if the timeline is not yet known and empty.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EventTime​(long realtimeMs, Timeline timeline, int windowIndex, MediaSource.MediaPeriodId mediaPeriodId, long eventPlaybackPositionMs, Timeline currentTimeline, int currentWindowIndex, MediaSource.MediaPeriodId currentMediaPeriodId, long currentPlaybackPositionMs, long totalBufferedDurationMs)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(Object o)` |
    `int` | `hashCode()` |

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

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

- - ### Field Detail

    - #### realtimeMs

          public final long realtimeMs

      Elapsed real-time as returned by `SystemClock.elapsedRealtime()` at the time of the event, in milliseconds.

    - #### timeline

          public final Timeline timeline

      Most recent `Timeline` that contains the event position.

    - #### windowIndex

          public final int windowIndex

      Window index in the `timeline` this event belongs to, or the prospective window index if the timeline is not yet known and empty.

    - #### mediaPeriodId

          @Nullable
          public final MediaSource.MediaPeriodId mediaPeriodId

      `Media period identifier` for the media period this event belongs to, or `null` if the event is not associated with a specific media period.

    - #### eventPlaybackPositionMs

          public final long eventPlaybackPositionMs

      Position in the window or ad this event belongs to at the time of the event, in milliseconds.

    - #### currentTimeline

          public final Timeline currentTimeline

      The current `Timeline` at the time of the event (equivalent to `Player.getCurrentTimeline()`).

    - #### currentWindowIndex

          public final int currentWindowIndex

      The current window index in `currentTimeline` at the time of the event, or the prospective window index if the timeline is not yet known and empty (equivalent to `Player.getCurrentWindowIndex()`).

    - #### currentMediaPeriodId

          @Nullable
          public final MediaSource.MediaPeriodId currentMediaPeriodId

      `Media period identifier` for the currently playing media period at the time of the event, or `null` if no current media period identifier is available.

    - #### currentPlaybackPositionMs

          public final long currentPlaybackPositionMs

      Position in the `current timeline window` or the currently playing ad at the time of the event, in milliseconds.

    - #### totalBufferedDurationMs

          public final long totalBufferedDurationMs

      Total buffered duration from `currentPlaybackPositionMs` at the time of the event, in milliseconds. This includes pre-buffered data for subsequent ads and windows.

  - ### Constructor Detail

    - #### EventTime

          public EventTime​(long realtimeMs,
                           Timeline timeline,
                           int windowIndex,
                           @Nullable
                           MediaSource.MediaPeriodId mediaPeriodId,
                           long eventPlaybackPositionMs,
                           Timeline currentTimeline,
                           int currentWindowIndex,
                           @Nullable
                           MediaSource.MediaPeriodId currentMediaPeriodId,
                           long currentPlaybackPositionMs,
                           long totalBufferedDurationMs)

      Parameters:
        `realtimeMs` - Elapsed real-time as returned by `SystemClock.elapsedRealtime()` at the time of the event, in milliseconds.
        `timeline` - Most recent `Timeline` that contains the event position.
        `windowIndex` - Window index in the `timeline` this event belongs to, or the prospective window index if the timeline is not yet known and empty.
        `mediaPeriodId` - `Media period identifier` for the media period this event belongs to, or `null` if the event is not associated with a specific media period.
        `eventPlaybackPositionMs` - Position in the window or ad this event belongs to at the time of the event, in milliseconds.
        `currentTimeline` - The current `Timeline` at the time of the event (equivalent to `Player.getCurrentTimeline()`).
        `currentWindowIndex` - The current window index in `currentTimeline` at the time of the event, or the prospective window index if the timeline is not yet known and empty (equivalent to `Player.getCurrentWindowIndex()`).
        `currentMediaPeriodId` - `Media period identifier` for the currently playing media period at the time of the event, or `null` if no current media period identifier is available.
        `currentPlaybackPositionMs` - Position in the current timeline window or the currently playing ad at the time of the event, in milliseconds.
        `totalBufferedDurationMs` - Total buffered duration from `currentPlaybackPositionMs` at the time of the event, in milliseconds. This includes pre-buffered data for subsequent ads and windows.

  - ### Method Detail

    - #### equals

          public boolean equals​(@Nullable
                                Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`