Files
mitch030504--Wiicompiled_VR…/aurora-main/include/aurora/android.h
T

31 lines
905 B
C

#ifndef AURORA_ANDROID_H
#define AURORA_ANDROID_H
#ifdef __cplusplus
extern "C" {
#else
#include "stdbool.h"
#endif
/*
* Android surface lifecycle bridge.
*
* Aurora only presents while the Android surface is known to be usable, and
* must never touch an ANativeWindow the Java side is tearing down. Stock SDL3
* keeps its own activity mutex internal to libSDL3.so, so the host app brackets
* every surface change instead: an SDLSurface subclass calls begin before
* delegating surfaceChanged/surfaceDestroyed to SDL and end afterwards, with
* `ready` saying whether SDL left the surface usable. Between the two calls
* Aurora's surface lock is held and presentation is paused.
*
* Call from the Java UI thread only. The pair must always balance.
*/
void aurora_android_begin_surface_mutation(void);
void aurora_android_end_surface_mutation(bool ready);
#ifdef __cplusplus
}
#endif
#endif