Files
OpenRoyale/native/include/audio.h
T
2026-07-09 07:40:42 +02:00

21 lines
1.0 KiB
C++

// audio.h - public entry points of libg.so's Titan sound system (FMOD glue).
// Reconstructed for functional equivalence from radare2 disassembly of the original 32-bit libg.so.
// The two functions below back the named JNI exports GameApp.soundSystemStart / soundSystemStop;
// titan_jni.cpp forwards to them so the FMOD dependency stays localized to the audio module.
#pragma once
#include <jni.h>
namespace titan {
// GameApp.soundSystemStart() - Android lifecycle "audio resumed" handler.
// Mutex-guarded; if the FMOD system exists and audio is currently suspended, queries the Java
// side (GameApp.isPlayingUserMusic) and resumes the FMOD mixer. (JNI method is static -> obj is
// the jclass; unused for the static up-call.)
void soundSystemStart(JNIEnv* env, jobject obj);
// GameApp.soundSystemStop() - Android lifecycle "audio paused" handler.
// Mutex-guarded; if the FMOD system exists and is not already suspended, suspends the FMOD mixer.
void soundSystemStop(JNIEnv* env, jobject obj);
} // namespace titan