Plasma Engine  2.0
Loading...
Searching...
No Matches
AndroidUtils.h
1#pragma once
2
3#if PL_DISABLED(PL_PLATFORM_ANDROID)
4# error "android util header should only be included in android builds!"
5#endif
6#include <Foundation/Communication/Event.h>
7
8struct android_app;
9struct _JavaVM;
10using JavaVM = _JavaVM;
11struct _JNIEnv;
12using JNIEnv = _JNIEnv;
13class _jobject;
14using jobject = _jobject*;
15struct AInputEvent;
16
20{
21 AInputEvent* m_pEvent = nullptr;
22 bool m_bHandled = false;
23};
24
25class PL_FOUNDATION_DLL plAndroidUtils
26{
27public:
28 static void SetAndroidApp(android_app* app);
29 static android_app* GetAndroidApp();
30
31 static void SetAndroidJavaVM(JavaVM* vm);
32 static JavaVM* GetAndroidJavaVM();
33
34 static void SetAndroidNativeActivity(jobject nativeActivity);
35 static jobject GetAndroidNativeActivity();
36
37public:
38 static plEvent<plAndroidInputEvent&> s_InputEvent;
39 static plEvent<plInt32> s_AppCommandEvent;
40
41private:
42 static android_app* s_app;
43 static JavaVM* s_vm;
44 static jobject s_na;
45};
Definition AndroidUtils.h:26
Definition Event.h:177
Event fired by plAndroidUtils::s_InputEvent. Event listeners should inspect m_pEvent and set m_bHandl...
Definition AndroidUtils.h:20