jvmti_types.h File Reference


Detailed Description

Definition of JVMTI interface types.

See specification for details.


Classes

struct  jvmtiThreadInfo
 Thread information structure returned by GetThreadInfo function. More...
struct  jvmtiThreadGroupInfo
 Thread group information structure returned by GetThreadGroupInfo function. More...
struct  jvmtiFrameInfo
 Single stack frame information structure. More...
struct  jvmtiStackInfo
 Single thread stack information structure. More...
struct  jvmtiMonitorUsage
 Monitor usage information structure. More...
struct  jvmtiLineNumberEntry
 Line numbers information structure. More...
struct  jvmtiLocalVariableEntry
 Local variables information structure. More...
struct  jvmtiAddrLocationMap
 Native to bytecode location mapping information. More...
struct  jvmtiEventCallbacks
 Event callbacks table. More...
struct  jvmtiParamInfo
 Arguments information for extension events callbacks. More...
struct  jvmtiExtensionFunctionInfo
 Extenstion functions information structure. More...
struct  jvmtiExtensionEventInfo
 Extension events information structure. More...
struct  jvmtiCapabilities
 Bit table of JVMTI capabilities supported by VM. More...
struct  jvmtiTimerInfo
 Timer information structure. More...
struct  jvmtiClassDefinition
 Class redefinition information structure. More...

Defines

#define TOTAL_EVENT_TYPE_NUM   (JVMTI_MAX_EVENT_TYPE_VAL - JVMTI_MIN_EVENT_TYPE_VAL + 1)
 Total number of events specified in JVMTI interface.

Typedefs

typedef ti_interfacejvmtiEnv
 JVMTI environment definition for use in C sources.
typedef jobject jthread
 Reference type which describes a java.lang.Thread instance object in native function.
typedef jlong jlocation
 64-bit type which defines executable positon inside of method
typedef jobject jthreadGroup
 Reference type which describes a java.lang.ThreadGroup instance object in native function.
typedef int jrawMonitorID
 Raw monitor ID type.
typedef JNINativeInterface_ jniNativeInterface
 JNI API interface table type for usage in C.
typedef JNIEnvjni_env
typedef JNIEnv void * arg
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jlocation 
location
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jlocation 
location
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jlocation 
location
typedef JNIEnv jthread jmethodID
jlocation jclass 
field_clazz
typedef JNIEnv jthread jmethodID
jlocation jclass jobject 
object
typedef JNIEnv jthread jmethodID
jlocation jclass jobject jfieldID 
field
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jlocation 
location
typedef JNIEnv jthread jmethodID
jlocation jclass 
field_clazz
typedef JNIEnv jthread jmethodID
jlocation jclass jobject 
object
typedef JNIEnv jthread jmethodID
jlocation jclass jobject jfieldID 
field
typedef JNIEnv jthread jmethodID
jlocation jclass jobject jfieldID
char 
signature_type
typedef JNIEnv jthread jmethodID
jlocation jclass jobject jfieldID
char jvalue 
new_value
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jboolean 
was_popped_by_exception
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jboolean 
was_popped_by_exception
typedef JNIEnv jthread jmethodID
jboolean jvalue 
return_value
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
void * 
address
typedef JNIEnv jthread jmethodID
void void ** 
new_address_ptr
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jlocation 
location
typedef JNIEnv jthread jmethodID
jlocation jobject 
exception
typedef JNIEnv jthread jmethodID
jlocation jobject jmethodID 
catch_method
typedef JNIEnv jthread jmethodID
jlocation jobject jmethodID
jlocation 
catch_location
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jmethodID method
typedef JNIEnv jthread jmethodID
jlocation 
location
typedef JNIEnv jthread jmethodID
jlocation jobject 
exception
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jclass clazz
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jclass clazz
typedef JNIEnvjni_env
typedef JNIEnv jclass class_being_redefined
typedef JNIEnv jclass jobject loader
typedef JNIEnv jclass jobject
const char * 
name
typedef JNIEnv jclass jobject
const char jobject 
protection_domain
typedef JNIEnv jclass jobject
const char jobject jint 
class_data_len
typedef JNIEnv jclass jobject
const char jobject jint const
unsigned char * 
class_data
typedef JNIEnv jclass jobject
const char jobject jint const
unsigned char jint * 
new_class_data_len
typedef JNIEnv jclass jobject
const char jobject jint const
unsigned char jint unsigned
char ** 
new_class_data
typedef JNIEnvjni_env
typedef JNIEnvjni_env
typedef jmethodID method
typedef jmethodID jint code_size
typedef jmethodID jint const
void * 
code_addr
typedef jmethodID jint const
void jint 
map_length
typedef jmethodID jint const
void jint const jvmtiAddrLocationMap
almap
typedef jmethodID jint const
void jint const jvmtiAddrLocationMap
const void * 
compile_info
typedef jmethodID method
typedef jmethodID const void * code_addr
typedef const char * name
typedef const char const void * address
typedef const char const void
jint 
length
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jobject object
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jobject object
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jobject object
typedef JNIEnv jthread jobject
jlong 
timeout
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jobject object
typedef JNIEnv jthread jobject
jboolean 
timed_out
typedef JNIEnvjni_env
typedef JNIEnv jthread thread
typedef JNIEnv jthread jobject object
typedef JNIEnv jthread jobject
jclass 
object_clazz
typedef JNIEnv jthread jobject
jclass jlong 
size
typedef jlong tag
typedef void * jvmtiEventReserved
 Callback type for reserved event types.
typedef jlong size
typedef jlong jlongtag_ptr
typedef jlong jlong void * user_data
typedef jlong class_tag
typedef jlong jlong size
typedef jlong jlong jlongtag_ptr
typedef jlong jlong jlong
void * 
user_data
typedef jlong class_tag
typedef jlong jlong size
typedef jlong jlong jlongtag_ptr
typedef jlong jlong jlong
jlong 
thread_tag
typedef jlong jlong jlong
jlong jint 
depth
typedef jlong jlong jlong
jlong jint jmethodID 
method
typedef jlong jlong jlong
jlong jint jmethodID jint 
slot
typedef jlong jlong jlong
jlong jint jmethodID jint
void * 
user_data
typedef jlong class_tag
typedef jlong jlong size
typedef jlong jlong jlongtag_ptr
typedef jlong jlong jlong
jlong 
referrer_tag
typedef jlong jlong jlong
jlong jint 
referrer_index
typedef jlong jlong jlong
jlong jint void * 
user_data

Enumerations

enum  jvmtiError {
  JVMTI_ERROR_NONE = 0, JVMTI_ERROR_NULL_POINTER = 100, JVMTI_ERROR_OUT_OF_MEMORY = 110, JVMTI_ERROR_ACCESS_DENIED = 111,
  JVMTI_ERROR_UNATTACHED_THREAD = 115, JVMTI_ERROR_INVALID_ENVIRONMENT = 116, JVMTI_ERROR_WRONG_PHASE = 112, JVMTI_ERROR_INTERNAL = 113,
  JVMTI_ERROR_INVALID_PRIORITY = 12, JVMTI_ERROR_THREAD_NOT_SUSPENDED = 13, JVMTI_ERROR_THREAD_SUSPENDED = 14, JVMTI_ERROR_THREAD_NOT_ALIVE = 15,
  JVMTI_ERROR_CLASS_NOT_PREPARED = 22, JVMTI_ERROR_NO_MORE_FRAMES = 31, JVMTI_ERROR_OPAQUE_FRAME = 32, JVMTI_ERROR_DUPLICATE = 40,
  JVMTI_ERROR_NOT_FOUND = 41, JVMTI_ERROR_NOT_MONITOR_OWNER = 51, JVMTI_ERROR_INTERRUPT = 52, JVMTI_ERROR_UNMODIFIABLE_CLASS = 79,
  JVMTI_ERROR_NOT_AVAILABLE = 98, JVMTI_ERROR_ABSENT_INFORMATION = 101, JVMTI_ERROR_INVALID_EVENT_TYPE = 102, JVMTI_ERROR_NATIVE_METHOD = 104,
  JVMTI_ERROR_INVALID_THREAD = 10, JVMTI_ERROR_INVALID_FIELDID = 25, JVMTI_ERROR_INVALID_METHODID = 23, JVMTI_ERROR_INVALID_LOCATION = 24,
  JVMTI_ERROR_INVALID_OBJECT = 20, JVMTI_ERROR_INVALID_CLASS = 21, JVMTI_ERROR_TYPE_MISMATCH = 34, JVMTI_ERROR_INVALID_SLOT = 35,
  JVMTI_ERROR_MUST_POSSESS_CAPABILITY = 99, JVMTI_ERROR_INVALID_THREAD_GROUP = 11, JVMTI_ERROR_INVALID_MONITOR = 50, JVMTI_ERROR_ILLEGAL_ARGUMENT = 103,
  JVMTI_ERROR_INVALID_TYPESTATE = 65, JVMTI_ERROR_UNSUPPORTED_VERSION = 68, JVMTI_ERROR_INVALID_CLASS_FORMAT = 60, JVMTI_ERROR_CIRCULAR_CLASS_DEFINITION = 61,
  JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_ADDED = 63, JVMTI_ERROR_UNSUPPORTED_REDEFINITION_SCHEMA_CHANGED = 64, JVMTI_ERROR_FAILS_VERIFICATION = 62, JVMTI_ERROR_UNSUPPORTED_REDEFINITION_HIERARCHY_CHANGED = 66,
  JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_DELETED = 67, JVMTI_ERROR_NAMES_DONT_MATCH = 69, JVMTI_ERROR_UNSUPPORTED_REDEFINITION_CLASS_MODIFIERS_CHANGED = 70, JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_MODIFIERS_CHANGED = 71,
  JVMTI_NYI = 666
}
 Error codes which JVMTI API functions may return. More...
enum  {
  JVMTI_CLASS_STATUS_VERIFIED = 1, JVMTI_CLASS_STATUS_PREPARED = 2, JVMTI_CLASS_STATUS_INITIALIZED = 4, JVMTI_CLASS_STATUS_ERROR = 8,
  JVMTI_CLASS_STATUS_ARRAY = 16, JVMTI_CLASS_STATUS_PRIMITIVE = 32
}
 Class status flags which GetClassStatus function may return. More...
enum  {
  JVMTI_THREAD_STATE_ALIVE = 0x0001, JVMTI_THREAD_STATE_TERMINATED = 0x0002, JVMTI_THREAD_STATE_RUNNABLE = 0x0004, JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER = 0x0400,
  JVMTI_THREAD_STATE_WAITING = 0x0080, JVMTI_THREAD_STATE_WAITING_INDEFINITELY = 0x0010, JVMTI_THREAD_STATE_WAITING_WITH_TIMEOUT = 0x0020, JVMTI_THREAD_STATE_SLEEPING = 0x0040,
  JVMTI_THREAD_STATE_IN_OBJECT_WAIT = 0x0100, JVMTI_THREAD_STATE_PARKED = 0x0200, JVMTI_THREAD_STATE_SUSPENDED = 0x100000, JVMTI_THREAD_STATE_INTERRUPTED = 0x200000,
  JVMTI_THREAD_STATE_IN_NATIVE = 0x400000, JVMTI_THREAD_STATE_VENDOR_1 = 0x10000000, JVMTI_THREAD_STATE_VENDOR_2 = 0x20000000, JVMTI_THREAD_STATE_VENDOR_3 = 0x40000000
}
 Thread states which may be returned by GetThreadState function. More...
enum  {
  JVMTI_JAVA_LANG_THREAD_STATE_MASK, JVMTI_JAVA_LANG_THREAD_STATE_NEW = 0, JVMTI_JAVA_LANG_THREAD_STATE_TERMINATED = JVMTI_THREAD_STATE_TERMINATED, JVMTI_JAVA_LANG_THREAD_STATE_RUNNABLE,
  JVMTI_JAVA_LANG_THREAD_STATE_BLOCKED, JVMTI_JAVA_LANG_THREAD_STATE_WAITING, JVMTI_JAVA_LANG_THREAD_STATE_TIMED_WAITING
}
 Thread states masks which may be used to filter out thread states in bit mask returned by specification function. More...
enum  { JVMTI_THREAD_MIN_PRIORITY = 1, JVMTI_THREAD_NORM_PRIORITY = 5, JVMTI_THREAD_MAX_PRIORITY = 10 }
 Thread priorities. More...
enum  jvmtiEvent {
  JVMTI_MIN_EVENT_TYPE_VAL = 50, JVMTI_EVENT_VM_INIT = 50, JVMTI_EVENT_VM_DEATH = 51, JVMTI_EVENT_THREAD_START = 52,
  JVMTI_EVENT_THREAD_END = 53, JVMTI_EVENT_CLASS_FILE_LOAD_HOOK = 54, JVMTI_EVENT_CLASS_LOAD = 55, JVMTI_EVENT_CLASS_PREPARE = 56,
  JVMTI_EVENT_VM_START = 57, JVMTI_EVENT_EXCEPTION = 58, JVMTI_EVENT_EXCEPTION_CATCH = 59, JVMTI_EVENT_SINGLE_STEP = 60,
  JVMTI_EVENT_FRAME_POP = 61, JVMTI_EVENT_BREAKPOINT = 62, JVMTI_EVENT_FIELD_ACCESS = 63, JVMTI_EVENT_FIELD_MODIFICATION = 64,
  JVMTI_EVENT_METHOD_ENTRY = 65, JVMTI_EVENT_METHOD_EXIT = 66, JVMTI_EVENT_NATIVE_METHOD_BIND = 67, JVMTI_EVENT_COMPILED_METHOD_LOAD = 68,
  JVMTI_EVENT_COMPILED_METHOD_UNLOAD = 69, JVMTI_EVENT_DYNAMIC_CODE_GENERATED = 70, JVMTI_EVENT_DATA_DUMP_REQUEST = 71, JVMTI_EVENT_DATA_RESET_REQUEST = 72,
  JVMTI_EVENT_MONITOR_WAIT = 73, JVMTI_EVENT_MONITOR_WAITED = 74, JVMTI_EVENT_MONITOR_CONTENDED_ENTER = 75, JVMTI_EVENT_MONITOR_CONTENDED_ENTERED = 76,
  JVMTI_EVENT_GARBAGE_COLLECTION_START = 81, JVMTI_EVENT_GARBAGE_COLLECTION_FINISH = 82, JVMTI_EVENT_OBJECT_FREE = 83, JVMTI_EVENT_VM_OBJECT_ALLOC = 84,
  JVMTI_MAX_EVENT_TYPE_VAL = 84
}
 Event numbers. More...
enum  jvmtiHeapRootKind {
  JVMTI_HEAP_ROOT_JNI_GLOBAL = 1, JVMTI_HEAP_ROOT_SYSTEM_CLASS = 2, JVMTI_HEAP_ROOT_MONITOR = 3, JVMTI_HEAP_ROOT_STACK_LOCAL = 4,
  JVMTI_HEAP_ROOT_JNI_LOCAL = 5, JVMTI_HEAP_ROOT_THREAD = 6, JVMTI_HEAP_ROOT_OTHER = 7
}
 Root types used in JVMTI heap iteration. More...
enum  jvmtiIterationControl { JVMTI_ITERATION_CONTINUE = 1, JVMTI_ITERATION_IGNORE = 2, JVMTI_ITERATION_ABORT = 0 }
 Generic iteration control used in JVMTI heap iteration. More...
enum  jvmtiObjectReferenceKind {
  JVMTI_REFERENCE_CLASS = 1, JVMTI_REFERENCE_FIELD = 2, JVMTI_REFERENCE_ARRAY_ELEMENT = 3, JVMTI_REFERENCE_CLASS_LOADER = 4,
  JVMTI_REFERENCE_SIGNERS = 5, JVMTI_REFERENCE_PROTECTION_DOMAIN = 6, JVMTI_REFERENCE_INTERFACE = 7, JVMTI_REFERENCE_STATIC_FIELD = 8,
  JVMTI_REFERENCE_CONSTANT_POOL = 9
}
 Describes enumerated references in JVMTI heap iteration. More...
enum  jvmtiHeapObjectFilter { JVMTI_HEAP_OBJECT_TAGGED = 1, JVMTI_HEAP_OBJECT_UNTAGGED = 2, JVMTI_HEAP_OBJECT_EITHER = 3 }
 Tagged objects filters used in JVMTI heap iteration. More...
enum  jvmtiParamKind {
  JVMTI_KIND_IN = 91, JVMTI_KIND_IN_PTR = 92, JVMTI_KIND_IN_BUF = 93, JVMTI_KIND_ALLOC_BUF = 94,
  JVMTI_KIND_ALLOC_ALLOC_BUF = 95, JVMTI_KIND_OUT = 96, JVMTI_KIND_OUT_BUF = 97
}
 Arguments kinds for extension events callbacks. More...
enum  jvmtiParamTypes {
  JVMTI_TYPE_JBYTE = 101, JVMTI_TYPE_JCHAR = 102, JVMTI_TYPE_JSHORT = 103, JVMTI_TYPE_JINT = 104,
  JVMTI_TYPE_JLONG = 105, JVMTI_TYPE_JFLOAT = 106, JVMTI_TYPE_JDOUBLE = 107, JVMTI_TYPE_JBOOLEAN = 108,
  JVMTI_TYPE_JOBJECT = 109, JVMTI_TYPE_JTHREAD = 110, JVMTI_TYPE_JCLASS = 111, JVMTI_TYPE_JVALUE = 112,
  JVMTI_TYPE_JFIELDID = 113, JVMTI_TYPE_JMETHODID = 114, JVMTI_TYPE_CCHAR = 115, JVMTI_TYPE_CVOID = 116,
  JVMTI_TYPE_JNIENV = 117
}
 Arguments types for extension events callbacks. More...
enum  jvmtiEventMode { JVMTI_ENABLE = 1, JVMTI_DISABLE = 0 }
 Event generation mode. More...
enum  jvmtiTimerKind { JVMTI_TIMER_USER_CPU = 30, JVMTI_TIMER_TOTAL_CPU = 31, JVMTI_TIMER_ELAPSED = 32 }
 Timer type identifier. More...
enum  jvmtiPhase {
  JVMTI_PHASE_ONLOAD = 1, JVMTI_PHASE_PRIMORDIAL = 2, JVMTI_PHASE_START = 6, JVMTI_PHASE_LIVE = 4,
  JVMTI_PHASE_DEAD = 8
}
 VM operation phase identifier. More...
enum  jvmtiVerboseFlag { JVMTI_VERBOSE_OTHER = 0, JVMTI_VERBOSE_GC = 1, JVMTI_VERBOSE_CLASS = 2, JVMTI_VERBOSE_JNI = 4 }
 VM verbosity level. More...
enum  jvmtiJlocationFormat { JVMTI_JLOCATION_JVMBCI = 1, JVMTI_JLOCATION_MACHINEPC = 2, JVMTI_JLOCATION_OTHER = 0 }
 JLocation format identifier. More...

Functions

typedef void (JNICALL *jvmtiStartFunction)(jvmtiEnv *jvmti_env
 Pointer to a function which could be launched as a separate agent thread.
typedef jvmtiError (JNICALL *jvmtiExtensionFunction)(jvmtiEnv *jvmti_env
 Callback function type for extension events.
typedef jvmtiIterationControl (JNICALL *jvmtiHeapObjectCallback)(jlong class_tag
 Callback function type for heap iteration callback which is called for all objects.


Define Documentation

#define TOTAL_EVENT_TYPE_NUM   (JVMTI_MAX_EVENT_TYPE_VAL - JVMTI_MIN_EVENT_TYPE_VAL + 1)

Total number of events specified in JVMTI interface.


Typedef Documentation

typedef struct ti_interface* jvmtiEnv

JVMTI environment definition for use in C sources.

See specification for details.

typedef jobject jthread

Reference type which describes a java.lang.Thread instance object in native function.

See specification for details.

typedef jlong jlocation

64-bit type which defines executable positon inside of method

See specification for details.

typedef jobject jthreadGroup

Reference type which describes a java.lang.ThreadGroup instance object in native function.

See specification for details.

typedef int jrawMonitorID

Raw monitor ID type.

See specification for details.

typedef struct JNINativeInterface_ jniNativeInterface

JNI API interface table type for usage in C.

See specification for details.

typedef JNIEnv* jni_env

typedef JNIEnv void* arg

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jlocation location

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jlocation location

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jlocation location

typedef JNIEnv jthread jmethodID jlocation jclass field_clazz

typedef JNIEnv jthread jmethodID jlocation jclass jobject object

typedef JNIEnv jthread jmethodID jlocation jclass jobject jfieldID field

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jlocation location

typedef JNIEnv jthread jmethodID jlocation jclass field_clazz

typedef JNIEnv jthread jmethodID jlocation jclass jobject object

typedef JNIEnv jthread jmethodID jlocation jclass jobject jfieldID field

typedef JNIEnv jthread jmethodID jlocation jclass jobject jfieldID char signature_type

typedef JNIEnv jthread jmethodID jlocation jclass jobject jfieldID char jvalue new_value

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jboolean was_popped_by_exception

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jboolean was_popped_by_exception

typedef JNIEnv jthread jmethodID jboolean jvalue return_value

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID void* address

typedef JNIEnv jthread jmethodID void void** new_address_ptr

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jlocation location

typedef JNIEnv jthread jmethodID jlocation jobject exception

typedef JNIEnv jthread jmethodID jlocation jobject jmethodID catch_method

typedef JNIEnv jthread jmethodID jlocation jobject jmethodID jlocation catch_location

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jmethodID method

typedef JNIEnv jthread jmethodID jlocation location

typedef JNIEnv jthread jmethodID jlocation jobject exception

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jclass clazz

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jclass clazz

typedef JNIEnv* jni_env

typedef JNIEnv jclass class_being_redefined

typedef JNIEnv jclass jobject loader

typedef JNIEnv jclass jobject const char* name

typedef JNIEnv jclass jobject const char jobject protection_domain

typedef JNIEnv jclass jobject const char jobject jint class_data_len

typedef JNIEnv jclass jobject const char jobject jint const unsigned char* class_data

typedef JNIEnv jclass jobject const char jobject jint const unsigned char jint* new_class_data_len

typedef JNIEnv jclass jobject const char jobject jint const unsigned char jint unsigned char** new_class_data

typedef JNIEnv* jni_env

typedef JNIEnv* jni_env

typedef jmethodID method

typedef jmethodID jint code_size

typedef jmethodID jint const void* code_addr

typedef jmethodID jint const void jint map_length

typedef jmethodID jint const void jint const jvmtiAddrLocationMap* almap

typedef jmethodID jint const void jint const jvmtiAddrLocationMap const void* compile_info

typedef jmethodID method

typedef jmethodID const void* code_addr

typedef const char* name

typedef const char const void* address

typedef const char const void jint length

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jobject object

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jobject object

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jobject object

typedef JNIEnv jthread jobject jlong timeout

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jobject object

typedef JNIEnv jthread jobject jboolean timed_out

typedef JNIEnv* jni_env

typedef JNIEnv jthread thread

typedef JNIEnv jthread jobject object

typedef JNIEnv jthread jobject jclass object_clazz

typedef JNIEnv jthread jobject jclass jlong size

typedef jlong tag

typedef void* jvmtiEventReserved

Callback type for reserved event types.

typedef jlong size

typedef jlong jlong* tag_ptr

typedef jlong jlong void* user_data

typedef jlong class_tag

typedef jlong jlong size

typedef jlong jlong jlong* tag_ptr

typedef jlong jlong jlong void* user_data

typedef jlong class_tag

typedef jlong jlong size

typedef jlong jlong jlong* tag_ptr

typedef jlong jlong jlong jlong thread_tag

typedef jlong jlong jlong jlong jint depth

typedef jlong jlong jlong jlong jint jmethodID method

typedef jlong jlong jlong jlong jint jmethodID jint slot

typedef jlong jlong jlong jlong jint jmethodID jint void* user_data

typedef jlong class_tag

typedef jlong jlong size

typedef jlong jlong jlong* tag_ptr

typedef jlong jlong jlong jlong referrer_tag

typedef jlong jlong jlong jlong jint referrer_index

typedef jlong jlong jlong jlong jint void* user_data


Enumeration Type Documentation

enum jvmtiError

Error codes which JVMTI API functions may return.

See specification for details.

Enumerator:
JVMTI_ERROR_NONE 
JVMTI_ERROR_NULL_POINTER 
JVMTI_ERROR_OUT_OF_MEMORY 
JVMTI_ERROR_ACCESS_DENIED 
JVMTI_ERROR_UNATTACHED_THREAD 
JVMTI_ERROR_INVALID_ENVIRONMENT 
JVMTI_ERROR_WRONG_PHASE 
JVMTI_ERROR_INTERNAL 
JVMTI_ERROR_INVALID_PRIORITY 
JVMTI_ERROR_THREAD_NOT_SUSPENDED 
JVMTI_ERROR_THREAD_SUSPENDED 
JVMTI_ERROR_THREAD_NOT_ALIVE 
JVMTI_ERROR_CLASS_NOT_PREPARED 
JVMTI_ERROR_NO_MORE_FRAMES 
JVMTI_ERROR_OPAQUE_FRAME 
JVMTI_ERROR_DUPLICATE 
JVMTI_ERROR_NOT_FOUND 
JVMTI_ERROR_NOT_MONITOR_OWNER 
JVMTI_ERROR_INTERRUPT 
JVMTI_ERROR_UNMODIFIABLE_CLASS 
JVMTI_ERROR_NOT_AVAILABLE 
JVMTI_ERROR_ABSENT_INFORMATION 
JVMTI_ERROR_INVALID_EVENT_TYPE 
JVMTI_ERROR_NATIVE_METHOD 
JVMTI_ERROR_INVALID_THREAD 
JVMTI_ERROR_INVALID_FIELDID 
JVMTI_ERROR_INVALID_METHODID 
JVMTI_ERROR_INVALID_LOCATION 
JVMTI_ERROR_INVALID_OBJECT 
JVMTI_ERROR_INVALID_CLASS 
JVMTI_ERROR_TYPE_MISMATCH 
JVMTI_ERROR_INVALID_SLOT 
JVMTI_ERROR_MUST_POSSESS_CAPABILITY 
JVMTI_ERROR_INVALID_THREAD_GROUP 
JVMTI_ERROR_INVALID_MONITOR 
JVMTI_ERROR_ILLEGAL_ARGUMENT 
JVMTI_ERROR_INVALID_TYPESTATE 
JVMTI_ERROR_UNSUPPORTED_VERSION 
JVMTI_ERROR_INVALID_CLASS_FORMAT 
JVMTI_ERROR_CIRCULAR_CLASS_DEFINITION 
JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_ADDED 
JVMTI_ERROR_UNSUPPORTED_REDEFINITION_SCHEMA_CHANGED 
JVMTI_ERROR_FAILS_VERIFICATION 
JVMTI_ERROR_UNSUPPORTED_REDEFINITION_HIERARCHY_CHANGED 
JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_DELETED 
JVMTI_ERROR_NAMES_DONT_MATCH 
JVMTI_ERROR_UNSUPPORTED_REDEFINITION_CLASS_MODIFIERS_CHANGED 
JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_MODIFIERS_CHANGED 
JVMTI_NYI 

anonymous enum

Class status flags which GetClassStatus function may return.

Enumerator:
JVMTI_CLASS_STATUS_VERIFIED  Class bytecodes have been verified.

See specification for details.

JVMTI_CLASS_STATUS_PREPARED  Class preparation is complete.

See specification for details.

JVMTI_CLASS_STATUS_INITIALIZED  Class initialization is complete.

Static initializer has been run

See specification for details.

JVMTI_CLASS_STATUS_ERROR  Error during initialization makes class unusable.

See specification for details.

JVMTI_CLASS_STATUS_ARRAY  Class is an array.

If set, all other bits are zero

See specification for details.

JVMTI_CLASS_STATUS_PRIMITIVE  Class is a primitive class (for example, java.lang.Integer.TYPE).

If set, all other bits are zero

See specification for details.

anonymous enum

Thread states which may be returned by GetThreadState function.

See specification for details.

Enumerator:
JVMTI_THREAD_STATE_ALIVE 
JVMTI_THREAD_STATE_TERMINATED 
JVMTI_THREAD_STATE_RUNNABLE 
JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER 
JVMTI_THREAD_STATE_WAITING 
JVMTI_THREAD_STATE_WAITING_INDEFINITELY 
JVMTI_THREAD_STATE_WAITING_WITH_TIMEOUT 
JVMTI_THREAD_STATE_SLEEPING 
JVMTI_THREAD_STATE_IN_OBJECT_WAIT 
JVMTI_THREAD_STATE_PARKED 
JVMTI_THREAD_STATE_SUSPENDED 
JVMTI_THREAD_STATE_INTERRUPTED 
JVMTI_THREAD_STATE_IN_NATIVE 
JVMTI_THREAD_STATE_VENDOR_1 
JVMTI_THREAD_STATE_VENDOR_2 
JVMTI_THREAD_STATE_VENDOR_3 

anonymous enum

Thread states masks which may be used to filter out thread states in bit mask returned by specification function.

See specification for details.

Enumerator:
JVMTI_JAVA_LANG_THREAD_STATE_MASK 
JVMTI_JAVA_LANG_THREAD_STATE_NEW 
JVMTI_JAVA_LANG_THREAD_STATE_TERMINATED 
JVMTI_JAVA_LANG_THREAD_STATE_RUNNABLE 
JVMTI_JAVA_LANG_THREAD_STATE_BLOCKED 
JVMTI_JAVA_LANG_THREAD_STATE_WAITING 
JVMTI_JAVA_LANG_THREAD_STATE_TIMED_WAITING 

anonymous enum

Thread priorities.

See specification for details.

Enumerator:
JVMTI_THREAD_MIN_PRIORITY 
JVMTI_THREAD_NORM_PRIORITY 
JVMTI_THREAD_MAX_PRIORITY 

enum jvmtiEvent

Event numbers.

Custom events could be added after JVMTI_MAX_EVENT_TYPE_VAL.

See specification for details.

Enumerator:
JVMTI_MIN_EVENT_TYPE_VAL 
JVMTI_EVENT_VM_INIT 
JVMTI_EVENT_VM_DEATH 
JVMTI_EVENT_THREAD_START 
JVMTI_EVENT_THREAD_END 
JVMTI_EVENT_CLASS_FILE_LOAD_HOOK 
JVMTI_EVENT_CLASS_LOAD 
JVMTI_EVENT_CLASS_PREPARE 
JVMTI_EVENT_VM_START 
JVMTI_EVENT_EXCEPTION 
JVMTI_EVENT_EXCEPTION_CATCH 
JVMTI_EVENT_SINGLE_STEP 
JVMTI_EVENT_FRAME_POP 
JVMTI_EVENT_BREAKPOINT 
JVMTI_EVENT_FIELD_ACCESS 
JVMTI_EVENT_FIELD_MODIFICATION 
JVMTI_EVENT_METHOD_ENTRY 
JVMTI_EVENT_METHOD_EXIT 
JVMTI_EVENT_NATIVE_METHOD_BIND 
JVMTI_EVENT_COMPILED_METHOD_LOAD 
JVMTI_EVENT_COMPILED_METHOD_UNLOAD 
JVMTI_EVENT_DYNAMIC_CODE_GENERATED 
JVMTI_EVENT_DATA_DUMP_REQUEST 
JVMTI_EVENT_DATA_RESET_REQUEST 
JVMTI_EVENT_MONITOR_WAIT 
JVMTI_EVENT_MONITOR_WAITED 
JVMTI_EVENT_MONITOR_CONTENDED_ENTER 
JVMTI_EVENT_MONITOR_CONTENDED_ENTERED 
JVMTI_EVENT_GARBAGE_COLLECTION_START 
JVMTI_EVENT_GARBAGE_COLLECTION_FINISH 
JVMTI_EVENT_OBJECT_FREE 
JVMTI_EVENT_VM_OBJECT_ALLOC 
JVMTI_MAX_EVENT_TYPE_VAL 

enum jvmtiHeapRootKind

Root types used in JVMTI heap iteration.

See specification for details.

Enumerator:
JVMTI_HEAP_ROOT_JNI_GLOBAL 
JVMTI_HEAP_ROOT_SYSTEM_CLASS 
JVMTI_HEAP_ROOT_MONITOR 
JVMTI_HEAP_ROOT_STACK_LOCAL 
JVMTI_HEAP_ROOT_JNI_LOCAL 
JVMTI_HEAP_ROOT_THREAD 
JVMTI_HEAP_ROOT_OTHER 

enum jvmtiIterationControl

Generic iteration control used in JVMTI heap iteration.

See specification for details.

Enumerator:
JVMTI_ITERATION_CONTINUE 
JVMTI_ITERATION_IGNORE 
JVMTI_ITERATION_ABORT 

enum jvmtiObjectReferenceKind

Describes enumerated references in JVMTI heap iteration.

See specification for details.

Enumerator:
JVMTI_REFERENCE_CLASS 
JVMTI_REFERENCE_FIELD 
JVMTI_REFERENCE_ARRAY_ELEMENT 
JVMTI_REFERENCE_CLASS_LOADER 
JVMTI_REFERENCE_SIGNERS 
JVMTI_REFERENCE_PROTECTION_DOMAIN 
JVMTI_REFERENCE_INTERFACE 
JVMTI_REFERENCE_STATIC_FIELD 
JVMTI_REFERENCE_CONSTANT_POOL 

enum jvmtiHeapObjectFilter

Tagged objects filters used in JVMTI heap iteration.

See specification for details.

Enumerator:
JVMTI_HEAP_OBJECT_TAGGED 
JVMTI_HEAP_OBJECT_UNTAGGED 
JVMTI_HEAP_OBJECT_EITHER 

enum jvmtiParamKind

Arguments kinds for extension events callbacks.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiParamKind>specification for details.

Enumerator:
JVMTI_KIND_IN 
JVMTI_KIND_IN_PTR 
JVMTI_KIND_IN_BUF 
JVMTI_KIND_ALLOC_BUF 
JVMTI_KIND_ALLOC_ALLOC_BUF 
JVMTI_KIND_OUT 
JVMTI_KIND_OUT_BUF 

enum jvmtiParamTypes

Arguments types for extension events callbacks.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiParamKind>specification for details.

Enumerator:
JVMTI_TYPE_JBYTE 
JVMTI_TYPE_JCHAR 
JVMTI_TYPE_JSHORT 
JVMTI_TYPE_JINT 
JVMTI_TYPE_JLONG 
JVMTI_TYPE_JFLOAT 
JVMTI_TYPE_JDOUBLE 
JVMTI_TYPE_JBOOLEAN 
JVMTI_TYPE_JOBJECT 
JVMTI_TYPE_JTHREAD 
JVMTI_TYPE_JCLASS 
JVMTI_TYPE_JVALUE 
JVMTI_TYPE_JFIELDID 
JVMTI_TYPE_JMETHODID 
JVMTI_TYPE_CCHAR 
JVMTI_TYPE_CVOID 
JVMTI_TYPE_JNIENV 

enum jvmtiEventMode

Event generation mode.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiEventMode>specification for details.

Enumerator:
JVMTI_ENABLE 
JVMTI_DISABLE 

enum jvmtiTimerKind

Timer type identifier.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiTimerKind>specification for details.

Enumerator:
JVMTI_TIMER_USER_CPU 
JVMTI_TIMER_TOTAL_CPU 
JVMTI_TIMER_ELAPSED 

enum jvmtiPhase

VM operation phase identifier.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiPhase>specification for details.

Enumerator:
JVMTI_PHASE_ONLOAD 
JVMTI_PHASE_PRIMORDIAL 
JVMTI_PHASE_START 
JVMTI_PHASE_LIVE 
JVMTI_PHASE_DEAD 

enum jvmtiVerboseFlag

VM verbosity level.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiVerboseFlag>specification for details.

Enumerator:
JVMTI_VERBOSE_OTHER 
JVMTI_VERBOSE_GC 
JVMTI_VERBOSE_CLASS 
JVMTI_VERBOSE_JNI 

enum jvmtiJlocationFormat

JLocation format identifier.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiJlocationFormat>specification for details.

Enumerator:
JVMTI_JLOCATION_JVMBCI 
JVMTI_JLOCATION_MACHINEPC 
JVMTI_JLOCATION_OTHER 


Function Documentation

typedef void ( JNICALL *  jvmtiEventGarbageCollectionFinish  ) 

Pointer to a function which could be launched as a separate agent thread.

See specification for details.

typedef jvmtiError ( JNICALL *  jvmtiExtensionFunction  ) 

Callback function type for extension events.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiExtensionFunction>specification for details.

typedef jvmtiIterationControl ( JNICALL *  jvmtiObjectReferenceCallback  ) 

Callback function type for heap iteration callback which is called for all objects.

See <a href="http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html.jvmtiHeapObjectCallback>specification for details.


Genereated on Tue Mar 11 19:25:57 2008 by Doxygen.

(c) Copyright 2005, 2008 The Apache Software Foundation or its licensors, as applicable.