Codemesh Runtime v3 C++ API Reference
3.9.205
|
5 #ifndef xmog_JavaVM_inc
6 #define xmog_JavaVM_inc
12 #if (XMOG_IMPLEMENTS_REMOTE_CLIENT==1)
20 #include "xmog_remote_ref_map.h"
21 #include "xmog_class_info_mapper.h"
26 #define CLASS_FROM_ID(x) (jclass)(((jint)(jlong)x) >> 16)
27 #define CLASSID_FROM_CLASS(x) ((jint)(jlong)(x))
28 #define FIELDID_FROM_FIELD(x) ((jint)(jlong)(x))
29 #define METHODID_FROM_METHOD(x) ((jint)(jlong)(x))
30 #define OBJECTID_FROM_OBJECT(x) ((jint)(jlong)(x))
virtual void RemoteSetArrayRegion(const char *arrType, jarray array, jsize start, jsize len, void *buf, xmog_JNIEnv *env)=0
Sets the values of a region of an array.
A utility class that tracks remote object types and their relationships.
Definition: xmog_class_info_mapper.h:24
virtual jclass RemoteGetSuperClass(jclass sub, xmog_JNIEnv *env)=0
Queries for a subtype's superclass.
void setInDestroy(bool b)
Sets flag to true if this instance has started destroy processing.
A utility class that tracks remote object references with a reference count.
Definition: xmog_remote_ref_map.h:44
~xmog_JavaVM()
Destructor.
bool bInDestroy_
A guard flag against recursive invocation of the DestroyJavaVM() method.
Definition: xmog_JavaVM.h:191
An abstract JavaVM type that is used as a base class for concrete JavaVM_ replacement types.
Definition: xmog_JavaVM.h:39
virtual jboolean RemoteIsInstanceOf(jobject obj, jclass clazz, xmog_JNIEnv *env)=0
Queries for an instance-of relationship between an object and a type.
The baseclass for all proxy types in the framework.
Definition: xmog_base.h:29
The class that represents a Java Virtual Machine in the framework.
Definition: xmog_jvm.h:41
virtual void RemoteGetArrayRegion(const char *arrType, jarray array, jsize start, jsize len, void *buf, xmog_JNIEnv *env)=0
Returns the values in a region of an array.
xmog_jvm * getJvm() const
Returns the higher-level abstraction that owns this instance.
virtual jarray RemoteNewArray(const char *arrType, jsize size, xmog_JNIEnv *env)=0
Creates an array and returns the handle.
void setJvm(xmog_jvm *jvm_)
Sets the higher-level abstraction that owns this instance.
xmog_JavaVM()
The default constructor.
virtual jstring RemoteNewString(const unsigned short *str, xmog_JNIEnv *env, int len=-1)=0
Attempts to create a string on the server.
xmog_jvm * theJvm
A pointer to the higher level abstraction instance that owns this instance.
Definition: xmog_JavaVM.h:186
virtual jclass RemoteGetClass(jobject obj, xmog_JNIEnv *env)=0
Queries for the type of an object.
An abstract baseclass for concrete JNIEnv implementations.
Definition: xmog_JNIEnv.h:26
virtual jboolean RemoteIsAssignableFrom(jclass sub, jclass sup, xmog_JNIEnv *env)=0
Queries for an inheritance relationship between two types.
bool getInDestroy()
Returns true if this instance has started destroy processing.
virtual jarray RemoteNewPrimitiveArray(const char *arrType, xmog::xmog_data_code elemCode, void *pData, jsize length, jsize size, xmog_JNIEnv *env)=0
Creates a primitive array from the given data and returns the handle.
virtual jstring RemoteNewStringUtf(const char *str, xmog_JNIEnv *env)=0
Creates a string in the shared JVM and returns the handle.
Copyright (c) 1999-2020 by Codemesh, Inc., ALL RIGHTS RESERVED.