51 lines
1.2 KiB
C++
51 lines
1.2 KiB
C++
#pragma once
|
|
|
|
#include <jni.h>
|
|
|
|
#define DEBUG 1
|
|
|
|
#ifdef DEBUG
|
|
#define DEB(A) std::cout << A << std::endl
|
|
#else
|
|
#define DEB(A) ;
|
|
#endif
|
|
|
|
extern jclass CPPPLUGINCLASS;
|
|
extern jclass EVENTCLASS;
|
|
extern jclass MAPCLASS;
|
|
extern jclass LISTENERCLASS;
|
|
extern jfieldID EVENTDATAF;
|
|
extern jfieldID EVENTNAMEF;
|
|
extern jmethodID MAPGET;
|
|
extern jmethodID MAPPUT;
|
|
extern jmethodID LISTENERCONTR;
|
|
extern jmethodID LISTENERSMALLCONTR;
|
|
|
|
void load(JNIEnv* env, long data);
|
|
|
|
enum JNIDATA : long {
|
|
JNI_PLUGINCLASS = 1,
|
|
JNI_EVENTCLASS = 2,
|
|
JNI_MAPCLASS = 4,
|
|
JNI_LISTENERCLASS = 8,
|
|
JNI_EVENTDATAFIELD = 16 | JNI_EVENTCLASS,
|
|
JNI_EVENTNAMEFIELD = 32 | JNI_EVENTCLASS,
|
|
JNI_MAPGETMETH = 64 | JNI_MAPCLASS,
|
|
JNI_MAPPUTMETH = 128 | JNI_MAPCLASS,
|
|
JNI_LISTENERCONSTR = 256 | JNI_LISTENERCLASS,
|
|
JNI_LISTENERSMALLCONSTR = 512 | JNI_LISTENERCLASS,
|
|
|
|
JNI_EVENT = JNI_EVENTCLASS | JNI_EVENTDATAFIELD | JNI_EVENTNAMEFIELD,
|
|
JNI_MAP = JNI_MAPCLASS | JNI_MAPGETMETH | JNI_MAPPUTMETH,
|
|
JNI_LISTENER = JNI_LISTENERCLASS | JNI_LISTENERCONSTR | JNI_LISTENERSMALLCONSTR,
|
|
|
|
JNI_ALL = 0xFFFF
|
|
};
|
|
/*
|
|
long operator|(JNIDATA a, JNIDATA b);
|
|
long operator|(long a, JNIDATA b);
|
|
long operator&(long a, JNIDATA b);*/
|
|
|
|
class CppPlugin;
|
|
extern CppPlugin* plugin; //what happens, with more than one plugin?
|