jri_8h-source.html

jri.h

00001 /* -*- Mode: C; tab-width: 4; -*- */
00002 /*******************************************************************************
00003  * Java Runtime Interface
00004  * Copyright (c) 1996 Netscape Communications Corporation. All rights reserved.
00005  ******************************************************************************/
00006 
00007 #ifndef JRI_H
00008 #define JRI_H
00009 
00010 #include "jritypes.h"
00011 
00012 #ifdef __cplusplus
00013 extern "C" {
00014 #endif /* __cplusplus */
00015 
00016 /*******************************************************************************
00017  * JRIEnv
00018  ******************************************************************************/
00019 
00020 /* The type of the JRIEnv interface. */
00021 typedef struct JRIEnvInterface  JRIEnvInterface;
00022 
00023 /* The type of a JRIEnv instance. */
00024 typedef const JRIEnvInterface*  JRIEnv;
00025 
00026 /*******************************************************************************
00027  * JRIEnv Operations
00028  ******************************************************************************/
00029 
00030 #define JRI_LoadClass(env, buf, bufLen) \
00031         (((*(env))->LoadClass)(env, JRI_LoadClass_op, buf, bufLen))
00032 
00033 #define JRI_FindClass(env, name)        \
00034         (((*(env))->FindClass)(env, JRI_FindClass_op, name))
00035 
00036 #define JRI_Throw(env, obj)     \
00037         (((*(env))->Throw)(env, JRI_Throw_op, obj))
00038 
00039 #define JRI_ThrowNew(env, clazz, message)       \
00040         (((*(env))->ThrowNew)(env, JRI_ThrowNew_op, clazz, message))
00041 
00042 #define JRI_ExceptionOccurred(env)      \
00043         (((*(env))->ExceptionOccurred)(env, JRI_ExceptionOccurred_op))
00044 
00045 #define JRI_ExceptionDescribe(env)      \
00046         (((*(env))->ExceptionDescribe)(env, JRI_ExceptionDescribe_op))
00047 
00048 #define JRI_ExceptionClear(env) \
00049         (((*(env))->ExceptionClear)(env, JRI_ExceptionClear_op))
00050 
00051 #define JRI_NewGlobalRef(env, ref)      \
00052         (((*(env))->NewGlobalRef)(env, JRI_NewGlobalRef_op, ref))
00053 
00054 #define JRI_DisposeGlobalRef(env, gref) \
00055         (((*(env))->DisposeGlobalRef)(env, JRI_DisposeGlobalRef_op, gref))
00056 
00057 #define JRI_GetGlobalRef(env, gref)     \
00058         (((*(env))->GetGlobalRef)(env, JRI_GetGlobalRef_op, gref))
00059 
00060 #define JRI_SetGlobalRef(env, gref, ref)        \
00061         (((*(env))->SetGlobalRef)(env, JRI_SetGlobalRef_op, gref, ref))
00062 
00063 #define JRI_IsSameObject(env, a, b)     \
00064         (((*(env))->IsSameObject)(env, JRI_IsSameObject_op, a, b))
00065 
00066 #define JRI_NewObject(env)      ((*(env))->NewObject)
00067 #define JRI_NewObjectV(env, clazz, methodID, args)      \
00068         (((*(env))->NewObjectV)(env, JRI_NewObject_op_va_list, clazz, methodID, args))
00069 #define JRI_NewObjectA(env, clazz, method, args)        \
00070         (((*(env))->NewObjectA)(env, JRI_NewObject_op_array, clazz, methodID, args))
00071 
00072 #define JRI_GetObjectClass(env, obj)    \
00073         (((*(env))->GetObjectClass)(env, JRI_GetObjectClass_op, obj))
00074 
00075 #define JRI_IsInstanceOf(env, obj, clazz)       \
00076         (((*(env))->IsInstanceOf)(env, JRI_IsInstanceOf_op, obj, clazz))
00077 
00078 #define JRI_GetMethodID(env, clazz, name, sig)  \
00079         (((*(env))->GetMethodID)(env, JRI_GetMethodID_op, clazz, name, sig))
00080 
00081 #define JRI_CallMethod(env)     ((*(env))->CallMethod)
00082 #define JRI_CallMethodV(env, obj, methodID, args)       \
00083         (((*(env))->CallMethodV)(env, JRI_CallMethod_op_va_list, obj, methodID, args))
00084 #define JRI_CallMethodA(env, obj, methodID, args)       \
00085         (((*(env))->CallMethodA)(env, JRI_CallMethod_op_array, obj, methodID, args))
00086 
00087 #define JRI_CallMethodBoolean(env)      ((*(env))->CallMethodBoolean)
00088 #define JRI_CallMethodBooleanV(env, obj, methodID, args)        \
00089         (((*(env))->CallMethodBooleanV)(env, JRI_CallMethodBoolean_op_va_list, obj, methodID, args))
00090 #define JRI_CallMethodBooleanA(env, obj, methodID, args)        \
00091         (((*(env))->CallMethodBooleanA)(env, JRI_CallMethodBoolean_op_array, obj, methodID, args))
00092 
00093 #define JRI_CallMethodByte(env) ((*(env))->CallMethodByte)
00094 #define JRI_CallMethodByteV(env, obj, methodID, args)   \
00095         (((*(env))->CallMethodByteV)(env, JRI_CallMethodByte_op_va_list, obj, methodID, args))
00096 #define JRI_CallMethodByteA(env, obj, methodID, args)   \
00097         (((*(env))->CallMethodByteA)(env, JRI_CallMethodByte_op_array, obj, methodID, args))
00098 
00099 #define JRI_CallMethodChar(env) ((*(env))->CallMethodChar)
00100 #define JRI_CallMethodCharV(env, obj, methodID, args)   \
00101         (((*(env))->CallMethodCharV)(env, JRI_CallMethodChar_op_va_list, obj, methodID, args))
00102 #define JRI_CallMethodCharA(env, obj, methodID, args)   \
00103         (((*(env))->CallMethodCharA)(env, JRI_CallMethodChar_op_array, obj, methodID, args))
00104 
00105 #define JRI_CallMethodShort(env)        ((*(env))->CallMethodShort)
00106 #define JRI_CallMethodShortV(env, obj, methodID, args)  \
00107         (((*(env))->CallMethodShortV)(env, JRI_CallMethodShort_op_va_list, obj, methodID, args))
00108 #define JRI_CallMethodShortA(env, obj, methodID, args)  \
00109         (((*(env))->CallMethodShortA)(env, JRI_CallMethodShort_op_array, obj, methodID, args))
00110 
00111 #define JRI_CallMethodInt(env)  ((*(env))->CallMethodInt)
00112 #define JRI_CallMethodIntV(env, obj, methodID, args)    \
00113         (((*(env))->CallMethodIntV)(env, JRI_CallMethodInt_op_va_list, obj, methodID, args))
00114 #define JRI_CallMethodIntA(env, obj, methodID, args)    \
00115         (((*(env))->CallMethodIntA)(env, JRI_CallMethodInt_op_array, obj, methodID, args))
00116 
00117 #define JRI_CallMethodLong(env) ((*(env))->CallMethodLong)
00118 #define JRI_CallMethodLongV(env, obj, methodID, args)   \
00119         (((*(env))->CallMethodLongV)(env, JRI_CallMethodLong_op_va_list, obj, methodID, args))
00120 #define JRI_CallMethodLongA(env, obj, methodID, args)   \
00121         (((*(env))->CallMethodLongA)(env, JRI_CallMethodLong_op_array, obj, methodID, args))
00122 
00123 #define JRI_CallMethodFloat(env)        ((*(env))->CallMethodFloat)
00124 #define JRI_CallMethodFloatV(env, obj, methodID, args)  \
00125         (((*(env))->CallMethodFloatV)(env, JRI_CallMethodFloat_op_va_list, obj, methodID, args))
00126 #define JRI_CallMethodFloatA(env, obj, methodID, args)  \
00127         (((*(env))->CallMethodFloatA)(env, JRI_CallMethodFloat_op_array, obj, methodID, args))
00128 
00129 #define JRI_CallMethodDouble(env)       ((*(env))->CallMethodDouble)
00130 #define JRI_CallMethodDoubleV(env, obj, methodID, args) \
00131         (((*(env))->CallMethodDoubleV)(env, JRI_CallMethodDouble_op_va_list, obj, methodID, args))
00132 #define JRI_CallMethodDoubleA(env, obj, methodID, args) \
00133         (((*(env))->CallMethodDoubleA)(env, JRI_CallMethodDouble_op_array, obj, methodID, args))
00134 
00135 #define JRI_GetFieldID(env, clazz, name, sig)   \
00136         (((*(env))->GetFieldID)(env, JRI_GetFieldID_op, clazz, name, sig))
00137 
00138 #define JRI_GetField(env, obj, fieldID) \
00139         (((*(env))->GetField)(env, JRI_GetField_op, obj, fieldID))
00140 
00141 #define JRI_GetFieldBoolean(env, obj, fieldID)  \
00142         (((*(env))->GetFieldBoolean)(env, JRI_GetFieldBoolean_op, obj, fieldID))
00143 
00144 #define JRI_GetFieldByte(env, obj, fieldID)     \
00145         (((*(env))->GetFieldByte)(env, JRI_GetFieldByte_op, obj, fieldID))
00146 
00147 #define JRI_GetFieldChar(env, obj, fieldID)     \
00148         (((*(env))->GetFieldChar)(env, JRI_GetFieldChar_op, obj, fieldID))
00149 
00150 #define JRI_GetFieldShort(env, obj, fieldID)    \
00151         (((*(env))->GetFieldShort)(env, JRI_GetFieldShort_op, obj, fieldID))
00152 
00153 #define JRI_GetFieldInt(env, obj, fieldID)      \
00154         (((*(env))->GetFieldInt)(env, JRI_GetFieldInt_op, obj, fieldID))
00155 
00156 #define JRI_GetFieldLong(env, obj, fieldID)     \
00157         (((*(env))->GetFieldLong)(env, JRI_GetFieldLong_op, obj, fieldID))
00158 
00159 #define JRI_GetFieldFloat(env, obj, fieldID)    \
00160         (((*(env))->GetFieldFloat)(env, JRI_GetFieldFloat_op, obj, fieldID))
00161 
00162 #define JRI_GetFieldDouble(env, obj, fieldID)   \
00163         (((*(env))->GetFieldDouble)(env, JRI_GetFieldDouble_op, obj, fieldID))
00164 
00165 #define JRI_SetField(env, obj, fieldID, value)  \
00166         (((*(env))->SetField)(env, JRI_SetField_op, obj, fieldID, value))
00167 
00168 #define JRI_SetFieldBoolean(env, obj, fieldID, value)   \
00169         (((*(env))->SetFieldBoolean)(env, JRI_SetFieldBoolean_op, obj, fieldID, value))
00170 
00171 #define JRI_SetFieldByte(env, obj, fieldID, value)      \
00172         (((*(env))->SetFieldByte)(env, JRI_SetFieldByte_op, obj, fieldID, value))
00173 
00174 #define JRI_SetFieldChar(env, obj, fieldID, value)      \
00175         (((*(env))->SetFieldChar)(env, JRI_SetFieldChar_op, obj, fieldID, value))
00176 
00177 #define JRI_SetFieldShort(env, obj, fieldID, value)     \
00178         (((*(env))->SetFieldShort)(env, JRI_SetFieldShort_op, obj, fieldID, value))
00179 
00180 #define JRI_SetFieldInt(env, obj, fieldID, value)       \
00181         (((*(env))->SetFieldInt)(env, JRI_SetFieldInt_op, obj, fieldID, value))
00182 
00183 #define JRI_SetFieldLong(env, obj, fieldID, value)      \
00184         (((*(env))->SetFieldLong)(env, JRI_SetFieldLong_op, obj, fieldID, value))
00185 
00186 #define JRI_SetFieldFloat(env, obj, fieldID, value)     \
00187         (((*(env))->SetFieldFloat)(env, JRI_SetFieldFloat_op, obj, fieldID, value))
00188 
00189 #define JRI_SetFieldDouble(env, obj, fieldID, value)    \
00190         (((*(env))->SetFieldDouble)(env, JRI_SetFieldDouble_op, obj, fieldID, value))
00191 
00192 #define JRI_IsSubclassOf(env, a, b)     \
00193         (((*(env))->IsSubclassOf)(env, JRI_IsSubclassOf_op, a, b))
00194 
00195 #define JRI_GetStaticMethodID(env, clazz, name, sig)    \
00196         (((*(env))->GetStaticMethodID)(env, JRI_GetStaticMethodID_op, clazz, name, sig))
00197 
00198 #define JRI_CallStaticMethod(env)       ((*(env))->CallStaticMethod)
00199 #define JRI_CallStaticMethodV(env, clazz, methodID, args)       \
00200         (((*(env))->CallStaticMethodV)(env, JRI_CallStaticMethod_op_va_list, clazz, methodID, args))
00201 #define JRI_CallStaticMethodA(env, clazz, methodID, args)       \
00202         (((*(env))->CallStaticMethodA)(env, JRI_CallStaticMethod_op_array, clazz, methodID, args))
00203 
00204 #define JRI_CallStaticMethodBoolean(env)        ((*(env))->CallStaticMethodBoolean)
00205 #define JRI_CallStaticMethodBooleanV(env, clazz, methodID, args)        \
00206         (((*(env))->CallStaticMethodBooleanV)(env, JRI_CallStaticMethodBoolean_op_va_list, clazz, methodID, args))
00207 #define JRI_CallStaticMethodBooleanA(env, clazz, methodID, args)        \
00208         (((*(env))->CallStaticMethodBooleanA)(env, JRI_CallStaticMethodBoolean_op_array, clazz, methodID, args))
00209 
00210 #define JRI_CallStaticMethodByte(env)   ((*(env))->CallStaticMethodByte)
00211 #define JRI_CallStaticMethodByteV(env, clazz, methodID, args)   \
00212         (((*(env))->CallStaticMethodByteV)(env, JRI_CallStaticMethodByte_op_va_list, clazz, methodID, args))
00213 #define JRI_CallStaticMethodByteA(env, clazz, methodID, args)   \
00214         (((*(env))->CallStaticMethodByteA)(env, JRI_CallStaticMethodByte_op_array, clazz, methodID, args))
00215 
00216 #define JRI_CallStaticMethodChar(env)   ((*(env))->CallStaticMethodChar)
00217 #define JRI_CallStaticMethodCharV(env, clazz, methodID, args)   \
00218         (((*(env))->CallStaticMethodCharV)(env, JRI_CallStaticMethodChar_op_va_list, clazz, methodID, args))
00219 #define JRI_CallStaticMethodCharA(env, clazz, methodID, args)   \
00220         (((*(env))->CallStaticMethodCharA)(env, JRI_CallStaticMethodChar_op_array, clazz, methodID, args))
00221 
00222 #define JRI_CallStaticMethodShort(env)  ((*(env))->CallStaticMethodShort)
00223 #define JRI_CallStaticMethodShortV(env, clazz, methodID, args)  \
00224         (((*(env))->CallStaticMethodShortV)(env, JRI_CallStaticMethodShort_op_va_list, clazz, methodID, args))
00225 #define JRI_CallStaticMethodShortA(env, clazz, methodID, args)  \
00226         (((*(env))->CallStaticMethodShortA)(env, JRI_CallStaticMethodShort_op_array, clazz, methodID, args))
00227 
00228 #define JRI_CallStaticMethodInt(env)    ((*(env))->CallStaticMethodInt)
00229 #define JRI_CallStaticMethodIntV(env, clazz, methodID, args)    \
00230         (((*(env))->CallStaticMethodIntV)(env, JRI_CallStaticMethodInt_op_va_list, clazz, methodID, args))
00231 #define JRI_CallStaticMethodIntA(env, clazz, methodID, args)    \
00232         (((*(env))->CallStaticMethodIntA)(env, JRI_CallStaticMethodInt_op_array, clazz, methodID, args))
00233 
00234 #define JRI_CallStaticMethodLong(env)   ((*(env))->CallStaticMethodLong)
00235 #define JRI_CallStaticMethodLongV(env, clazz, methodID, args)   \
00236         (((*(env))->CallStaticMethodLongV)(env, JRI_CallStaticMethodLong_op_va_list, clazz, methodID, args))
00237 #define JRI_CallStaticMethodLongA(env, clazz, methodID, args)   \
00238         (((*(env))->CallStaticMethodLongA)(env, JRI_CallStaticMethodLong_op_array, clazz, methodID, args))
00239 
00240 #define JRI_CallStaticMethodFloat(env)  ((*(env))->CallStaticMethodFloat)
00241 #define JRI_CallStaticMethodFloatV(env, clazz, methodID, args)  \
00242         (((*(env))->CallStaticMethodFloatV)(env, JRI_CallStaticMethodFloat_op_va_list, clazz, methodID, args))
00243 #define JRI_CallStaticMethodFloatA(env, clazz, methodID, args)  \
00244         (((*(env))->CallStaticMethodFloatA)(env, JRI_CallStaticMethodFloat_op_array, clazz, methodID, args))
00245 
00246 #define JRI_CallStaticMethodDouble(env) ((*(env))->CallStaticMethodDouble)
00247 #define JRI_CallStaticMethodDoubleV(env, clazz, methodID, args) \
00248         (((*(env))->CallStaticMethodDoubleV)(env, JRI_CallStaticMethodDouble_op_va_list, clazz, methodID, args))
00249 #define JRI_CallStaticMethodDoubleA(env, clazz, methodID, args) \
00250         (((*(env))->CallStaticMethodDoubleA)(env, JRI_CallStaticMethodDouble_op_array, clazz, methodID, args))
00251 
00252 #define JRI_GetStaticFieldID(env, clazz, name, sig)     \
00253         (((*(env))->GetStaticFieldID)(env, JRI_GetStaticFieldID_op, clazz, name, sig))
00254 
00255 #define JRI_GetStaticField(env, clazz, fieldID) \
00256         (((*(env))->GetStaticField)(env, JRI_GetStaticField_op, clazz, fieldID))
00257 
00258 #define JRI_GetStaticFieldBoolean(env, clazz, fieldID)  \
00259         (((*(env))->GetStaticFieldBoolean)(env, JRI_GetStaticFieldBoolean_op, clazz, fieldID))
00260 
00261 #define JRI_GetStaticFieldByte(env, clazz, fieldID)     \
00262         (((*(env))->GetStaticFieldByte)(env, JRI_GetStaticFieldByte_op, clazz, fieldID))
00263 
00264 #define JRI_GetStaticFieldChar(env, clazz, fieldID)     \
00265         (((*(env))->GetStaticFieldChar)(env, JRI_GetStaticFieldChar_op, clazz, fieldID))
00266 
00267 #define JRI_GetStaticFieldShort(env, clazz, fieldID)    \
00268         (((*(env))->GetStaticFieldShort)(env, JRI_GetStaticFieldShort_op, clazz, fieldID))
00269 
00270 #define JRI_GetStaticFieldInt(env, clazz, fieldID)      \
00271         (((*(env))->GetStaticFieldInt)(env, JRI_GetStaticFieldInt_op, clazz, fieldID))
00272 
00273 #define JRI_GetStaticFieldLong(env, clazz, fieldID)     \
00274         (((*(env))->GetStaticFieldLong)(env, JRI_GetStaticFieldLong_op, clazz, fieldID))
00275 
00276 #define JRI_GetStaticFieldFloat(env, clazz, fieldID)    \
00277         (((*(env))->GetStaticFieldFloat)(env, JRI_GetStaticFieldFloat_op, clazz, fieldID))
00278 
00279 #define JRI_GetStaticFieldDouble(env, clazz, fieldID)   \
00280         (((*(env))->GetStaticFieldDouble)(env, JRI_GetStaticFieldDouble_op, clazz, fieldID))
00281 
00282 #define JRI_SetStaticField(env, clazz, fieldID, value)  \
00283         (((*(env))->SetStaticField)(env, JRI_SetStaticField_op, clazz, fieldID, value))
00284 
00285 #define JRI_SetStaticFieldBoolean(env, clazz, fieldID, value)   \
00286         (((*(env))->SetStaticFieldBoolean)(env, JRI_SetStaticFieldBoolean_op, clazz, fieldID, value))
00287 
00288 #define JRI_SetStaticFieldByte(env, clazz, fieldID, value)      \
00289         (((*(env))->SetStaticFieldByte)(env, JRI_SetStaticFieldByte_op, clazz, fieldID, value))
00290 
00291 #define JRI_SetStaticFieldChar(env, clazz, fieldID, value)      \
00292         (((*(env))->SetStaticFieldChar)(env, JRI_SetStaticFieldChar_op, clazz, fieldID, value))
00293 
00294 #define JRI_SetStaticFieldShort(env, clazz, fieldID, value)     \
00295         (((*(env))->SetStaticFieldShort)(env, JRI_SetStaticFieldShort_op, clazz, fieldID, value))
00296 
00297 #define JRI_SetStaticFieldInt(env, clazz, fieldID, value)       \
00298         (((*(env))->SetStaticFieldInt)(env, JRI_SetStaticFieldInt_op, clazz, fieldID, value))
00299 
00300 #define JRI_SetStaticFieldLong(env, clazz, fieldID, value)      \
00301         (((*(env))->SetStaticFieldLong)(env, JRI_SetStaticFieldLong_op, clazz, fieldID, value))
00302 
00303 #define JRI_SetStaticFieldFloat(env, clazz, fieldID, value)     \
00304         (((*(env))->SetStaticFieldFloat)(env, JRI_SetStaticFieldFloat_op, clazz, fieldID, value))
00305 
00306 #define JRI_SetStaticFieldDouble(env, clazz, fieldID, value)    \
00307         (((*(env))->SetStaticFieldDouble)(env, JRI_SetStaticFieldDouble_op, clazz, fieldID, value))
00308 
00309 #define JRI_NewString(env, unicode, len)        \
00310         (((*(env))->NewString)(env, JRI_NewString_op, unicode, len))
00311 
00312 #define JRI_GetStringLength(env, string)        \
00313         (((*(env))->GetStringLength)(env, JRI_GetStringLength_op, string))
00314 
00315 #define JRI_GetStringChars(env, string) \
00316         (((*(env))->GetStringChars)(env, JRI_GetStringChars_op, string))
00317 
00318 #define JRI_NewStringUTF(env, utf, len) \
00319         (((*(env))->NewStringUTF)(env, JRI_NewStringUTF_op, utf, len))
00320 
00321 #define JRI_GetStringUTFLength(env, string)     \
00322         (((*(env))->GetStringUTFLength)(env, JRI_GetStringUTFLength_op, string))
00323 
00324 #define JRI_GetStringUTFChars(env, string)      \
00325         (((*(env))->GetStringUTFChars)(env, JRI_GetStringUTFChars_op, string))
00326 
00327 #define JRI_NewScalarArray(env, length, elementSig, initialElements)    \
00328         (((*(env))->NewScalarArray)(env, JRI_NewScalarArray_op, length, elementSig, initialElements))
00329 
00330 #define JRI_GetScalarArrayLength(env, array)    \
00331         (((*(env))->GetScalarArrayLength)(env, JRI_GetScalarArrayLength_op, array))
00332 
00333 #define JRI_GetScalarArrayElements(env, array)  \
00334         (((*(env))->GetScalarArrayElements)(env, JRI_GetScalarArrayElements_op, array))
00335 
00336 #define JRI_NewObjectArray(env, length, elementClass, initialElement)   \
00337         (((*(env))->NewObjectArray)(env, JRI_NewObjectArray_op, length, elementClass, initialElement))
00338 
00339 #define JRI_GetObjectArrayLength(env, array)    \
00340         (((*(env))->GetObjectArrayLength)(env, JRI_GetObjectArrayLength_op, array))
00341 
00342 #define JRI_GetObjectArrayElement(env, array, index)    \
00343         (((*(env))->GetObjectArrayElement)(env, JRI_GetObjectArrayElement_op, array, index))
00344 
00345 #define JRI_SetObjectArrayElement(env, array, index, value)     \
00346         (((*(env))->SetObjectArrayElement)(env, JRI_SetObjectArrayElement_op, array, index, value))
00347 
00348 #define JRI_RegisterNatives(env, clazz, nameAndSigArray, nativeProcArray)       \
00349         (((*(env))->RegisterNatives)(env, JRI_RegisterNatives_op, clazz, nameAndSigArray, nativeProcArray))
00350 
00351 #define JRI_UnregisterNatives(env, clazz)       \
00352         (((*(env))->UnregisterNatives)(env, JRI_UnregisterNatives_op, clazz))
00353 
00354 /*******************************************************************************
00355  * JRIEnv Interface
00356  ******************************************************************************/
00357 
00358 struct java_lang_Class;
00359 struct java_lang_Throwable;
00360 struct java_lang_Object;
00361 struct java_lang_String;
00362 
00363 struct JRIEnvInterface {
00364         void*   reserved0;
00365         void*   reserved1;
00366         void*   reserved2;
00367         struct java_lang_Class* (*LoadClass)(JRIEnv* env, jint op, jbyte* a, jsize aLen);
00368         struct java_lang_Class* (*FindClass)(JRIEnv* env, jint op, const char* a);
00369         void    (*Throw)(JRIEnv* env, jint op, struct java_lang_Throwable* a);
00370         void    (*ThrowNew)(JRIEnv* env, jint op, struct java_lang_Class* a, const char* b);
00371         struct java_lang_Throwable*     (*ExceptionOccurred)(JRIEnv* env, jint op);
00372         void    (*ExceptionDescribe)(JRIEnv* env, jint op);
00373         void    (*ExceptionClear)(JRIEnv* env, jint op);
00374         jglobal (*NewGlobalRef)(JRIEnv* env, jint op, void* a);
00375         void    (*DisposeGlobalRef)(JRIEnv* env, jint op, jglobal a);
00376         void*   (*GetGlobalRef)(JRIEnv* env, jint op, jglobal a);
00377         void    (*SetGlobalRef)(JRIEnv* env, jint op, jglobal a, void* b);
00378         jbool   (*IsSameObject)(JRIEnv* env, jint op, void* a, void* b);
00379         void*   (*NewObject)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00380         void*   (*NewObjectV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00381         void*   (*NewObjectA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00382         struct java_lang_Class* (*GetObjectClass)(JRIEnv* env, jint op, void* a);
00383         jbool   (*IsInstanceOf)(JRIEnv* env, jint op, void* a, struct java_lang_Class* b);
00384         jint    (*GetMethodID)(JRIEnv* env, jint op, struct java_lang_Class* a, const char* b, const char* c);
00385         void*   (*CallMethod)(JRIEnv* env, jint op, void* a, jint b, ...);
00386         void*   (*CallMethodV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00387         void*   (*CallMethodA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00388         jbool   (*CallMethodBoolean)(JRIEnv* env, jint op, void* a, jint b, ...);
00389         jbool   (*CallMethodBooleanV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00390         jbool   (*CallMethodBooleanA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00391         jbyte   (*CallMethodByte)(JRIEnv* env, jint op, void* a, jint b, ...);
00392         jbyte   (*CallMethodByteV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00393         jbyte   (*CallMethodByteA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00394         jchar   (*CallMethodChar)(JRIEnv* env, jint op, void* a, jint b, ...);
00395         jchar   (*CallMethodCharV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00396         jchar   (*CallMethodCharA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00397         jshort  (*CallMethodShort)(JRIEnv* env, jint op, void* a, jint b, ...);
00398         jshort  (*CallMethodShortV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00399         jshort  (*CallMethodShortA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00400         jint    (*CallMethodInt)(JRIEnv* env, jint op, void* a, jint b, ...);
00401         jint    (*CallMethodIntV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00402         jint    (*CallMethodIntA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00403         jlong   (*CallMethodLong)(JRIEnv* env, jint op, void* a, jint b, ...);
00404         jlong   (*CallMethodLongV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00405         jlong   (*CallMethodLongA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00406         jfloat  (*CallMethodFloat)(JRIEnv* env, jint op, void* a, jint b, ...);
00407         jfloat  (*CallMethodFloatV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00408         jfloat  (*CallMethodFloatA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00409         jdouble (*CallMethodDouble)(JRIEnv* env, jint op, void* a, jint b, ...);
00410         jdouble (*CallMethodDoubleV)(JRIEnv* env, jint op, void* a, jint b, va_list c);
00411         jdouble (*CallMethodDoubleA)(JRIEnv* env, jint op, void* a, jint b, JRIValue* c);
00412         jint    (*GetFieldID)(JRIEnv* env, jint op, struct java_lang_Class* a, const char* b, const char* c);
00413         void*   (*GetField)(JRIEnv* env, jint op, void* a, jint b);
00414         jbool   (*GetFieldBoolean)(JRIEnv* env, jint op, void* a, jint b);
00415         jbyte   (*GetFieldByte)(JRIEnv* env, jint op, void* a, jint b);
00416         jchar   (*GetFieldChar)(JRIEnv* env, jint op, void* a, jint b);
00417         jshort  (*GetFieldShort)(JRIEnv* env, jint op, void* a, jint b);
00418         jint    (*GetFieldInt)(JRIEnv* env, jint op, void* a, jint b);
00419         jlong   (*GetFieldLong)(JRIEnv* env, jint op, void* a, jint b);
00420         jfloat  (*GetFieldFloat)(JRIEnv* env, jint op, void* a, jint b);
00421         jdouble (*GetFieldDouble)(JRIEnv* env, jint op, void* a, jint b);
00422         void    (*SetField)(JRIEnv* env, jint op, void* a, jint b, void* c);
00423         void    (*SetFieldBoolean)(JRIEnv* env, jint op, void* a, jint b, jbool c);
00424         void    (*SetFieldByte)(JRIEnv* env, jint op, void* a, jint b, jbyte c);
00425         void    (*SetFieldChar)(JRIEnv* env, jint op, void* a, jint b, jchar c);
00426         void    (*SetFieldShort)(JRIEnv* env, jint op, void* a, jint b, jshort c);
00427         void    (*SetFieldInt)(JRIEnv* env, jint op, void* a, jint b, jint c);
00428         void    (*SetFieldLong)(JRIEnv* env, jint op, void* a, jint b, jlong c);
00429         void    (*SetFieldFloat)(JRIEnv* env, jint op, void* a, jint b, jfloat c);
00430         void    (*SetFieldDouble)(JRIEnv* env, jint op, void* a, jint b, jdouble c);
00431         jbool   (*IsSubclassOf)(JRIEnv* env, jint op, struct java_lang_Class* a, struct java_lang_Class* b);
00432         jint    (*GetStaticMethodID)(JRIEnv* env, jint op, struct java_lang_Class* a, const char* b, const char* c);
00433         void*   (*CallStaticMethod)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00434         void*   (*CallStaticMethodV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00435         void*   (*CallStaticMethodA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00436         jbool   (*CallStaticMethodBoolean)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00437         jbool   (*CallStaticMethodBooleanV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00438         jbool   (*CallStaticMethodBooleanA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00439         jbyte   (*CallStaticMethodByte)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00440         jbyte   (*CallStaticMethodByteV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00441         jbyte   (*CallStaticMethodByteA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00442         jchar   (*CallStaticMethodChar)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00443         jchar   (*CallStaticMethodCharV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00444         jchar   (*CallStaticMethodCharA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00445         jshort  (*CallStaticMethodShort)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00446         jshort  (*CallStaticMethodShortV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00447         jshort  (*CallStaticMethodShortA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00448         jint    (*CallStaticMethodInt)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00449         jint    (*CallStaticMethodIntV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00450         jint    (*CallStaticMethodIntA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00451         jlong   (*CallStaticMethodLong)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00452         jlong   (*CallStaticMethodLongV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00453         jlong   (*CallStaticMethodLongA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00454         jfloat  (*CallStaticMethodFloat)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00455         jfloat  (*CallStaticMethodFloatV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00456         jfloat  (*CallStaticMethodFloatA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00457         jdouble (*CallStaticMethodDouble)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, ...);
00458         jdouble (*CallStaticMethodDoubleV)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, va_list c);
00459         jdouble (*CallStaticMethodDoubleA)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, JRIValue* c);
00460         jint    (*GetStaticFieldID)(JRIEnv* env, jint op, struct java_lang_Class* a, const char* b, const char* c);
00461         void*   (*GetStaticField)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00462         jbool   (*GetStaticFieldBoolean)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00463         jbyte   (*GetStaticFieldByte)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00464         jchar   (*GetStaticFieldChar)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00465         jshort  (*GetStaticFieldShort)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00466         jint    (*GetStaticFieldInt)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00467         jlong   (*GetStaticFieldLong)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00468         jfloat  (*GetStaticFieldFloat)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00469         jdouble (*GetStaticFieldDouble)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b);
00470         void    (*SetStaticField)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, void* c);
00471         void    (*SetStaticFieldBoolean)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jbool c);
00472         void    (*SetStaticFieldByte)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jbyte c);
00473         void    (*SetStaticFieldChar)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jchar c);
00474         void    (*SetStaticFieldShort)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jshort c);
00475         void    (*SetStaticFieldInt)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jint c);
00476         void    (*SetStaticFieldLong)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jlong c);
00477         void    (*SetStaticFieldFloat)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jfloat c);
00478         void    (*SetStaticFieldDouble)(JRIEnv* env, jint op, struct java_lang_Class* a, jint b, jdouble c);
00479         struct java_lang_String*        (*NewString)(JRIEnv* env, jint op, const jchar* a, jint b);
00480         jint    (*GetStringLength)(JRIEnv* env, jint op, struct java_lang_String* a);
00481         const jchar*    (*GetStringChars)(JRIEnv* env, jint op, struct java_lang_String* a);
00482         struct java_lang_String*        (*NewStringUTF)(JRIEnv* env, jint op, const jbyte* a, jint b);
00483         jint    (*GetStringUTFLength)(JRIEnv* env, jint op, struct java_lang_String* a);
00484         const jbyte*    (*GetStringUTFChars)(JRIEnv* env, jint op, struct java_lang_String* a);
00485         void*   (*NewScalarArray)(JRIEnv* env, jint op, jint a, const char* b, const jbyte* c);
00486         jint    (*GetScalarArrayLength)(JRIEnv* env, jint op, void* a);
00487         jbyte*  (*GetScalarArrayElements)(JRIEnv* env, jint op, void* a);
00488         void*   (*NewObjectArray)(JRIEnv* env, jint op, jint a, struct java_lang_Class* b, void* c);
00489         jint    (*GetObjectArrayLength)(JRIEnv* env, jint op, void* a);
00490         void*   (*GetObjectArrayElement)(JRIEnv* env, jint op, void* a, jint b);
00491         void    (*SetObjectArrayElement)(JRIEnv* env, jint op, void* a, jint b, void* c);
00492         void    (*RegisterNatives)(JRIEnv* env, jint op, struct java_lang_Class* a, char** b, void** c);
00493         void    (*UnregisterNatives)(JRIEnv* env, jint op, struct java_lang_Class* a);
00494 };
00495 
00496 /*******************************************************************************
00497  * JRIEnv Operation IDs
00498  ******************************************************************************/
00499 
00500 typedef enum JRIEnvOperations {
00501         JRI_Reserved0_op,
00502         JRI_Reserved1_op,
00503         JRI_Reserved2_op,
00504         JRI_LoadClass_op,
00505         JRI_FindClass_op,
00506         JRI_Throw_op,
00507         JRI_ThrowNew_op,
00508         JRI_ExceptionOccurred_op,
00509         JRI_ExceptionDescribe_op,
00510         JRI_ExceptionClear_op,
00511         JRI_NewGlobalRef_op,
00512         JRI_DisposeGlobalRef_op,
00513         JRI_GetGlobalRef_op,
00514         JRI_SetGlobalRef_op,
00515         JRI_IsSameObject_op,
00516         JRI_NewObject_op,
00517         JRI_NewObject_op_va_list,
00518         JRI_NewObject_op_array,
00519         JRI_GetObjectClass_op,
00520         JRI_IsInstanceOf_op,
00521         JRI_GetMethodID_op,
00522         JRI_CallMethod_op,
00523         JRI_CallMethod_op_va_list,
00524         JRI_CallMethod_op_array,
00525         JRI_CallMethodBoolean_op,
00526         JRI_CallMethodBoolean_op_va_list,
00527         JRI_CallMethodBoolean_op_array,
00528         JRI_CallMethodByte_op,
00529         JRI_CallMethodByte_op_va_list,
00530         JRI_CallMethodByte_op_array,
00531         JRI_CallMethodChar_op,
00532         JRI_CallMethodChar_op_va_list,
00533         JRI_CallMethodChar_op_array,
00534         JRI_CallMethodShort_op,
00535         JRI_CallMethodShort_op_va_list,
00536         JRI_CallMethodShort_op_array,
00537         JRI_CallMethodInt_op,
00538         JRI_CallMethodInt_op_va_list,
00539         JRI_CallMethodInt_op_array,
00540         JRI_CallMethodLong_op,
00541         JRI_CallMethodLong_op_va_list,
00542         JRI_CallMethodLong_op_array,
00543         JRI_CallMethodFloat_op,
00544         JRI_CallMethodFloat_op_va_list,
00545         JRI_CallMethodFloat_op_array,
00546         JRI_CallMethodDouble_op,
00547         JRI_CallMethodDouble_op_va_list,
00548         JRI_CallMethodDouble_op_array,
00549         JRI_GetFieldID_op,
00550         JRI_GetField_op,
00551         JRI_GetFieldBoolean_op,
00552         JRI_GetFieldByte_op,
00553         JRI_GetFieldChar_op,
00554         JRI_GetFieldShort_op,
00555         JRI_GetFieldInt_op,
00556         JRI_GetFieldLong_op,
00557         JRI_GetFieldFloat_op,
00558         JRI_GetFieldDouble_op,
00559         JRI_SetField_op,
00560         JRI_SetFieldBoolean_op,
00561         JRI_SetFieldByte_op,
00562         JRI_SetFieldChar_op,
00563         JRI_SetFieldShort_op,
00564         JRI_SetFieldInt_op,
00565         JRI_SetFieldLong_op,
00566         JRI_SetFieldFloat_op,
00567         JRI_SetFieldDouble_op,
00568         JRI_IsSubclassOf_op,
00569         JRI_GetStaticMethodID_op,
00570         JRI_CallStaticMethod_op,
00571         JRI_CallStaticMethod_op_va_list,
00572         JRI_CallStaticMethod_op_array,
00573         JRI_CallStaticMethodBoolean_op,
00574         JRI_CallStaticMethodBoolean_op_va_list,
00575         JRI_CallStaticMethodBoolean_op_array,
00576         JRI_CallStaticMethodByte_op,
00577         JRI_CallStaticMethodByte_op_va_list,
00578         JRI_CallStaticMethodByte_op_array,
00579         JRI_CallStaticMethodChar_op,
00580         JRI_CallStaticMethodChar_op_va_list,
00581         JRI_CallStaticMethodChar_op_array,
00582         JRI_CallStaticMethodShort_op,
00583         JRI_CallStaticMethodShort_op_va_list,
00584         JRI_CallStaticMethodShort_op_array,
00585         JRI_CallStaticMethodInt_op,
00586         JRI_CallStaticMethodInt_op_va_list,
00587         JRI_CallStaticMethodInt_op_array,
00588         JRI_CallStaticMethodLong_op,
00589         JRI_CallStaticMethodLong_op_va_list,
00590         JRI_CallStaticMethodLong_op_array,
00591         JRI_CallStaticMethodFloat_op,
00592         JRI_CallStaticMethodFloat_op_va_list,
00593         JRI_CallStaticMethodFloat_op_array,
00594         JRI_CallStaticMethodDouble_op,
00595         JRI_CallStaticMethodDouble_op_va_list,
00596         JRI_CallStaticMethodDouble_op_array,
00597         JRI_GetStaticFieldID_op,
00598         JRI_GetStaticField_op,
00599         JRI_GetStaticFieldBoolean_op,
00600         JRI_GetStaticFieldByte_op,
00601         JRI_GetStaticFieldChar_op,
00602         JRI_GetStaticFieldShort_op,
00603         JRI_GetStaticFieldInt_op,
00604         JRI_GetStaticFieldLong_op,
00605         JRI_GetStaticFieldFloat_op,
00606         JRI_GetStaticFieldDouble_op,
00607         JRI_SetStaticField_op,
00608         JRI_SetStaticFieldBoolean_op,
00609         JRI_SetStaticFieldByte_op,
00610         JRI_SetStaticFieldChar_op,
00611         JRI_SetStaticFieldShort_op,
00612         JRI_SetStaticFieldInt_op,
00613         JRI_SetStaticFieldLong_op,
00614         JRI_SetStaticFieldFloat_op,
00615         JRI_SetStaticFieldDouble_op,
00616         JRI_NewString_op,
00617         JRI_GetStringLength_op,
00618         JRI_GetStringChars_op,
00619         JRI_NewStringUTF_op,
00620         JRI_GetStringUTFLength_op,
00621         JRI_GetStringUTFChars_op,
00622         JRI_NewScalarArray_op,
00623         JRI_GetScalarArrayLength_op,
00624         JRI_GetScalarArrayElements_op,
00625         JRI_NewObjectArray_op,
00626         JRI_GetObjectArrayLength_op,
00627         JRI_GetObjectArrayElement_op,
00628         JRI_SetObjectArrayElement_op,
00629         JRI_RegisterNatives_op,
00630         JRI_UnregisterNatives_op
00631 } JRIEnvOperations;
00632 
00633 #ifdef __cplusplus
00634 } /* extern "C" */
00635 #endif /* __cplusplus */
00636 
00637 #endif /* JRI_H */
00638 /******************************************************************************/

Generated on Thu Nov 25 15:42:53 2004 for iARS(internetAudioRenderingSystem) by  doxygen 1.3.9.1