com.jogamp.opengl.util.texture

## Interface TextureSequence.TexSeqEventListener<T extends TextureSequence>

- All Known Subinterfaces:
    GLMediaPlayer.GLMediaEventListener
  Enclosing interface:
    TextureSequence

      public static interface TextureSequence.TexSeqEventListener<T extends TextureSequence>

  Event listener to notify users of updates regarding the `TextureSequence`.

  Implementations sending events down to all listeners, while not necessarily making the user's OpenGL context current.

  Events may be sent from a 3rd-party thread, possibly holding another, maybe shared, OpenGL context current.
  Hence a user shall not issue any OpenGL, time consuming or `TextureSequence` operations directly.
  Instead, the user shall:

  - off-load complex or `TextureSequence` commands on another thread, or
  - injecting `GLRunnable` objects via `GLAutoDrawable.invoke(boolean, GLRunnable)`, or
  - simply changing a volatile state of their `GLEventListener` implementation.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `newFrameAvailable(T ts, TextureSequence.TextureFrame newFrame, long when)` Signaling listeners that a new `TextureSequence.TextureFrame` is available.

- - ### Method Detail

    - #### newFrameAvailable

          void newFrameAvailable(T ts,
                               TextureSequence.TextureFrame newFrame,
                               long when)

      Signaling listeners that a new `TextureSequence.TextureFrame` is available.

      User shall utilize `TextureSequence.getNextTexture(GL)` to dequeue it to maintain a consistent queue.

      Parameters:
        `ts` - the event source
        `newFrame` - the newly enqueued frame
        `when` - system time in msec.

Copyright 2010 JogAmp Community.