Choreographer

#include <choreographer.h>

Summary

Typedefs

AChoreographer typedef
struct AChoreographer
AChoreographer_frameCallback)(long frameTimeNanos, void *data) typedef
void(*
Prototype of the function that is called when a new frame is being rendered.

Functions

AChoreographer_getInstance()
AChoreographer *
Get the AChoreographer instance for the current thread.
AChoreographer_postFrameCallback(AChoreographer *choreographer, AChoreographer_frameCallback callback, void *data)
void
Post a callback to be run on the next frame.
AChoreographer_postFrameCallbackDelayed(AChoreographer *choreographer, AChoreographer_frameCallback callback, void *data, long delayMillis)
void
Post a callback to be run on the frame following the specified delay.

Typedefs

AChoreographer

struct AChoreographer AChoreographer

AChoreographer_frameCallback

void(* AChoreographer_frameCallback)(long frameTimeNanos, void *data)

Prototype of the function that is called when a new frame is being rendered.

It's passed the time that the frame is being rendered as nanoseconds in the CLOCK_MONOTONIC time base, as well as the data pointer provided by the application that registered a callback. All callbacks that run as part of rendering a frame will observe the same frame time, so it should be used whenever events need to be synchronized (e.g. animations).

Functions

AChoreographer_getInstance

AChoreographer * AChoreographer_getInstance()

Get the AChoreographer instance for the current thread.

This must be called on an ALooper thread.

AChoreographer_postFrameCallback

void AChoreographer_postFrameCallback(
  AChoreographer *choreographer,
  AChoreographer_frameCallback callback,
  void *data
)

Post a callback to be run on the next frame.

The data pointer provided will be passed to the callback function when it's called.

AChoreographer_postFrameCallbackDelayed

void AChoreographer_postFrameCallbackDelayed(
  AChoreographer *choreographer,
  AChoreographer_frameCallback callback,
  void *data,
  long delayMillis
)

Post a callback to be run on the frame following the specified delay.

The data pointer provided will be passed to the callback function when it's called.