1 package org.ppsspp.ppsspp;
2 
3 // Note that the display* methods are in NativeRenderer.java
4 
5 public class NativeApp {
6 	public static final int DEVICE_ID_DEFAULT = 0;
7 	public static final int DEVICE_ID_KEYBOARD = 1;
8 	public static final int DEVICE_ID_MOUSE = 2;
9 	public static final int DEVICE_ID_PAD_0 = 10;
10 
11 	public static final int DEVICE_TYPE_MOBILE = 0;
12 	public static final int DEVICE_TYPE_TV = 1;
13 	public static final int DEVICE_TYPE_DESKTOP = 2;
14 
init(String model, int deviceType, String languageRegion, String apkPath, String dataDir, String externalStorageDir, String extFilesDir, String additionalStorageDirs, String libraryDir, String cacheDir, String shortcutParam, int androidVersion, String board)15 	public static native void init(String model, int deviceType, String languageRegion, String apkPath, String dataDir, String externalStorageDir, String extFilesDir, String additionalStorageDirs, String libraryDir, String cacheDir, String shortcutParam, int androidVersion, String board);
audioInit()16 	public static native void audioInit();
audioShutdown()17 	public static native void audioShutdown();
audioConfig(int optimalFramesPerBuffer, int optimalSampleRate)18 	public static native void audioConfig(int optimalFramesPerBuffer, int optimalSampleRate);
19 
audioRecording_SetSampleRate(int sampleRate)20 	public static native void audioRecording_SetSampleRate(int sampleRate);
audioRecording_Start()21 	public static native void audioRecording_Start();
audioRecording_Stop()22 	public static native void audioRecording_Stop();
23 
computeDesiredBackbufferDimensions()24 	public static native void computeDesiredBackbufferDimensions();
getDesiredBackbufferWidth()25 	public static native int getDesiredBackbufferWidth();
getDesiredBackbufferHeight()26 	public static native int getDesiredBackbufferHeight();
27 
setDisplayParameters(int display_xres, int display_yres, int dpi, float refreshRate)28 	public static native void setDisplayParameters(int display_xres, int display_yres, int dpi, float refreshRate);
backbufferResize(int bufferWidth, int bufferHeight, int format)29 	public static native void backbufferResize(int bufferWidth, int bufferHeight, int format);
30 
isLandscape()31 	public static native boolean isLandscape();
isAtTopLevel()32 	public static native boolean isAtTopLevel();
33 
34 	// These have Android semantics: Resume is always called on bootup, after init
pause()35 	public static native void pause();
resume()36 	public static native void resume();
37 
shutdown()38 	public static native void shutdown();
39 
keyDown(int deviceId, int key, boolean isRepeat)40 	public static native boolean keyDown(int deviceId, int key, boolean isRepeat);
keyUp(int deviceId, int key)41 	public static native boolean keyUp(int deviceId, int key);
42 
beginJoystickEvent()43 	public static native void beginJoystickEvent();
joystickAxis(int deviceId, int axis, float value)44 	public static native void joystickAxis(int deviceId, int axis, float value);
endJoystickEvent()45 	public static native void endJoystickEvent();
46 
mouseWheelEvent(float x, float y)47 	public static native boolean mouseWheelEvent(float x, float y);
48 
49 	// Sensor/input data. These are asynchronous, beware!
touch(float x, float y, int data, int pointerId)50 	public static native boolean touch(float x, float y, int data, int pointerId);
51 
accelerometer(float x, float y, float z)52 	public static native boolean accelerometer(float x, float y, float z);
53 
sendMessage(String msg, String arg)54 	public static native void sendMessage(String msg, String arg);
sendInputBox(String seqID, boolean result, String value)55 	public static native void sendInputBox(String seqID, boolean result, String value);
56 
queryConfig(String queryName)57 	public static native String queryConfig(String queryName);
58 
getSelectedCamera()59 	public static native int getSelectedCamera();
setGpsDataAndroid(long time, float hdop, float latitude, float longitude, float altitude, float speed, float bearing)60 	public static native void setGpsDataAndroid(long time, float hdop, float latitude, float longitude, float altitude, float speed, float bearing);
setSatInfoAndroid(short index, short id, short elevation, short azimuth, short snr, short good)61 	public static native void setSatInfoAndroid(short index, short id, short elevation, short azimuth, short snr, short good);
pushCameraImageAndroid(byte[] image)62 	public static native void pushCameraImageAndroid(byte[] image);
63 }
64