jni.h revision 0
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * This code is free software; you can redistribute it and/or modify it
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * under the terms of the GNU General Public License version 2 only, as
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * published by the Free Software Foundation. Sun designates this
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * particular file as subject to the "Classpath" exception as provided
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * by Sun in the LICENSE file that accompanied this code.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * This code is distributed in the hope that it will be useful, but WITHOUT
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * version 2 for more details (a copy is included in the LICENSE file that
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * accompanied this code).
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * You should have received a copy of the GNU General Public License version
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * 2 along with this work; if not, write to the Free Software Foundation,
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * CA 95054 USA or visit www.sun.com if you need additional information or
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * have any questions.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * We used part of Netscape's Java Runtime Interface (JRI) as the starting
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * point of our design and implementation.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding/******************************************************************************
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * Java Runtime Interface
64185f9824e42f21ca7b9ae6c004484215c031a7rbb * Copyright (c) 1996 Netscape Communications Corporation. All rights reserved.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding *****************************************************************************/
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding/* jni_md.h contains the machine-dependent typedefs for jbyte, jint
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding and jlong */
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingextern "C" {
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding * JNI Types
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingtypedef unsigned char jboolean;
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingtypedef unsigned short jchar;
3568de757bac0b47256647504c186d17ca272f85rbbtypedef short jshort;
3568de757bac0b47256647504c186d17ca272f85rbbtypedef float jfloat;
3568de757bac0b47256647504c186d17ca272f85rbbtypedef double jdouble;
3568de757bac0b47256647504c186d17ca272f85rbbtypedef union jvalue {
8f3ec4772d2aeb347cf40e87c77627bb784dd018rbb/* Return values from jobjectRefType */
8f3ec4772d2aeb347cf40e87c77627bb784dd018rbbtypedef enum _jobjectType {
3568de757bac0b47256647504c186d17ca272f85rbb#endif /* JNI_TYPES_ALREADY_DEFINED_IN_JNI_MD_H */
3568de757bac0b47256647504c186d17ca272f85rbb * jboolean constants
3568de757bac0b47256647504c186d17ca272f85rbb * possible return values for JNI functions.
3568de757bac0b47256647504c186d17ca272f85rbb#define JNI_EDETACHED (-2) /* thread detached from the VM */
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz * used in ReleaseScalarArrayElements
3568de757bac0b47256647504c186d17ca272f85rbb * used in RegisterNatives to describe native method name, signature,
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * and function pointer.
3568de757bac0b47256647504c186d17ca272f85rbbtypedef struct {
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding * JNI Native Method Interface.
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz * JNI Invocation Interface.
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, const char *name, jobject loader, const jbyte *buf,
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jclass cls, jmethodID methodID, jboolean isStatic);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jclass cls, jfieldID fieldID, jboolean isStatic);
6653a33e820463abd4f81915b7a1eba0f602e200brianp (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
6653a33e820463abd4f81915b7a1eba0f602e200brianp (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
cd8f8c995d415473f3bfb0b329b2450f2a722c3atrawick (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, const char *name, const char *sig);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jmethodID methodID, ...);
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, ...);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
cd8f8c995d415473f3bfb0b329b2450f2a722c3atrawick (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
cd8f8c995d415473f3bfb0b329b2450f2a722c3atrawick (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
3cbd177a6c885562f9ad0cf11695f044489c881dgregames (JNIEnv *env, jobject obj, jmethodID methodID, ...);
3cbd177a6c885562f9ad0cf11695f044489c881dgregames (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
3cbd177a6c885562f9ad0cf11695f044489c881dgregames (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jmethodID methodID, ...);
5a0f707b48da7703cbe6bc087f13a6735b1c742dgregames (JNIEnv *env, jobject obj, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
ad83978f20c7d1a4323059d9af122e56fcd353bdstoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
74fd6d9aeadb9022086259c5c1ae00bc0dda9c9astoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
f714f1a7002928d785e53e70349700a7f595fee3trawick (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...);
ad83978f20c7d1a4323059d9af122e56fcd353bdstoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID,
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, const char *name, const char *sig);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jfieldID fieldID, jobject val);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jobject obj, jfieldID fieldID, jboolean val);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jfieldID fieldID, jbyte val);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jfieldID fieldID, jchar val);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jfieldID fieldID, jshort val);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jobject obj, jfieldID fieldID, jlong val);
cd8f8c995d415473f3bfb0b329b2450f2a722c3atrawick (JNIEnv *env, jobject obj, jfieldID fieldID, jfloat val);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jobject obj, jfieldID fieldID, jdouble val);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, const char *name, const char *sig);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
cd8f8c995d415473f3bfb0b329b2450f2a722c3atrawick (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
0f113d7123e8bd3e3e2e9b6373461a1a773bfccatrawick (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
c0659e61002e9d6ff77b2dca72540e0af1b2ca64stoddard (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
3568de757bac0b47256647504c186d17ca272f85rbb (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
f886987cd0bd4220c14043c4d9be77ec22902e73trawick (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jmethodID methodID, ...);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args);
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jclass cls, jmethodID methodID, va_list args);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jclass cls, jmethodID methodID, const jvalue * args);
2e7f1d7da527c09e717251e186deffe55e6fbd0ftrawick (JNIEnv *env, jclass clazz, const char *name, const char *sig);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jfieldID fieldID, jobject value);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jclass clazz, jfieldID fieldID, jboolean value);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jfieldID fieldID, jbyte value);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jfieldID fieldID, jchar value);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jclass clazz, jfieldID fieldID, jshort value);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jfieldID fieldID, jint value);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jclass clazz, jfieldID fieldID, jlong value);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jfieldID fieldID, jfloat value);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, jfieldID fieldID, jdouble value);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jsize len, jclass clazz, jobject init);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jobjectArray array, jsize index, jobject val);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jbooleanArray array, jboolean *isCopy);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jbooleanArray array, jboolean *elems, jint mode);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jbyteArray array, jbyte *elems, jint mode);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jcharArray array, jchar *elems, jint mode);
f886987cd0bd4220c14043c4d9be77ec22902e73trawick (JNIEnv *env, jshortArray array, jshort *elems, jint mode);
cb97ae2ff6969c2789b8e03f1bc4187fa73b6bafwrowe (JNIEnv *env, jintArray array, jint *elems, jint mode);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jlongArray array, jlong *elems, jint mode);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jfloatArray array, jfloat *elems, jint mode);
64c351fd973428b5bb4c28e983fa86875ea4e60fdougm (JNIEnv *env, jdoubleArray array, jdouble *elems, jint mode);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jbooleanArray array, jsize start, jsize l, jboolean *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jbyteArray array, jsize start, jsize len, jbyte *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jcharArray array, jsize start, jsize len, jchar *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jshortArray array, jsize start, jsize len, jshort *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jintArray array, jsize start, jsize len, jint *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jlongArray array, jsize start, jsize len, jlong *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jfloatArray array, jsize start, jsize len, jfloat *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jdoubleArray array, jsize start, jsize len, jdouble *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jbooleanArray array, jsize start, jsize l, const jboolean *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jbyteArray array, jsize start, jsize len, const jbyte *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jcharArray array, jsize start, jsize len, const jchar *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jshortArray array, jsize start, jsize len, const jshort *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jintArray array, jsize start, jsize len, const jint *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jlongArray array, jsize start, jsize len, const jlong *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jfloatArray array, jsize start, jsize len, const jfloat *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jdoubleArray array, jsize start, jsize len, const jdouble *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jclass clazz, const JNINativeMethod *methods,
72b6f1cf3e616473e1c26464b3193b13c2c09e87brianp (JNIEnv *env, jstring str, jsize start, jsize len, jchar *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jstring str, jsize start, jsize len, char *buf);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jarray array, void *carray, jint mode);
8bfe865d8d61be4ba4a89e45427a3c4211ebabdctrawick (JNIEnv *env, jstring string, const jchar *cstring);
1ec8bd0373f11c07688ec9afbbf778cf78a0bc52wrowe /* New JNI 1.6 Features */
f886987cd0bd4220c14043c4d9be77ec22902e73trawick * We use inlined functions for C++ so that programmers can write:
1ec8bd0373f11c07688ec9afbbf778cf78a0bc52wrowe * env->FindClass("java/lang/String")
1ec8bd0373f11c07688ec9afbbf778cf78a0bc52wrowe * in C++ rather than:
3568de757bac0b47256647504c186d17ca272f85rbb * (*env)->FindClass(env, "java/lang/String")
3568de757bac0b47256647504c186d17ca272f85rbb jclass DefineClass(const char *name, jobject loader, const jbyte *buf,
28c170ac8e99644de58cad454c6e0f9b4b359be6jerenkrantz return functions->DefineClass(this, name, loader, buf, len);
3568de757bac0b47256647504c186d17ca272f85rbb jobject ToReflectedMethod(jclass cls, jmethodID methodID, jboolean isStatic) {
3568de757bac0b47256647504c186d17ca272f85rbb return functions->ToReflectedMethod(this, cls, methodID, isStatic);
9d0665da83d1e22c0ea0e5f6f940f70f75bf5237ianh jobject ToReflectedField(jclass cls, jfieldID fieldID, jboolean isStatic) {
3568de757bac0b47256647504c186d17ca272f85rbb return functions->ToReflectedField(this,cls,fieldID,isStatic);
return result;
const char *sig) {
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
const char *sig) {
const char *sig) {
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
return result;
const char *sig) {
typedef struct JavaVMOption {
char *optionString;
void *extraInfo;
} JavaVMOption;
typedef struct JavaVMInitArgs {
typedef struct JavaVMAttachArgs {
char *name;
#define JDK1_2
#define JDK1_4
struct JNIInvokeInterface_ {
void *reserved0;
void *reserved1;
void *reserved2;
struct JavaVM_ {
#ifdef __cplusplus
#ifdef _JNI_IMPLEMENTATION_
#ifdef __cplusplus