jdk/src/share/javavm/export/jvmti.h
author ohair
Wed, 06 Apr 2011 22:06:11 -0700
changeset 9035 1255eb81cc2f
parent 7978 120267233d5e
permissions -rw-r--r--
7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
/*
9035
1255eb81cc2f 7033660: Update copyright year to 2011 on any files changed in 2011
ohair
parents: 7978
diff changeset
     2
 * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
     7
 * published by the Free Software Foundation.  Oracle designates this
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
 * particular file as subject to the "Classpath" exception as provided
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
     9
 * by Oracle in the LICENSE file that accompanied this code.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
 * version 2 for more details (a copy is included in the LICENSE file that
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
 * accompanied this code).
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
 * You should have received a copy of the GNU General Public License version
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
 *
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
    22
 * or visit www.oracle.com if you need additional information or have any
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2
diff changeset
    23
 * questions.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
    /* AUTOMATICALLY GENERATED FILE - DO NOT EDIT */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
    /* Include file for the Java(tm) Virtual Machine Tool Interface */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
#ifndef _JAVA_JVMTI_H_
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
#define _JAVA_JVMTI_H_
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
#include "jni.h"
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
#ifdef __cplusplus
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
extern "C" {
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
#endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
    39
90ce3da70b43 Initial load
duke
parents:
diff changeset
    40
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
    41
    JVMTI_VERSION_1   = 0x30010000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    42
    JVMTI_VERSION_1_0 = 0x30010000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    43
    JVMTI_VERSION_1_1 = 0x30010100,
7978
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
    44
    JVMTI_VERSION_1_2 = 0x30010200,
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
    45
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
    46
    JVMTI_VERSION = 0x30000000 + (1 * 0x10000) + (2 * 0x100) + 1  /* version: 1.2.1 */
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    47
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
    48
90ce3da70b43 Initial load
duke
parents:
diff changeset
    49
JNIEXPORT jint JNICALL
90ce3da70b43 Initial load
duke
parents:
diff changeset
    50
Agent_OnLoad(JavaVM *vm, char *options, void *reserved);
90ce3da70b43 Initial load
duke
parents:
diff changeset
    51
90ce3da70b43 Initial load
duke
parents:
diff changeset
    52
JNIEXPORT jint JNICALL
90ce3da70b43 Initial load
duke
parents:
diff changeset
    53
Agent_OnAttach(JavaVM* vm, char* options, void* reserved);
90ce3da70b43 Initial load
duke
parents:
diff changeset
    54
90ce3da70b43 Initial load
duke
parents:
diff changeset
    55
JNIEXPORT void JNICALL
90ce3da70b43 Initial load
duke
parents:
diff changeset
    56
Agent_OnUnload(JavaVM *vm);
90ce3da70b43 Initial load
duke
parents:
diff changeset
    57
90ce3da70b43 Initial load
duke
parents:
diff changeset
    58
    /* Forward declaration of the environment */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    59
90ce3da70b43 Initial load
duke
parents:
diff changeset
    60
struct _jvmtiEnv;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    61
90ce3da70b43 Initial load
duke
parents:
diff changeset
    62
struct jvmtiInterface_1_;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    63
90ce3da70b43 Initial load
duke
parents:
diff changeset
    64
#ifdef __cplusplus
90ce3da70b43 Initial load
duke
parents:
diff changeset
    65
typedef _jvmtiEnv jvmtiEnv;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    66
#else
90ce3da70b43 Initial load
duke
parents:
diff changeset
    67
typedef const struct jvmtiInterface_1_ *jvmtiEnv;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    68
#endif /* __cplusplus */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    69
90ce3da70b43 Initial load
duke
parents:
diff changeset
    70
/* Derived Base Types */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    71
90ce3da70b43 Initial load
duke
parents:
diff changeset
    72
typedef jobject jthread;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    73
typedef jobject jthreadGroup;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    74
typedef jlong jlocation;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    75
struct _jrawMonitorID;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    76
typedef struct _jrawMonitorID *jrawMonitorID;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    77
typedef struct JNINativeInterface_ jniNativeInterface;
90ce3da70b43 Initial load
duke
parents:
diff changeset
    78
90ce3da70b43 Initial load
duke
parents:
diff changeset
    79
    /* Constants */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    80
90ce3da70b43 Initial load
duke
parents:
diff changeset
    81
90ce3da70b43 Initial load
duke
parents:
diff changeset
    82
    /* Thread State Flags */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    83
90ce3da70b43 Initial load
duke
parents:
diff changeset
    84
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
    85
    JVMTI_THREAD_STATE_ALIVE = 0x0001,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    86
    JVMTI_THREAD_STATE_TERMINATED = 0x0002,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    87
    JVMTI_THREAD_STATE_RUNNABLE = 0x0004,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    88
    JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER = 0x0400,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    89
    JVMTI_THREAD_STATE_WAITING = 0x0080,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    90
    JVMTI_THREAD_STATE_WAITING_INDEFINITELY = 0x0010,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    91
    JVMTI_THREAD_STATE_WAITING_WITH_TIMEOUT = 0x0020,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    92
    JVMTI_THREAD_STATE_SLEEPING = 0x0040,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    93
    JVMTI_THREAD_STATE_IN_OBJECT_WAIT = 0x0100,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    94
    JVMTI_THREAD_STATE_PARKED = 0x0200,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    95
    JVMTI_THREAD_STATE_SUSPENDED = 0x100000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    96
    JVMTI_THREAD_STATE_INTERRUPTED = 0x200000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    97
    JVMTI_THREAD_STATE_IN_NATIVE = 0x400000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    98
    JVMTI_THREAD_STATE_VENDOR_1 = 0x10000000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    99
    JVMTI_THREAD_STATE_VENDOR_2 = 0x20000000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   100
    JVMTI_THREAD_STATE_VENDOR_3 = 0x40000000
90ce3da70b43 Initial load
duke
parents:
diff changeset
   101
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   102
90ce3da70b43 Initial load
duke
parents:
diff changeset
   103
    /* java.lang.Thread.State Conversion Masks */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   104
90ce3da70b43 Initial load
duke
parents:
diff changeset
   105
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   106
    JVMTI_JAVA_LANG_THREAD_STATE_MASK = JVMTI_THREAD_STATE_TERMINATED | JVMTI_THREAD_STATE_ALIVE | 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,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   107
    JVMTI_JAVA_LANG_THREAD_STATE_NEW = 0,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   108
    JVMTI_JAVA_LANG_THREAD_STATE_TERMINATED = JVMTI_THREAD_STATE_TERMINATED,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   109
    JVMTI_JAVA_LANG_THREAD_STATE_RUNNABLE = JVMTI_THREAD_STATE_ALIVE | JVMTI_THREAD_STATE_RUNNABLE,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   110
    JVMTI_JAVA_LANG_THREAD_STATE_BLOCKED = JVMTI_THREAD_STATE_ALIVE | JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   111
    JVMTI_JAVA_LANG_THREAD_STATE_WAITING = JVMTI_THREAD_STATE_ALIVE | JVMTI_THREAD_STATE_WAITING | JVMTI_THREAD_STATE_WAITING_INDEFINITELY,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   112
    JVMTI_JAVA_LANG_THREAD_STATE_TIMED_WAITING = JVMTI_THREAD_STATE_ALIVE | JVMTI_THREAD_STATE_WAITING | JVMTI_THREAD_STATE_WAITING_WITH_TIMEOUT
90ce3da70b43 Initial load
duke
parents:
diff changeset
   113
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   114
90ce3da70b43 Initial load
duke
parents:
diff changeset
   115
    /* Thread Priority Constants */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   116
90ce3da70b43 Initial load
duke
parents:
diff changeset
   117
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   118
    JVMTI_THREAD_MIN_PRIORITY = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   119
    JVMTI_THREAD_NORM_PRIORITY = 5,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   120
    JVMTI_THREAD_MAX_PRIORITY = 10
90ce3da70b43 Initial load
duke
parents:
diff changeset
   121
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   122
90ce3da70b43 Initial load
duke
parents:
diff changeset
   123
    /* Heap Filter Flags */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   124
90ce3da70b43 Initial load
duke
parents:
diff changeset
   125
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   126
    JVMTI_HEAP_FILTER_TAGGED = 0x4,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   127
    JVMTI_HEAP_FILTER_UNTAGGED = 0x8,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   128
    JVMTI_HEAP_FILTER_CLASS_TAGGED = 0x10,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   129
    JVMTI_HEAP_FILTER_CLASS_UNTAGGED = 0x20
90ce3da70b43 Initial load
duke
parents:
diff changeset
   130
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   131
90ce3da70b43 Initial load
duke
parents:
diff changeset
   132
    /* Heap Visit Control Flags */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   133
90ce3da70b43 Initial load
duke
parents:
diff changeset
   134
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   135
    JVMTI_VISIT_OBJECTS = 0x100,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   136
    JVMTI_VISIT_ABORT = 0x8000
90ce3da70b43 Initial load
duke
parents:
diff changeset
   137
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   138
90ce3da70b43 Initial load
duke
parents:
diff changeset
   139
    /* Heap Reference Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   140
90ce3da70b43 Initial load
duke
parents:
diff changeset
   141
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   142
    JVMTI_HEAP_REFERENCE_CLASS = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   143
    JVMTI_HEAP_REFERENCE_FIELD = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   144
    JVMTI_HEAP_REFERENCE_ARRAY_ELEMENT = 3,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   145
    JVMTI_HEAP_REFERENCE_CLASS_LOADER = 4,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   146
    JVMTI_HEAP_REFERENCE_SIGNERS = 5,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   147
    JVMTI_HEAP_REFERENCE_PROTECTION_DOMAIN = 6,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   148
    JVMTI_HEAP_REFERENCE_INTERFACE = 7,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   149
    JVMTI_HEAP_REFERENCE_STATIC_FIELD = 8,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   150
    JVMTI_HEAP_REFERENCE_CONSTANT_POOL = 9,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   151
    JVMTI_HEAP_REFERENCE_SUPERCLASS = 10,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   152
    JVMTI_HEAP_REFERENCE_JNI_GLOBAL = 21,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   153
    JVMTI_HEAP_REFERENCE_SYSTEM_CLASS = 22,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   154
    JVMTI_HEAP_REFERENCE_MONITOR = 23,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   155
    JVMTI_HEAP_REFERENCE_STACK_LOCAL = 24,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   156
    JVMTI_HEAP_REFERENCE_JNI_LOCAL = 25,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   157
    JVMTI_HEAP_REFERENCE_THREAD = 26,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   158
    JVMTI_HEAP_REFERENCE_OTHER = 27
90ce3da70b43 Initial load
duke
parents:
diff changeset
   159
} jvmtiHeapReferenceKind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   160
90ce3da70b43 Initial load
duke
parents:
diff changeset
   161
    /* Primitive Type Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   162
90ce3da70b43 Initial load
duke
parents:
diff changeset
   163
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   164
    JVMTI_PRIMITIVE_TYPE_BOOLEAN = 90,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   165
    JVMTI_PRIMITIVE_TYPE_BYTE = 66,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   166
    JVMTI_PRIMITIVE_TYPE_CHAR = 67,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   167
    JVMTI_PRIMITIVE_TYPE_SHORT = 83,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   168
    JVMTI_PRIMITIVE_TYPE_INT = 73,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   169
    JVMTI_PRIMITIVE_TYPE_LONG = 74,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   170
    JVMTI_PRIMITIVE_TYPE_FLOAT = 70,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   171
    JVMTI_PRIMITIVE_TYPE_DOUBLE = 68
90ce3da70b43 Initial load
duke
parents:
diff changeset
   172
} jvmtiPrimitiveType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   173
90ce3da70b43 Initial load
duke
parents:
diff changeset
   174
    /* Heap Object Filter Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   175
90ce3da70b43 Initial load
duke
parents:
diff changeset
   176
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   177
    JVMTI_HEAP_OBJECT_TAGGED = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   178
    JVMTI_HEAP_OBJECT_UNTAGGED = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   179
    JVMTI_HEAP_OBJECT_EITHER = 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   180
} jvmtiHeapObjectFilter;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   181
90ce3da70b43 Initial load
duke
parents:
diff changeset
   182
    /* Heap Root Kind Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   183
90ce3da70b43 Initial load
duke
parents:
diff changeset
   184
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   185
    JVMTI_HEAP_ROOT_JNI_GLOBAL = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   186
    JVMTI_HEAP_ROOT_SYSTEM_CLASS = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   187
    JVMTI_HEAP_ROOT_MONITOR = 3,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   188
    JVMTI_HEAP_ROOT_STACK_LOCAL = 4,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   189
    JVMTI_HEAP_ROOT_JNI_LOCAL = 5,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   190
    JVMTI_HEAP_ROOT_THREAD = 6,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   191
    JVMTI_HEAP_ROOT_OTHER = 7
90ce3da70b43 Initial load
duke
parents:
diff changeset
   192
} jvmtiHeapRootKind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   193
90ce3da70b43 Initial load
duke
parents:
diff changeset
   194
    /* Object Reference Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   195
90ce3da70b43 Initial load
duke
parents:
diff changeset
   196
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   197
    JVMTI_REFERENCE_CLASS = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   198
    JVMTI_REFERENCE_FIELD = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   199
    JVMTI_REFERENCE_ARRAY_ELEMENT = 3,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   200
    JVMTI_REFERENCE_CLASS_LOADER = 4,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   201
    JVMTI_REFERENCE_SIGNERS = 5,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   202
    JVMTI_REFERENCE_PROTECTION_DOMAIN = 6,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   203
    JVMTI_REFERENCE_INTERFACE = 7,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   204
    JVMTI_REFERENCE_STATIC_FIELD = 8,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   205
    JVMTI_REFERENCE_CONSTANT_POOL = 9
90ce3da70b43 Initial load
duke
parents:
diff changeset
   206
} jvmtiObjectReferenceKind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   207
90ce3da70b43 Initial load
duke
parents:
diff changeset
   208
    /* Iteration Control Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   209
90ce3da70b43 Initial load
duke
parents:
diff changeset
   210
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   211
    JVMTI_ITERATION_CONTINUE = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   212
    JVMTI_ITERATION_IGNORE = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   213
    JVMTI_ITERATION_ABORT = 0
90ce3da70b43 Initial load
duke
parents:
diff changeset
   214
} jvmtiIterationControl;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   215
90ce3da70b43 Initial load
duke
parents:
diff changeset
   216
    /* Class Status Flags */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   217
90ce3da70b43 Initial load
duke
parents:
diff changeset
   218
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   219
    JVMTI_CLASS_STATUS_VERIFIED = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   220
    JVMTI_CLASS_STATUS_PREPARED = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   221
    JVMTI_CLASS_STATUS_INITIALIZED = 4,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   222
    JVMTI_CLASS_STATUS_ERROR = 8,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   223
    JVMTI_CLASS_STATUS_ARRAY = 16,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   224
    JVMTI_CLASS_STATUS_PRIMITIVE = 32
90ce3da70b43 Initial load
duke
parents:
diff changeset
   225
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   226
90ce3da70b43 Initial load
duke
parents:
diff changeset
   227
    /* Event Enable/Disable */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   228
90ce3da70b43 Initial load
duke
parents:
diff changeset
   229
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   230
    JVMTI_ENABLE = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   231
    JVMTI_DISABLE = 0
90ce3da70b43 Initial load
duke
parents:
diff changeset
   232
} jvmtiEventMode;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   233
90ce3da70b43 Initial load
duke
parents:
diff changeset
   234
    /* Extension Function/Event Parameter Types */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   235
90ce3da70b43 Initial load
duke
parents:
diff changeset
   236
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   237
    JVMTI_TYPE_JBYTE = 101,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   238
    JVMTI_TYPE_JCHAR = 102,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   239
    JVMTI_TYPE_JSHORT = 103,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   240
    JVMTI_TYPE_JINT = 104,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   241
    JVMTI_TYPE_JLONG = 105,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   242
    JVMTI_TYPE_JFLOAT = 106,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   243
    JVMTI_TYPE_JDOUBLE = 107,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   244
    JVMTI_TYPE_JBOOLEAN = 108,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   245
    JVMTI_TYPE_JOBJECT = 109,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   246
    JVMTI_TYPE_JTHREAD = 110,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   247
    JVMTI_TYPE_JCLASS = 111,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   248
    JVMTI_TYPE_JVALUE = 112,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   249
    JVMTI_TYPE_JFIELDID = 113,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   250
    JVMTI_TYPE_JMETHODID = 114,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   251
    JVMTI_TYPE_CCHAR = 115,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   252
    JVMTI_TYPE_CVOID = 116,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   253
    JVMTI_TYPE_JNIENV = 117
90ce3da70b43 Initial load
duke
parents:
diff changeset
   254
} jvmtiParamTypes;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   255
90ce3da70b43 Initial load
duke
parents:
diff changeset
   256
    /* Extension Function/Event Parameter Kinds */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   257
90ce3da70b43 Initial load
duke
parents:
diff changeset
   258
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   259
    JVMTI_KIND_IN = 91,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   260
    JVMTI_KIND_IN_PTR = 92,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   261
    JVMTI_KIND_IN_BUF = 93,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   262
    JVMTI_KIND_ALLOC_BUF = 94,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   263
    JVMTI_KIND_ALLOC_ALLOC_BUF = 95,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   264
    JVMTI_KIND_OUT = 96,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   265
    JVMTI_KIND_OUT_BUF = 97
90ce3da70b43 Initial load
duke
parents:
diff changeset
   266
} jvmtiParamKind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   267
90ce3da70b43 Initial load
duke
parents:
diff changeset
   268
    /* Timer Kinds */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   269
90ce3da70b43 Initial load
duke
parents:
diff changeset
   270
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   271
    JVMTI_TIMER_USER_CPU = 30,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   272
    JVMTI_TIMER_TOTAL_CPU = 31,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   273
    JVMTI_TIMER_ELAPSED = 32
90ce3da70b43 Initial load
duke
parents:
diff changeset
   274
} jvmtiTimerKind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   275
90ce3da70b43 Initial load
duke
parents:
diff changeset
   276
    /* Phases of execution */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   277
90ce3da70b43 Initial load
duke
parents:
diff changeset
   278
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   279
    JVMTI_PHASE_ONLOAD = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   280
    JVMTI_PHASE_PRIMORDIAL = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   281
    JVMTI_PHASE_START = 6,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   282
    JVMTI_PHASE_LIVE = 4,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   283
    JVMTI_PHASE_DEAD = 8
90ce3da70b43 Initial load
duke
parents:
diff changeset
   284
} jvmtiPhase;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   285
90ce3da70b43 Initial load
duke
parents:
diff changeset
   286
    /* Version Interface Types */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   287
90ce3da70b43 Initial load
duke
parents:
diff changeset
   288
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   289
    JVMTI_VERSION_INTERFACE_JNI = 0x00000000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   290
    JVMTI_VERSION_INTERFACE_JVMTI = 0x30000000
90ce3da70b43 Initial load
duke
parents:
diff changeset
   291
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   292
90ce3da70b43 Initial load
duke
parents:
diff changeset
   293
    /* Version Masks */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   294
90ce3da70b43 Initial load
duke
parents:
diff changeset
   295
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   296
    JVMTI_VERSION_MASK_INTERFACE_TYPE = 0x70000000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   297
    JVMTI_VERSION_MASK_MAJOR = 0x0FFF0000,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   298
    JVMTI_VERSION_MASK_MINOR = 0x0000FF00,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   299
    JVMTI_VERSION_MASK_MICRO = 0x000000FF
90ce3da70b43 Initial load
duke
parents:
diff changeset
   300
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   301
90ce3da70b43 Initial load
duke
parents:
diff changeset
   302
    /* Version Shifts */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   303
90ce3da70b43 Initial load
duke
parents:
diff changeset
   304
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   305
    JVMTI_VERSION_SHIFT_MAJOR = 16,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   306
    JVMTI_VERSION_SHIFT_MINOR = 8,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   307
    JVMTI_VERSION_SHIFT_MICRO = 0
90ce3da70b43 Initial load
duke
parents:
diff changeset
   308
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   309
90ce3da70b43 Initial load
duke
parents:
diff changeset
   310
    /* Verbose Flag Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   311
90ce3da70b43 Initial load
duke
parents:
diff changeset
   312
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   313
    JVMTI_VERBOSE_OTHER = 0,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   314
    JVMTI_VERBOSE_GC = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   315
    JVMTI_VERBOSE_CLASS = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   316
    JVMTI_VERBOSE_JNI = 4
90ce3da70b43 Initial load
duke
parents:
diff changeset
   317
} jvmtiVerboseFlag;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   318
90ce3da70b43 Initial load
duke
parents:
diff changeset
   319
    /* JLocation Format Enumeration */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   320
90ce3da70b43 Initial load
duke
parents:
diff changeset
   321
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   322
    JVMTI_JLOCATION_JVMBCI = 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   323
    JVMTI_JLOCATION_MACHINEPC = 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   324
    JVMTI_JLOCATION_OTHER = 0
90ce3da70b43 Initial load
duke
parents:
diff changeset
   325
} jvmtiJlocationFormat;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   326
90ce3da70b43 Initial load
duke
parents:
diff changeset
   327
    /* Resource Exhaustion Flags */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   328
90ce3da70b43 Initial load
duke
parents:
diff changeset
   329
enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   330
    JVMTI_RESOURCE_EXHAUSTED_OOM_ERROR = 0x0001,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   331
    JVMTI_RESOURCE_EXHAUSTED_JAVA_HEAP = 0x0002,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   332
    JVMTI_RESOURCE_EXHAUSTED_THREADS = 0x0004
90ce3da70b43 Initial load
duke
parents:
diff changeset
   333
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   334
90ce3da70b43 Initial load
duke
parents:
diff changeset
   335
    /* Errors */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   336
90ce3da70b43 Initial load
duke
parents:
diff changeset
   337
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   338
    JVMTI_ERROR_NONE = 0,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   339
    JVMTI_ERROR_INVALID_THREAD = 10,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   340
    JVMTI_ERROR_INVALID_THREAD_GROUP = 11,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   341
    JVMTI_ERROR_INVALID_PRIORITY = 12,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   342
    JVMTI_ERROR_THREAD_NOT_SUSPENDED = 13,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   343
    JVMTI_ERROR_THREAD_SUSPENDED = 14,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   344
    JVMTI_ERROR_THREAD_NOT_ALIVE = 15,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   345
    JVMTI_ERROR_INVALID_OBJECT = 20,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   346
    JVMTI_ERROR_INVALID_CLASS = 21,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   347
    JVMTI_ERROR_CLASS_NOT_PREPARED = 22,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   348
    JVMTI_ERROR_INVALID_METHODID = 23,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   349
    JVMTI_ERROR_INVALID_LOCATION = 24,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   350
    JVMTI_ERROR_INVALID_FIELDID = 25,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   351
    JVMTI_ERROR_NO_MORE_FRAMES = 31,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   352
    JVMTI_ERROR_OPAQUE_FRAME = 32,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   353
    JVMTI_ERROR_TYPE_MISMATCH = 34,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   354
    JVMTI_ERROR_INVALID_SLOT = 35,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   355
    JVMTI_ERROR_DUPLICATE = 40,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   356
    JVMTI_ERROR_NOT_FOUND = 41,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   357
    JVMTI_ERROR_INVALID_MONITOR = 50,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   358
    JVMTI_ERROR_NOT_MONITOR_OWNER = 51,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   359
    JVMTI_ERROR_INTERRUPT = 52,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   360
    JVMTI_ERROR_INVALID_CLASS_FORMAT = 60,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   361
    JVMTI_ERROR_CIRCULAR_CLASS_DEFINITION = 61,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   362
    JVMTI_ERROR_FAILS_VERIFICATION = 62,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   363
    JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_ADDED = 63,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   364
    JVMTI_ERROR_UNSUPPORTED_REDEFINITION_SCHEMA_CHANGED = 64,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   365
    JVMTI_ERROR_INVALID_TYPESTATE = 65,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   366
    JVMTI_ERROR_UNSUPPORTED_REDEFINITION_HIERARCHY_CHANGED = 66,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   367
    JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_DELETED = 67,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   368
    JVMTI_ERROR_UNSUPPORTED_VERSION = 68,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   369
    JVMTI_ERROR_NAMES_DONT_MATCH = 69,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   370
    JVMTI_ERROR_UNSUPPORTED_REDEFINITION_CLASS_MODIFIERS_CHANGED = 70,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   371
    JVMTI_ERROR_UNSUPPORTED_REDEFINITION_METHOD_MODIFIERS_CHANGED = 71,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   372
    JVMTI_ERROR_UNMODIFIABLE_CLASS = 79,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   373
    JVMTI_ERROR_NOT_AVAILABLE = 98,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   374
    JVMTI_ERROR_MUST_POSSESS_CAPABILITY = 99,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   375
    JVMTI_ERROR_NULL_POINTER = 100,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   376
    JVMTI_ERROR_ABSENT_INFORMATION = 101,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   377
    JVMTI_ERROR_INVALID_EVENT_TYPE = 102,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   378
    JVMTI_ERROR_ILLEGAL_ARGUMENT = 103,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   379
    JVMTI_ERROR_NATIVE_METHOD = 104,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   380
    JVMTI_ERROR_CLASS_LOADER_UNSUPPORTED = 106,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   381
    JVMTI_ERROR_OUT_OF_MEMORY = 110,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   382
    JVMTI_ERROR_ACCESS_DENIED = 111,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   383
    JVMTI_ERROR_WRONG_PHASE = 112,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   384
    JVMTI_ERROR_INTERNAL = 113,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   385
    JVMTI_ERROR_UNATTACHED_THREAD = 115,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   386
    JVMTI_ERROR_INVALID_ENVIRONMENT = 116,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   387
    JVMTI_ERROR_MAX = 116
90ce3da70b43 Initial load
duke
parents:
diff changeset
   388
} jvmtiError;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   389
90ce3da70b43 Initial load
duke
parents:
diff changeset
   390
    /* Event IDs */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   391
90ce3da70b43 Initial load
duke
parents:
diff changeset
   392
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   393
    JVMTI_MIN_EVENT_TYPE_VAL = 50,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   394
    JVMTI_EVENT_VM_INIT = 50,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   395
    JVMTI_EVENT_VM_DEATH = 51,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   396
    JVMTI_EVENT_THREAD_START = 52,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   397
    JVMTI_EVENT_THREAD_END = 53,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   398
    JVMTI_EVENT_CLASS_FILE_LOAD_HOOK = 54,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   399
    JVMTI_EVENT_CLASS_LOAD = 55,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   400
    JVMTI_EVENT_CLASS_PREPARE = 56,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   401
    JVMTI_EVENT_VM_START = 57,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   402
    JVMTI_EVENT_EXCEPTION = 58,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   403
    JVMTI_EVENT_EXCEPTION_CATCH = 59,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   404
    JVMTI_EVENT_SINGLE_STEP = 60,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   405
    JVMTI_EVENT_FRAME_POP = 61,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   406
    JVMTI_EVENT_BREAKPOINT = 62,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   407
    JVMTI_EVENT_FIELD_ACCESS = 63,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   408
    JVMTI_EVENT_FIELD_MODIFICATION = 64,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   409
    JVMTI_EVENT_METHOD_ENTRY = 65,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   410
    JVMTI_EVENT_METHOD_EXIT = 66,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   411
    JVMTI_EVENT_NATIVE_METHOD_BIND = 67,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   412
    JVMTI_EVENT_COMPILED_METHOD_LOAD = 68,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   413
    JVMTI_EVENT_COMPILED_METHOD_UNLOAD = 69,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   414
    JVMTI_EVENT_DYNAMIC_CODE_GENERATED = 70,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   415
    JVMTI_EVENT_DATA_DUMP_REQUEST = 71,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   416
    JVMTI_EVENT_MONITOR_WAIT = 73,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   417
    JVMTI_EVENT_MONITOR_WAITED = 74,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   418
    JVMTI_EVENT_MONITOR_CONTENDED_ENTER = 75,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   419
    JVMTI_EVENT_MONITOR_CONTENDED_ENTERED = 76,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   420
    JVMTI_EVENT_RESOURCE_EXHAUSTED = 80,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   421
    JVMTI_EVENT_GARBAGE_COLLECTION_START = 81,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   422
    JVMTI_EVENT_GARBAGE_COLLECTION_FINISH = 82,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   423
    JVMTI_EVENT_OBJECT_FREE = 83,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   424
    JVMTI_EVENT_VM_OBJECT_ALLOC = 84,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   425
    JVMTI_MAX_EVENT_TYPE_VAL = 84
90ce3da70b43 Initial load
duke
parents:
diff changeset
   426
} jvmtiEvent;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   427
90ce3da70b43 Initial load
duke
parents:
diff changeset
   428
90ce3da70b43 Initial load
duke
parents:
diff changeset
   429
    /* Pre-Declarations */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   430
struct _jvmtiThreadInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   431
typedef struct _jvmtiThreadInfo jvmtiThreadInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   432
struct _jvmtiMonitorStackDepthInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   433
typedef struct _jvmtiMonitorStackDepthInfo jvmtiMonitorStackDepthInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   434
struct _jvmtiThreadGroupInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   435
typedef struct _jvmtiThreadGroupInfo jvmtiThreadGroupInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   436
struct _jvmtiFrameInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   437
typedef struct _jvmtiFrameInfo jvmtiFrameInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   438
struct _jvmtiStackInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   439
typedef struct _jvmtiStackInfo jvmtiStackInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   440
struct _jvmtiHeapReferenceInfoField;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   441
typedef struct _jvmtiHeapReferenceInfoField jvmtiHeapReferenceInfoField;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   442
struct _jvmtiHeapReferenceInfoArray;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   443
typedef struct _jvmtiHeapReferenceInfoArray jvmtiHeapReferenceInfoArray;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   444
struct _jvmtiHeapReferenceInfoConstantPool;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   445
typedef struct _jvmtiHeapReferenceInfoConstantPool jvmtiHeapReferenceInfoConstantPool;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   446
struct _jvmtiHeapReferenceInfoStackLocal;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   447
typedef struct _jvmtiHeapReferenceInfoStackLocal jvmtiHeapReferenceInfoStackLocal;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   448
struct _jvmtiHeapReferenceInfoJniLocal;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   449
typedef struct _jvmtiHeapReferenceInfoJniLocal jvmtiHeapReferenceInfoJniLocal;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   450
struct _jvmtiHeapReferenceInfoReserved;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   451
typedef struct _jvmtiHeapReferenceInfoReserved jvmtiHeapReferenceInfoReserved;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   452
union _jvmtiHeapReferenceInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   453
typedef union _jvmtiHeapReferenceInfo jvmtiHeapReferenceInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   454
struct _jvmtiHeapCallbacks;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   455
typedef struct _jvmtiHeapCallbacks jvmtiHeapCallbacks;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   456
struct _jvmtiClassDefinition;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   457
typedef struct _jvmtiClassDefinition jvmtiClassDefinition;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   458
struct _jvmtiMonitorUsage;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   459
typedef struct _jvmtiMonitorUsage jvmtiMonitorUsage;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   460
struct _jvmtiLineNumberEntry;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   461
typedef struct _jvmtiLineNumberEntry jvmtiLineNumberEntry;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   462
struct _jvmtiLocalVariableEntry;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   463
typedef struct _jvmtiLocalVariableEntry jvmtiLocalVariableEntry;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   464
struct _jvmtiParamInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   465
typedef struct _jvmtiParamInfo jvmtiParamInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   466
struct _jvmtiExtensionFunctionInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   467
typedef struct _jvmtiExtensionFunctionInfo jvmtiExtensionFunctionInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   468
struct _jvmtiExtensionEventInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   469
typedef struct _jvmtiExtensionEventInfo jvmtiExtensionEventInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   470
struct _jvmtiTimerInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   471
typedef struct _jvmtiTimerInfo jvmtiTimerInfo;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   472
struct _jvmtiAddrLocationMap;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   473
typedef struct _jvmtiAddrLocationMap jvmtiAddrLocationMap;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   474
90ce3da70b43 Initial load
duke
parents:
diff changeset
   475
    /* Function Types */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   476
90ce3da70b43 Initial load
duke
parents:
diff changeset
   477
typedef void (JNICALL *jvmtiStartFunction)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   478
    (jvmtiEnv* jvmti_env, JNIEnv* jni_env, void* arg);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   479
90ce3da70b43 Initial load
duke
parents:
diff changeset
   480
typedef jint (JNICALL *jvmtiHeapIterationCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   481
    (jlong class_tag, jlong size, jlong* tag_ptr, jint length, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   482
90ce3da70b43 Initial load
duke
parents:
diff changeset
   483
typedef jint (JNICALL *jvmtiHeapReferenceCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   484
    (jvmtiHeapReferenceKind reference_kind, const jvmtiHeapReferenceInfo* reference_info, jlong class_tag, jlong referrer_class_tag, jlong size, jlong* tag_ptr, jlong* referrer_tag_ptr, jint length, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   485
90ce3da70b43 Initial load
duke
parents:
diff changeset
   486
typedef jint (JNICALL *jvmtiPrimitiveFieldCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   487
    (jvmtiHeapReferenceKind kind, const jvmtiHeapReferenceInfo* info, jlong object_class_tag, jlong* object_tag_ptr, jvalue value, jvmtiPrimitiveType value_type, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   488
90ce3da70b43 Initial load
duke
parents:
diff changeset
   489
typedef jint (JNICALL *jvmtiArrayPrimitiveValueCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   490
    (jlong class_tag, jlong size, jlong* tag_ptr, jint element_count, jvmtiPrimitiveType element_type, const void* elements, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   491
90ce3da70b43 Initial load
duke
parents:
diff changeset
   492
typedef jint (JNICALL *jvmtiStringPrimitiveValueCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   493
    (jlong class_tag, jlong size, jlong* tag_ptr, const jchar* value, jint value_length, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   494
90ce3da70b43 Initial load
duke
parents:
diff changeset
   495
typedef jint (JNICALL *jvmtiReservedCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   496
    ();
90ce3da70b43 Initial load
duke
parents:
diff changeset
   497
90ce3da70b43 Initial load
duke
parents:
diff changeset
   498
typedef jvmtiIterationControl (JNICALL *jvmtiHeapObjectCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   499
    (jlong class_tag, jlong size, jlong* tag_ptr, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   500
90ce3da70b43 Initial load
duke
parents:
diff changeset
   501
typedef jvmtiIterationControl (JNICALL *jvmtiHeapRootCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   502
    (jvmtiHeapRootKind root_kind, jlong class_tag, jlong size, jlong* tag_ptr, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   503
90ce3da70b43 Initial load
duke
parents:
diff changeset
   504
typedef jvmtiIterationControl (JNICALL *jvmtiStackReferenceCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   505
    (jvmtiHeapRootKind root_kind, jlong class_tag, jlong size, jlong* tag_ptr, jlong thread_tag, jint depth, jmethodID method, jint slot, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   506
90ce3da70b43 Initial load
duke
parents:
diff changeset
   507
typedef jvmtiIterationControl (JNICALL *jvmtiObjectReferenceCallback)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   508
    (jvmtiObjectReferenceKind reference_kind, jlong class_tag, jlong size, jlong* tag_ptr, jlong referrer_tag, jint referrer_index, void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   509
90ce3da70b43 Initial load
duke
parents:
diff changeset
   510
typedef jvmtiError (JNICALL *jvmtiExtensionFunction)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   511
    (jvmtiEnv* jvmti_env,  ...);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   512
90ce3da70b43 Initial load
duke
parents:
diff changeset
   513
typedef void (JNICALL *jvmtiExtensionEvent)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   514
    (jvmtiEnv* jvmti_env,  ...);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   515
90ce3da70b43 Initial load
duke
parents:
diff changeset
   516
90ce3da70b43 Initial load
duke
parents:
diff changeset
   517
    /* Structure Types */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   518
struct _jvmtiThreadInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   519
    char* name;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   520
    jint priority;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   521
    jboolean is_daemon;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   522
    jthreadGroup thread_group;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   523
    jobject context_class_loader;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   524
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   525
struct _jvmtiMonitorStackDepthInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   526
    jobject monitor;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   527
    jint stack_depth;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   528
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   529
struct _jvmtiThreadGroupInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   530
    jthreadGroup parent;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   531
    char* name;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   532
    jint max_priority;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   533
    jboolean is_daemon;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   534
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   535
struct _jvmtiFrameInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   536
    jmethodID method;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   537
    jlocation location;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   538
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   539
struct _jvmtiStackInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   540
    jthread thread;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   541
    jint state;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   542
    jvmtiFrameInfo* frame_buffer;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   543
    jint frame_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   544
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   545
struct _jvmtiHeapReferenceInfoField {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   546
    jint index;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   547
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   548
struct _jvmtiHeapReferenceInfoArray {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   549
    jint index;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   550
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   551
struct _jvmtiHeapReferenceInfoConstantPool {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   552
    jint index;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   553
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   554
struct _jvmtiHeapReferenceInfoStackLocal {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   555
    jlong thread_tag;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   556
    jlong thread_id;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   557
    jint depth;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   558
    jmethodID method;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   559
    jlocation location;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   560
    jint slot;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   561
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   562
struct _jvmtiHeapReferenceInfoJniLocal {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   563
    jlong thread_tag;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   564
    jlong thread_id;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   565
    jint depth;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   566
    jmethodID method;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   567
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   568
struct _jvmtiHeapReferenceInfoReserved {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   569
    jlong reserved1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   570
    jlong reserved2;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   571
    jlong reserved3;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   572
    jlong reserved4;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   573
    jlong reserved5;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   574
    jlong reserved6;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   575
    jlong reserved7;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   576
    jlong reserved8;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   577
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   578
union _jvmtiHeapReferenceInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   579
    jvmtiHeapReferenceInfoField field;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   580
    jvmtiHeapReferenceInfoArray array;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   581
    jvmtiHeapReferenceInfoConstantPool constant_pool;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   582
    jvmtiHeapReferenceInfoStackLocal stack_local;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   583
    jvmtiHeapReferenceInfoJniLocal jni_local;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   584
    jvmtiHeapReferenceInfoReserved other;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   585
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   586
struct _jvmtiHeapCallbacks {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   587
    jvmtiHeapIterationCallback heap_iteration_callback;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   588
    jvmtiHeapReferenceCallback heap_reference_callback;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   589
    jvmtiPrimitiveFieldCallback primitive_field_callback;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   590
    jvmtiArrayPrimitiveValueCallback array_primitive_value_callback;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   591
    jvmtiStringPrimitiveValueCallback string_primitive_value_callback;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   592
    jvmtiReservedCallback reserved5;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   593
    jvmtiReservedCallback reserved6;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   594
    jvmtiReservedCallback reserved7;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   595
    jvmtiReservedCallback reserved8;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   596
    jvmtiReservedCallback reserved9;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   597
    jvmtiReservedCallback reserved10;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   598
    jvmtiReservedCallback reserved11;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   599
    jvmtiReservedCallback reserved12;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   600
    jvmtiReservedCallback reserved13;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   601
    jvmtiReservedCallback reserved14;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   602
    jvmtiReservedCallback reserved15;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   603
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   604
struct _jvmtiClassDefinition {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   605
    jclass klass;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   606
    jint class_byte_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   607
    const unsigned char* class_bytes;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   608
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   609
struct _jvmtiMonitorUsage {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   610
    jthread owner;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   611
    jint entry_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   612
    jint waiter_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   613
    jthread* waiters;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   614
    jint notify_waiter_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   615
    jthread* notify_waiters;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   616
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   617
struct _jvmtiLineNumberEntry {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   618
    jlocation start_location;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   619
    jint line_number;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   620
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   621
struct _jvmtiLocalVariableEntry {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   622
    jlocation start_location;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   623
    jint length;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   624
    char* name;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   625
    char* signature;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   626
    char* generic_signature;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   627
    jint slot;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   628
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   629
struct _jvmtiParamInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   630
    char* name;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   631
    jvmtiParamKind kind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   632
    jvmtiParamTypes base_type;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   633
    jboolean null_ok;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   634
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   635
struct _jvmtiExtensionFunctionInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   636
    jvmtiExtensionFunction func;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   637
    char* id;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   638
    char* short_description;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   639
    jint param_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   640
    jvmtiParamInfo* params;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   641
    jint error_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   642
    jvmtiError* errors;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   643
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   644
struct _jvmtiExtensionEventInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   645
    jint extension_event_index;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   646
    char* id;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   647
    char* short_description;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   648
    jint param_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   649
    jvmtiParamInfo* params;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   650
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   651
struct _jvmtiTimerInfo {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   652
    jlong max_value;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   653
    jboolean may_skip_forward;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   654
    jboolean may_skip_backward;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   655
    jvmtiTimerKind kind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   656
    jlong reserved1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   657
    jlong reserved2;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   658
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   659
struct _jvmtiAddrLocationMap {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   660
    const void* start_address;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   661
    jlocation location;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   662
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   663
90ce3da70b43 Initial load
duke
parents:
diff changeset
   664
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   665
    unsigned int can_tag_objects : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   666
    unsigned int can_generate_field_modification_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   667
    unsigned int can_generate_field_access_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   668
    unsigned int can_get_bytecodes : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   669
    unsigned int can_get_synthetic_attribute : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   670
    unsigned int can_get_owned_monitor_info : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   671
    unsigned int can_get_current_contended_monitor : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   672
    unsigned int can_get_monitor_info : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   673
    unsigned int can_pop_frame : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   674
    unsigned int can_redefine_classes : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   675
    unsigned int can_signal_thread : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   676
    unsigned int can_get_source_file_name : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   677
    unsigned int can_get_line_numbers : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   678
    unsigned int can_get_source_debug_extension : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   679
    unsigned int can_access_local_variables : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   680
    unsigned int can_maintain_original_method_order : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   681
    unsigned int can_generate_single_step_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   682
    unsigned int can_generate_exception_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   683
    unsigned int can_generate_frame_pop_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   684
    unsigned int can_generate_breakpoint_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   685
    unsigned int can_suspend : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   686
    unsigned int can_redefine_any_class : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   687
    unsigned int can_get_current_thread_cpu_time : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   688
    unsigned int can_get_thread_cpu_time : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   689
    unsigned int can_generate_method_entry_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   690
    unsigned int can_generate_method_exit_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   691
    unsigned int can_generate_all_class_hook_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   692
    unsigned int can_generate_compiled_method_load_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   693
    unsigned int can_generate_monitor_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   694
    unsigned int can_generate_vm_object_alloc_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   695
    unsigned int can_generate_native_method_bind_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   696
    unsigned int can_generate_garbage_collection_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   697
    unsigned int can_generate_object_free_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   698
    unsigned int can_force_early_return : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   699
    unsigned int can_get_owned_monitor_stack_depth_info : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   700
    unsigned int can_get_constant_pool : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   701
    unsigned int can_set_native_method_prefix : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   702
    unsigned int can_retransform_classes : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   703
    unsigned int can_retransform_any_class : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   704
    unsigned int can_generate_resource_exhaustion_heap_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   705
    unsigned int can_generate_resource_exhaustion_threads_events : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   706
    unsigned int : 7;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   707
    unsigned int : 16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   708
    unsigned int : 16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   709
    unsigned int : 16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   710
    unsigned int : 16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   711
    unsigned int : 16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   712
} jvmtiCapabilities;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   713
90ce3da70b43 Initial load
duke
parents:
diff changeset
   714
90ce3da70b43 Initial load
duke
parents:
diff changeset
   715
    /* Event Definitions */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   716
90ce3da70b43 Initial load
duke
parents:
diff changeset
   717
typedef void (JNICALL *jvmtiEventReserved)(void);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   718
90ce3da70b43 Initial load
duke
parents:
diff changeset
   719
90ce3da70b43 Initial load
duke
parents:
diff changeset
   720
typedef void (JNICALL *jvmtiEventBreakpoint)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   721
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   722
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   723
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   724
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   725
     jlocation location);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   726
90ce3da70b43 Initial load
duke
parents:
diff changeset
   727
typedef void (JNICALL *jvmtiEventClassFileLoadHook)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   728
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   729
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   730
     jclass class_being_redefined,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   731
     jobject loader,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   732
     const char* name,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   733
     jobject protection_domain,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   734
     jint class_data_len,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   735
     const unsigned char* class_data,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   736
     jint* new_class_data_len,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   737
     unsigned char** new_class_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   738
90ce3da70b43 Initial load
duke
parents:
diff changeset
   739
typedef void (JNICALL *jvmtiEventClassLoad)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   740
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   741
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   742
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   743
     jclass klass);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   744
90ce3da70b43 Initial load
duke
parents:
diff changeset
   745
typedef void (JNICALL *jvmtiEventClassPrepare)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   746
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   747
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   748
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   749
     jclass klass);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   750
90ce3da70b43 Initial load
duke
parents:
diff changeset
   751
typedef void (JNICALL *jvmtiEventCompiledMethodLoad)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   752
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   753
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   754
     jint code_size,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   755
     const void* code_addr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   756
     jint map_length,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   757
     const jvmtiAddrLocationMap* map,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   758
     const void* compile_info);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   759
90ce3da70b43 Initial load
duke
parents:
diff changeset
   760
typedef void (JNICALL *jvmtiEventCompiledMethodUnload)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   761
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   762
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   763
     const void* code_addr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   764
90ce3da70b43 Initial load
duke
parents:
diff changeset
   765
typedef void (JNICALL *jvmtiEventDataDumpRequest)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   766
    (jvmtiEnv *jvmti_env);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   767
90ce3da70b43 Initial load
duke
parents:
diff changeset
   768
typedef void (JNICALL *jvmtiEventDynamicCodeGenerated)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   769
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   770
     const char* name,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   771
     const void* address,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   772
     jint length);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   773
90ce3da70b43 Initial load
duke
parents:
diff changeset
   774
typedef void (JNICALL *jvmtiEventException)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   775
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   776
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   777
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   778
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   779
     jlocation location,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   780
     jobject exception,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   781
     jmethodID catch_method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   782
     jlocation catch_location);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   783
90ce3da70b43 Initial load
duke
parents:
diff changeset
   784
typedef void (JNICALL *jvmtiEventExceptionCatch)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   785
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   786
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   787
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   788
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   789
     jlocation location,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   790
     jobject exception);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   791
90ce3da70b43 Initial load
duke
parents:
diff changeset
   792
typedef void (JNICALL *jvmtiEventFieldAccess)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   793
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   794
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   795
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   796
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   797
     jlocation location,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   798
     jclass field_klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   799
     jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   800
     jfieldID field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   801
90ce3da70b43 Initial load
duke
parents:
diff changeset
   802
typedef void (JNICALL *jvmtiEventFieldModification)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   803
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   804
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   805
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   806
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   807
     jlocation location,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   808
     jclass field_klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   809
     jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   810
     jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   811
     char signature_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   812
     jvalue new_value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   813
90ce3da70b43 Initial load
duke
parents:
diff changeset
   814
typedef void (JNICALL *jvmtiEventFramePop)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   815
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   816
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   817
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   818
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   819
     jboolean was_popped_by_exception);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   820
90ce3da70b43 Initial load
duke
parents:
diff changeset
   821
typedef void (JNICALL *jvmtiEventGarbageCollectionFinish)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   822
    (jvmtiEnv *jvmti_env);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   823
90ce3da70b43 Initial load
duke
parents:
diff changeset
   824
typedef void (JNICALL *jvmtiEventGarbageCollectionStart)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   825
    (jvmtiEnv *jvmti_env);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   826
90ce3da70b43 Initial load
duke
parents:
diff changeset
   827
typedef void (JNICALL *jvmtiEventMethodEntry)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   828
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   829
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   830
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   831
     jmethodID method);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   832
90ce3da70b43 Initial load
duke
parents:
diff changeset
   833
typedef void (JNICALL *jvmtiEventMethodExit)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   834
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   835
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   836
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   837
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   838
     jboolean was_popped_by_exception,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   839
     jvalue return_value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   840
90ce3da70b43 Initial load
duke
parents:
diff changeset
   841
typedef void (JNICALL *jvmtiEventMonitorContendedEnter)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   842
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   843
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   844
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   845
     jobject object);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   846
90ce3da70b43 Initial load
duke
parents:
diff changeset
   847
typedef void (JNICALL *jvmtiEventMonitorContendedEntered)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   848
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   849
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   850
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   851
     jobject object);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   852
90ce3da70b43 Initial load
duke
parents:
diff changeset
   853
typedef void (JNICALL *jvmtiEventMonitorWait)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   854
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   855
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   856
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   857
     jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   858
     jlong timeout);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   859
90ce3da70b43 Initial load
duke
parents:
diff changeset
   860
typedef void (JNICALL *jvmtiEventMonitorWaited)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   861
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   862
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   863
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   864
     jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   865
     jboolean timed_out);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   866
90ce3da70b43 Initial load
duke
parents:
diff changeset
   867
typedef void (JNICALL *jvmtiEventNativeMethodBind)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   868
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   869
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   870
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   871
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   872
     void* address,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   873
     void** new_address_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   874
90ce3da70b43 Initial load
duke
parents:
diff changeset
   875
typedef void (JNICALL *jvmtiEventObjectFree)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   876
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   877
     jlong tag);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   878
90ce3da70b43 Initial load
duke
parents:
diff changeset
   879
typedef void (JNICALL *jvmtiEventResourceExhausted)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   880
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   881
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   882
     jint flags,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   883
     const void* reserved,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   884
     const char* description);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   885
90ce3da70b43 Initial load
duke
parents:
diff changeset
   886
typedef void (JNICALL *jvmtiEventSingleStep)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   887
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   888
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   889
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   890
     jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   891
     jlocation location);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   892
90ce3da70b43 Initial load
duke
parents:
diff changeset
   893
typedef void (JNICALL *jvmtiEventThreadEnd)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   894
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   895
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   896
     jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   897
90ce3da70b43 Initial load
duke
parents:
diff changeset
   898
typedef void (JNICALL *jvmtiEventThreadStart)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   899
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   900
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   901
     jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   902
90ce3da70b43 Initial load
duke
parents:
diff changeset
   903
typedef void (JNICALL *jvmtiEventVMDeath)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   904
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   905
     JNIEnv* jni_env);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   906
90ce3da70b43 Initial load
duke
parents:
diff changeset
   907
typedef void (JNICALL *jvmtiEventVMInit)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   908
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   909
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   910
     jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   911
90ce3da70b43 Initial load
duke
parents:
diff changeset
   912
typedef void (JNICALL *jvmtiEventVMObjectAlloc)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   913
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   914
     JNIEnv* jni_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   915
     jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   916
     jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   917
     jclass object_klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   918
     jlong size);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   919
90ce3da70b43 Initial load
duke
parents:
diff changeset
   920
typedef void (JNICALL *jvmtiEventVMStart)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   921
    (jvmtiEnv *jvmti_env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   922
     JNIEnv* jni_env);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   923
90ce3da70b43 Initial load
duke
parents:
diff changeset
   924
    /* Event Callback Structure */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   925
90ce3da70b43 Initial load
duke
parents:
diff changeset
   926
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   927
                              /*   50 : VM Initialization Event */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   928
    jvmtiEventVMInit VMInit;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   929
                              /*   51 : VM Death Event */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   930
    jvmtiEventVMDeath VMDeath;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   931
                              /*   52 : Thread Start */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   932
    jvmtiEventThreadStart ThreadStart;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   933
                              /*   53 : Thread End */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   934
    jvmtiEventThreadEnd ThreadEnd;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   935
                              /*   54 : Class File Load Hook */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   936
    jvmtiEventClassFileLoadHook ClassFileLoadHook;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   937
                              /*   55 : Class Load */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   938
    jvmtiEventClassLoad ClassLoad;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   939
                              /*   56 : Class Prepare */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   940
    jvmtiEventClassPrepare ClassPrepare;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   941
                              /*   57 : VM Start Event */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   942
    jvmtiEventVMStart VMStart;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   943
                              /*   58 : Exception */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   944
    jvmtiEventException Exception;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   945
                              /*   59 : Exception Catch */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   946
    jvmtiEventExceptionCatch ExceptionCatch;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   947
                              /*   60 : Single Step */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   948
    jvmtiEventSingleStep SingleStep;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   949
                              /*   61 : Frame Pop */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   950
    jvmtiEventFramePop FramePop;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   951
                              /*   62 : Breakpoint */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   952
    jvmtiEventBreakpoint Breakpoint;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   953
                              /*   63 : Field Access */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   954
    jvmtiEventFieldAccess FieldAccess;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   955
                              /*   64 : Field Modification */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   956
    jvmtiEventFieldModification FieldModification;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   957
                              /*   65 : Method Entry */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   958
    jvmtiEventMethodEntry MethodEntry;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   959
                              /*   66 : Method Exit */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   960
    jvmtiEventMethodExit MethodExit;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   961
                              /*   67 : Native Method Bind */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   962
    jvmtiEventNativeMethodBind NativeMethodBind;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   963
                              /*   68 : Compiled Method Load */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   964
    jvmtiEventCompiledMethodLoad CompiledMethodLoad;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   965
                              /*   69 : Compiled Method Unload */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   966
    jvmtiEventCompiledMethodUnload CompiledMethodUnload;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   967
                              /*   70 : Dynamic Code Generated */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   968
    jvmtiEventDynamicCodeGenerated DynamicCodeGenerated;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   969
                              /*   71 : Data Dump Request */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   970
    jvmtiEventDataDumpRequest DataDumpRequest;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   971
                              /*   72 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   972
    jvmtiEventReserved reserved72;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   973
                              /*   73 : Monitor Wait */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   974
    jvmtiEventMonitorWait MonitorWait;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   975
                              /*   74 : Monitor Waited */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   976
    jvmtiEventMonitorWaited MonitorWaited;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   977
                              /*   75 : Monitor Contended Enter */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   978
    jvmtiEventMonitorContendedEnter MonitorContendedEnter;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   979
                              /*   76 : Monitor Contended Entered */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   980
    jvmtiEventMonitorContendedEntered MonitorContendedEntered;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   981
                              /*   77 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   982
    jvmtiEventReserved reserved77;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   983
                              /*   78 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   984
    jvmtiEventReserved reserved78;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   985
                              /*   79 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   986
    jvmtiEventReserved reserved79;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   987
                              /*   80 : Resource Exhausted */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   988
    jvmtiEventResourceExhausted ResourceExhausted;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   989
                              /*   81 : Garbage Collection Start */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   990
    jvmtiEventGarbageCollectionStart GarbageCollectionStart;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   991
                              /*   82 : Garbage Collection Finish */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   992
    jvmtiEventGarbageCollectionFinish GarbageCollectionFinish;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   993
                              /*   83 : Object Free */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   994
    jvmtiEventObjectFree ObjectFree;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   995
                              /*   84 : VM Object Allocation */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   996
    jvmtiEventVMObjectAlloc VMObjectAlloc;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   997
} jvmtiEventCallbacks;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   998
90ce3da70b43 Initial load
duke
parents:
diff changeset
   999
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1000
    /* Function Interface */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1001
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1002
typedef struct jvmtiInterface_1_ {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1003
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1004
  /*   1 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1005
  void *reserved1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1006
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1007
  /*   2 : Set Event Notification Mode */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1008
  jvmtiError (JNICALL *SetEventNotificationMode) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1009
    jvmtiEventMode mode,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1010
    jvmtiEvent event_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1011
    jthread event_thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1012
     ...);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1013
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1014
  /*   3 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1015
  void *reserved3;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1016
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1017
  /*   4 : Get All Threads */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1018
  jvmtiError (JNICALL *GetAllThreads) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1019
    jint* threads_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1020
    jthread** threads_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1021
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1022
  /*   5 : Suspend Thread */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1023
  jvmtiError (JNICALL *SuspendThread) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1024
    jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1025
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1026
  /*   6 : Resume Thread */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1027
  jvmtiError (JNICALL *ResumeThread) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1028
    jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1029
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1030
  /*   7 : Stop Thread */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1031
  jvmtiError (JNICALL *StopThread) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1032
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1033
    jobject exception);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1034
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1035
  /*   8 : Interrupt Thread */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1036
  jvmtiError (JNICALL *InterruptThread) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1037
    jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1038
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1039
  /*   9 : Get Thread Info */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1040
  jvmtiError (JNICALL *GetThreadInfo) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1041
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1042
    jvmtiThreadInfo* info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1043
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1044
  /*   10 : Get Owned Monitor Info */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1045
  jvmtiError (JNICALL *GetOwnedMonitorInfo) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1046
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1047
    jint* owned_monitor_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1048
    jobject** owned_monitors_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1049
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1050
  /*   11 : Get Current Contended Monitor */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1051
  jvmtiError (JNICALL *GetCurrentContendedMonitor) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1052
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1053
    jobject* monitor_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1054
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1055
  /*   12 : Run Agent Thread */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1056
  jvmtiError (JNICALL *RunAgentThread) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1057
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1058
    jvmtiStartFunction proc,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1059
    const void* arg,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1060
    jint priority);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1061
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1062
  /*   13 : Get Top Thread Groups */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1063
  jvmtiError (JNICALL *GetTopThreadGroups) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1064
    jint* group_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1065
    jthreadGroup** groups_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1066
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1067
  /*   14 : Get Thread Group Info */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1068
  jvmtiError (JNICALL *GetThreadGroupInfo) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1069
    jthreadGroup group,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1070
    jvmtiThreadGroupInfo* info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1071
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1072
  /*   15 : Get Thread Group Children */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1073
  jvmtiError (JNICALL *GetThreadGroupChildren) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1074
    jthreadGroup group,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1075
    jint* thread_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1076
    jthread** threads_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1077
    jint* group_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1078
    jthreadGroup** groups_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1079
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1080
  /*   16 : Get Frame Count */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1081
  jvmtiError (JNICALL *GetFrameCount) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1082
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1083
    jint* count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1084
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1085
  /*   17 : Get Thread State */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1086
  jvmtiError (JNICALL *GetThreadState) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1087
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1088
    jint* thread_state_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1089
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1090
  /*   18 : Get Current Thread */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1091
  jvmtiError (JNICALL *GetCurrentThread) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1092
    jthread* thread_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1093
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1094
  /*   19 : Get Frame Location */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1095
  jvmtiError (JNICALL *GetFrameLocation) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1096
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1097
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1098
    jmethodID* method_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1099
    jlocation* location_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1100
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1101
  /*   20 : Notify Frame Pop */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1102
  jvmtiError (JNICALL *NotifyFramePop) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1103
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1104
    jint depth);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1105
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1106
  /*   21 : Get Local Variable - Object */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1107
  jvmtiError (JNICALL *GetLocalObject) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1108
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1109
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1110
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1111
    jobject* value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1112
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1113
  /*   22 : Get Local Variable - Int */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1114
  jvmtiError (JNICALL *GetLocalInt) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1115
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1116
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1117
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1118
    jint* value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1119
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1120
  /*   23 : Get Local Variable - Long */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1121
  jvmtiError (JNICALL *GetLocalLong) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1122
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1123
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1124
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1125
    jlong* value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1126
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1127
  /*   24 : Get Local Variable - Float */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1128
  jvmtiError (JNICALL *GetLocalFloat) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1129
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1130
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1131
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1132
    jfloat* value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1133
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1134
  /*   25 : Get Local Variable - Double */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1135
  jvmtiError (JNICALL *GetLocalDouble) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1136
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1137
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1138
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1139
    jdouble* value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1140
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1141
  /*   26 : Set Local Variable - Object */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1142
  jvmtiError (JNICALL *SetLocalObject) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1143
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1144
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1145
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1146
    jobject value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1147
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1148
  /*   27 : Set Local Variable - Int */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1149
  jvmtiError (JNICALL *SetLocalInt) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1150
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1151
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1152
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1153
    jint value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1154
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1155
  /*   28 : Set Local Variable - Long */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1156
  jvmtiError (JNICALL *SetLocalLong) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1157
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1158
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1159
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1160
    jlong value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1161
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1162
  /*   29 : Set Local Variable - Float */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1163
  jvmtiError (JNICALL *SetLocalFloat) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1164
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1165
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1166
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1167
    jfloat value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1168
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1169
  /*   30 : Set Local Variable - Double */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1170
  jvmtiError (JNICALL *SetLocalDouble) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1171
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1172
    jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1173
    jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1174
    jdouble value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1175
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1176
  /*   31 : Create Raw Monitor */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1177
  jvmtiError (JNICALL *CreateRawMonitor) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1178
    const char* name,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1179
    jrawMonitorID* monitor_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1180
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1181
  /*   32 : Destroy Raw Monitor */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1182
  jvmtiError (JNICALL *DestroyRawMonitor) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1183
    jrawMonitorID monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1184
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1185
  /*   33 : Raw Monitor Enter */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1186
  jvmtiError (JNICALL *RawMonitorEnter) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1187
    jrawMonitorID monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1188
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1189
  /*   34 : Raw Monitor Exit */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1190
  jvmtiError (JNICALL *RawMonitorExit) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1191
    jrawMonitorID monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1192
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1193
  /*   35 : Raw Monitor Wait */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1194
  jvmtiError (JNICALL *RawMonitorWait) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1195
    jrawMonitorID monitor,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1196
    jlong millis);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1197
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1198
  /*   36 : Raw Monitor Notify */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1199
  jvmtiError (JNICALL *RawMonitorNotify) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1200
    jrawMonitorID monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1201
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1202
  /*   37 : Raw Monitor Notify All */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1203
  jvmtiError (JNICALL *RawMonitorNotifyAll) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1204
    jrawMonitorID monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1205
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1206
  /*   38 : Set Breakpoint */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1207
  jvmtiError (JNICALL *SetBreakpoint) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1208
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1209
    jlocation location);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1210
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1211
  /*   39 : Clear Breakpoint */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1212
  jvmtiError (JNICALL *ClearBreakpoint) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1213
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1214
    jlocation location);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1215
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1216
  /*   40 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1217
  void *reserved40;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1218
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1219
  /*   41 : Set Field Access Watch */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1220
  jvmtiError (JNICALL *SetFieldAccessWatch) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1221
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1222
    jfieldID field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1223
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1224
  /*   42 : Clear Field Access Watch */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1225
  jvmtiError (JNICALL *ClearFieldAccessWatch) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1226
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1227
    jfieldID field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1228
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1229
  /*   43 : Set Field Modification Watch */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1230
  jvmtiError (JNICALL *SetFieldModificationWatch) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1231
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1232
    jfieldID field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1233
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1234
  /*   44 : Clear Field Modification Watch */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1235
  jvmtiError (JNICALL *ClearFieldModificationWatch) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1236
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1237
    jfieldID field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1238
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1239
  /*   45 : Is Modifiable Class */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1240
  jvmtiError (JNICALL *IsModifiableClass) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1241
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1242
    jboolean* is_modifiable_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1243
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1244
  /*   46 : Allocate */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1245
  jvmtiError (JNICALL *Allocate) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1246
    jlong size,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1247
    unsigned char** mem_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1248
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1249
  /*   47 : Deallocate */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1250
  jvmtiError (JNICALL *Deallocate) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1251
    unsigned char* mem);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1252
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1253
  /*   48 : Get Class Signature */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1254
  jvmtiError (JNICALL *GetClassSignature) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1255
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1256
    char** signature_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1257
    char** generic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1258
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1259
  /*   49 : Get Class Status */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1260
  jvmtiError (JNICALL *GetClassStatus) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1261
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1262
    jint* status_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1263
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1264
  /*   50 : Get Source File Name */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1265
  jvmtiError (JNICALL *GetSourceFileName) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1266
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1267
    char** source_name_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1268
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1269
  /*   51 : Get Class Modifiers */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1270
  jvmtiError (JNICALL *GetClassModifiers) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1271
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1272
    jint* modifiers_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1273
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1274
  /*   52 : Get Class Methods */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1275
  jvmtiError (JNICALL *GetClassMethods) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1276
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1277
    jint* method_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1278
    jmethodID** methods_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1279
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1280
  /*   53 : Get Class Fields */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1281
  jvmtiError (JNICALL *GetClassFields) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1282
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1283
    jint* field_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1284
    jfieldID** fields_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1285
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1286
  /*   54 : Get Implemented Interfaces */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1287
  jvmtiError (JNICALL *GetImplementedInterfaces) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1288
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1289
    jint* interface_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1290
    jclass** interfaces_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1291
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1292
  /*   55 : Is Interface */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1293
  jvmtiError (JNICALL *IsInterface) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1294
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1295
    jboolean* is_interface_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1296
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1297
  /*   56 : Is Array Class */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1298
  jvmtiError (JNICALL *IsArrayClass) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1299
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1300
    jboolean* is_array_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1301
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1302
  /*   57 : Get Class Loader */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1303
  jvmtiError (JNICALL *GetClassLoader) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1304
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1305
    jobject* classloader_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1306
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1307
  /*   58 : Get Object Hash Code */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1308
  jvmtiError (JNICALL *GetObjectHashCode) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1309
    jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1310
    jint* hash_code_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1311
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1312
  /*   59 : Get Object Monitor Usage */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1313
  jvmtiError (JNICALL *GetObjectMonitorUsage) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1314
    jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1315
    jvmtiMonitorUsage* info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1316
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1317
  /*   60 : Get Field Name (and Signature) */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1318
  jvmtiError (JNICALL *GetFieldName) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1319
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1320
    jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1321
    char** name_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1322
    char** signature_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1323
    char** generic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1324
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1325
  /*   61 : Get Field Declaring Class */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1326
  jvmtiError (JNICALL *GetFieldDeclaringClass) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1327
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1328
    jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1329
    jclass* declaring_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1330
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1331
  /*   62 : Get Field Modifiers */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1332
  jvmtiError (JNICALL *GetFieldModifiers) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1333
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1334
    jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1335
    jint* modifiers_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1336
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1337
  /*   63 : Is Field Synthetic */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1338
  jvmtiError (JNICALL *IsFieldSynthetic) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1339
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1340
    jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1341
    jboolean* is_synthetic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1342
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1343
  /*   64 : Get Method Name (and Signature) */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1344
  jvmtiError (JNICALL *GetMethodName) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1345
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1346
    char** name_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1347
    char** signature_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1348
    char** generic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1349
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1350
  /*   65 : Get Method Declaring Class */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1351
  jvmtiError (JNICALL *GetMethodDeclaringClass) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1352
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1353
    jclass* declaring_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1354
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1355
  /*   66 : Get Method Modifiers */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1356
  jvmtiError (JNICALL *GetMethodModifiers) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1357
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1358
    jint* modifiers_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1359
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1360
  /*   67 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1361
  void *reserved67;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1362
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1363
  /*   68 : Get Max Locals */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1364
  jvmtiError (JNICALL *GetMaxLocals) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1365
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1366
    jint* max_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1367
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1368
  /*   69 : Get Arguments Size */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1369
  jvmtiError (JNICALL *GetArgumentsSize) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1370
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1371
    jint* size_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1372
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1373
  /*   70 : Get Line Number Table */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1374
  jvmtiError (JNICALL *GetLineNumberTable) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1375
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1376
    jint* entry_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1377
    jvmtiLineNumberEntry** table_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1378
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1379
  /*   71 : Get Method Location */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1380
  jvmtiError (JNICALL *GetMethodLocation) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1381
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1382
    jlocation* start_location_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1383
    jlocation* end_location_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1384
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1385
  /*   72 : Get Local Variable Table */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1386
  jvmtiError (JNICALL *GetLocalVariableTable) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1387
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1388
    jint* entry_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1389
    jvmtiLocalVariableEntry** table_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1390
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1391
  /*   73 : Set Native Method Prefix */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1392
  jvmtiError (JNICALL *SetNativeMethodPrefix) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1393
    const char* prefix);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1394
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1395
  /*   74 : Set Native Method Prefixes */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1396
  jvmtiError (JNICALL *SetNativeMethodPrefixes) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1397
    jint prefix_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1398
    char** prefixes);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1399
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1400
  /*   75 : Get Bytecodes */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1401
  jvmtiError (JNICALL *GetBytecodes) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1402
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1403
    jint* bytecode_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1404
    unsigned char** bytecodes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1405
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1406
  /*   76 : Is Method Native */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1407
  jvmtiError (JNICALL *IsMethodNative) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1408
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1409
    jboolean* is_native_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1410
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1411
  /*   77 : Is Method Synthetic */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1412
  jvmtiError (JNICALL *IsMethodSynthetic) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1413
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1414
    jboolean* is_synthetic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1415
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1416
  /*   78 : Get Loaded Classes */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1417
  jvmtiError (JNICALL *GetLoadedClasses) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1418
    jint* class_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1419
    jclass** classes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1420
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1421
  /*   79 : Get Classloader Classes */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1422
  jvmtiError (JNICALL *GetClassLoaderClasses) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1423
    jobject initiating_loader,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1424
    jint* class_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1425
    jclass** classes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1426
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1427
  /*   80 : Pop Frame */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1428
  jvmtiError (JNICALL *PopFrame) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1429
    jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1430
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1431
  /*   81 : Force Early Return - Object */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1432
  jvmtiError (JNICALL *ForceEarlyReturnObject) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1433
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1434
    jobject value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1435
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1436
  /*   82 : Force Early Return - Int */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1437
  jvmtiError (JNICALL *ForceEarlyReturnInt) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1438
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1439
    jint value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1440
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1441
  /*   83 : Force Early Return - Long */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1442
  jvmtiError (JNICALL *ForceEarlyReturnLong) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1443
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1444
    jlong value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1445
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1446
  /*   84 : Force Early Return - Float */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1447
  jvmtiError (JNICALL *ForceEarlyReturnFloat) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1448
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1449
    jfloat value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1450
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1451
  /*   85 : Force Early Return - Double */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1452
  jvmtiError (JNICALL *ForceEarlyReturnDouble) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1453
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1454
    jdouble value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1455
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1456
  /*   86 : Force Early Return - Void */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1457
  jvmtiError (JNICALL *ForceEarlyReturnVoid) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1458
    jthread thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1459
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1460
  /*   87 : Redefine Classes */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1461
  jvmtiError (JNICALL *RedefineClasses) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1462
    jint class_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1463
    const jvmtiClassDefinition* class_definitions);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1464
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1465
  /*   88 : Get Version Number */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1466
  jvmtiError (JNICALL *GetVersionNumber) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1467
    jint* version_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1468
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1469
  /*   89 : Get Capabilities */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1470
  jvmtiError (JNICALL *GetCapabilities) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1471
    jvmtiCapabilities* capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1472
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1473
  /*   90 : Get Source Debug Extension */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1474
  jvmtiError (JNICALL *GetSourceDebugExtension) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1475
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1476
    char** source_debug_extension_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1477
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1478
  /*   91 : Is Method Obsolete */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1479
  jvmtiError (JNICALL *IsMethodObsolete) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1480
    jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1481
    jboolean* is_obsolete_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1482
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1483
  /*   92 : Suspend Thread List */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1484
  jvmtiError (JNICALL *SuspendThreadList) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1485
    jint request_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1486
    const jthread* request_list,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1487
    jvmtiError* results);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1488
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1489
  /*   93 : Resume Thread List */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1490
  jvmtiError (JNICALL *ResumeThreadList) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1491
    jint request_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1492
    const jthread* request_list,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1493
    jvmtiError* results);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1494
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1495
  /*   94 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1496
  void *reserved94;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1497
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1498
  /*   95 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1499
  void *reserved95;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1500
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1501
  /*   96 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1502
  void *reserved96;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1503
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1504
  /*   97 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1505
  void *reserved97;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1506
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1507
  /*   98 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1508
  void *reserved98;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1509
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1510
  /*   99 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1511
  void *reserved99;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1512
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1513
  /*   100 : Get All Stack Traces */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1514
  jvmtiError (JNICALL *GetAllStackTraces) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1515
    jint max_frame_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1516
    jvmtiStackInfo** stack_info_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1517
    jint* thread_count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1518
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1519
  /*   101 : Get Thread List Stack Traces */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1520
  jvmtiError (JNICALL *GetThreadListStackTraces) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1521
    jint thread_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1522
    const jthread* thread_list,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1523
    jint max_frame_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1524
    jvmtiStackInfo** stack_info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1525
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1526
  /*   102 : Get Thread Local Storage */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1527
  jvmtiError (JNICALL *GetThreadLocalStorage) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1528
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1529
    void** data_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1530
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1531
  /*   103 : Set Thread Local Storage */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1532
  jvmtiError (JNICALL *SetThreadLocalStorage) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1533
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1534
    const void* data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1535
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1536
  /*   104 : Get Stack Trace */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1537
  jvmtiError (JNICALL *GetStackTrace) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1538
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1539
    jint start_depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1540
    jint max_frame_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1541
    jvmtiFrameInfo* frame_buffer,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1542
    jint* count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1543
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1544
  /*   105 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1545
  void *reserved105;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1546
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1547
  /*   106 : Get Tag */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1548
  jvmtiError (JNICALL *GetTag) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1549
    jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1550
    jlong* tag_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1551
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1552
  /*   107 : Set Tag */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1553
  jvmtiError (JNICALL *SetTag) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1554
    jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1555
    jlong tag);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1556
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1557
  /*   108 : Force Garbage Collection */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1558
  jvmtiError (JNICALL *ForceGarbageCollection) (jvmtiEnv* env);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1559
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1560
  /*   109 : Iterate Over Objects Reachable From Object */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1561
  jvmtiError (JNICALL *IterateOverObjectsReachableFromObject) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1562
    jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1563
    jvmtiObjectReferenceCallback object_reference_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1564
    const void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1565
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1566
  /*   110 : Iterate Over Reachable Objects */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1567
  jvmtiError (JNICALL *IterateOverReachableObjects) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1568
    jvmtiHeapRootCallback heap_root_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1569
    jvmtiStackReferenceCallback stack_ref_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1570
    jvmtiObjectReferenceCallback object_ref_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1571
    const void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1572
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1573
  /*   111 : Iterate Over Heap */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1574
  jvmtiError (JNICALL *IterateOverHeap) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1575
    jvmtiHeapObjectFilter object_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1576
    jvmtiHeapObjectCallback heap_object_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1577
    const void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1578
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1579
  /*   112 : Iterate Over Instances Of Class */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1580
  jvmtiError (JNICALL *IterateOverInstancesOfClass) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1581
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1582
    jvmtiHeapObjectFilter object_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1583
    jvmtiHeapObjectCallback heap_object_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1584
    const void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1585
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1586
  /*   113 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1587
  void *reserved113;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1588
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1589
  /*   114 : Get Objects With Tags */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1590
  jvmtiError (JNICALL *GetObjectsWithTags) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1591
    jint tag_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1592
    const jlong* tags,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1593
    jint* count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1594
    jobject** object_result_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1595
    jlong** tag_result_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1596
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1597
  /*   115 : Follow References */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1598
  jvmtiError (JNICALL *FollowReferences) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1599
    jint heap_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1600
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1601
    jobject initial_object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1602
    const jvmtiHeapCallbacks* callbacks,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1603
    const void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1604
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1605
  /*   116 : Iterate Through Heap */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1606
  jvmtiError (JNICALL *IterateThroughHeap) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1607
    jint heap_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1608
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1609
    const jvmtiHeapCallbacks* callbacks,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1610
    const void* user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1611
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1612
  /*   117 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1613
  void *reserved117;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1614
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1615
  /*   118 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1616
  void *reserved118;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1617
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1618
  /*   119 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1619
  void *reserved119;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1620
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1621
  /*   120 : Set JNI Function Table */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1622
  jvmtiError (JNICALL *SetJNIFunctionTable) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1623
    const jniNativeInterface* function_table);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1624
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1625
  /*   121 : Get JNI Function Table */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1626
  jvmtiError (JNICALL *GetJNIFunctionTable) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1627
    jniNativeInterface** function_table);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1628
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1629
  /*   122 : Set Event Callbacks */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1630
  jvmtiError (JNICALL *SetEventCallbacks) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1631
    const jvmtiEventCallbacks* callbacks,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1632
    jint size_of_callbacks);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1633
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1634
  /*   123 : Generate Events */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1635
  jvmtiError (JNICALL *GenerateEvents) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1636
    jvmtiEvent event_type);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1637
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1638
  /*   124 : Get Extension Functions */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1639
  jvmtiError (JNICALL *GetExtensionFunctions) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1640
    jint* extension_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1641
    jvmtiExtensionFunctionInfo** extensions);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1642
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1643
  /*   125 : Get Extension Events */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1644
  jvmtiError (JNICALL *GetExtensionEvents) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1645
    jint* extension_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1646
    jvmtiExtensionEventInfo** extensions);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1647
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1648
  /*   126 : Set Extension Event Callback */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1649
  jvmtiError (JNICALL *SetExtensionEventCallback) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1650
    jint extension_event_index,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1651
    jvmtiExtensionEvent callback);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1652
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1653
  /*   127 : Dispose Environment */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1654
  jvmtiError (JNICALL *DisposeEnvironment) (jvmtiEnv* env);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1655
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1656
  /*   128 : Get Error Name */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1657
  jvmtiError (JNICALL *GetErrorName) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1658
    jvmtiError error,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1659
    char** name_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1660
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1661
  /*   129 : Get JLocation Format */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1662
  jvmtiError (JNICALL *GetJLocationFormat) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1663
    jvmtiJlocationFormat* format_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1664
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1665
  /*   130 : Get System Properties */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1666
  jvmtiError (JNICALL *GetSystemProperties) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1667
    jint* count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1668
    char*** property_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1669
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1670
  /*   131 : Get System Property */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1671
  jvmtiError (JNICALL *GetSystemProperty) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1672
    const char* property,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1673
    char** value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1674
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1675
  /*   132 : Set System Property */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1676
  jvmtiError (JNICALL *SetSystemProperty) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1677
    const char* property,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1678
    const char* value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1679
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1680
  /*   133 : Get Phase */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1681
  jvmtiError (JNICALL *GetPhase) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1682
    jvmtiPhase* phase_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1683
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1684
  /*   134 : Get Current Thread CPU Timer Information */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1685
  jvmtiError (JNICALL *GetCurrentThreadCpuTimerInfo) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1686
    jvmtiTimerInfo* info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1687
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1688
  /*   135 : Get Current Thread CPU Time */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1689
  jvmtiError (JNICALL *GetCurrentThreadCpuTime) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1690
    jlong* nanos_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1691
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1692
  /*   136 : Get Thread CPU Timer Information */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1693
  jvmtiError (JNICALL *GetThreadCpuTimerInfo) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1694
    jvmtiTimerInfo* info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1695
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1696
  /*   137 : Get Thread CPU Time */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1697
  jvmtiError (JNICALL *GetThreadCpuTime) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1698
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1699
    jlong* nanos_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1700
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1701
  /*   138 : Get Timer Information */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1702
  jvmtiError (JNICALL *GetTimerInfo) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1703
    jvmtiTimerInfo* info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1704
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1705
  /*   139 : Get Time */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1706
  jvmtiError (JNICALL *GetTime) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1707
    jlong* nanos_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1708
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1709
  /*   140 : Get Potential Capabilities */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1710
  jvmtiError (JNICALL *GetPotentialCapabilities) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1711
    jvmtiCapabilities* capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1712
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1713
  /*   141 :  RESERVED */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1714
  void *reserved141;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1715
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1716
  /*   142 : Add Capabilities */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1717
  jvmtiError (JNICALL *AddCapabilities) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1718
    const jvmtiCapabilities* capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1719
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1720
  /*   143 : Relinquish Capabilities */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1721
  jvmtiError (JNICALL *RelinquishCapabilities) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1722
    const jvmtiCapabilities* capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1723
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1724
  /*   144 : Get Available Processors */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1725
  jvmtiError (JNICALL *GetAvailableProcessors) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1726
    jint* processor_count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1727
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1728
  /*   145 : Get Class Version Numbers */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1729
  jvmtiError (JNICALL *GetClassVersionNumbers) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1730
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1731
    jint* minor_version_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1732
    jint* major_version_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1733
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1734
  /*   146 : Get Constant Pool */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1735
  jvmtiError (JNICALL *GetConstantPool) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1736
    jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1737
    jint* constant_pool_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1738
    jint* constant_pool_byte_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1739
    unsigned char** constant_pool_bytes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1740
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1741
  /*   147 : Get Environment Local Storage */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1742
  jvmtiError (JNICALL *GetEnvironmentLocalStorage) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1743
    void** data_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1744
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1745
  /*   148 : Set Environment Local Storage */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1746
  jvmtiError (JNICALL *SetEnvironmentLocalStorage) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1747
    const void* data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1748
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1749
  /*   149 : Add To Bootstrap Class Loader Search */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1750
  jvmtiError (JNICALL *AddToBootstrapClassLoaderSearch) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1751
    const char* segment);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1752
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1753
  /*   150 : Set Verbose Flag */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1754
  jvmtiError (JNICALL *SetVerboseFlag) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1755
    jvmtiVerboseFlag flag,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1756
    jboolean value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1757
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1758
  /*   151 : Add To System Class Loader Search */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1759
  jvmtiError (JNICALL *AddToSystemClassLoaderSearch) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1760
    const char* segment);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1761
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1762
  /*   152 : Retransform Classes */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1763
  jvmtiError (JNICALL *RetransformClasses) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1764
    jint class_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1765
    const jclass* classes);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1766
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1767
  /*   153 : Get Owned Monitor Stack Depth Info */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1768
  jvmtiError (JNICALL *GetOwnedMonitorStackDepthInfo) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1769
    jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1770
    jint* monitor_info_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1771
    jvmtiMonitorStackDepthInfo** monitor_info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1772
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1773
  /*   154 : Get Object Size */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1774
  jvmtiError (JNICALL *GetObjectSize) (jvmtiEnv* env,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1775
    jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1776
    jlong* size_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1777
7978
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  1778
  /*   155 : Get Local Instance */
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  1779
  jvmtiError (JNICALL *GetLocalInstance) (jvmtiEnv* env,
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  1780
    jthread thread,
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  1781
    jint depth,
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  1782
    jobject* value_ptr);
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  1783
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1784
} jvmtiInterface_1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1785
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1786
struct _jvmtiEnv {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1787
    const struct jvmtiInterface_1_ *functions;
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1788
#ifdef __cplusplus
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1789
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1790
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1791
  jvmtiError Allocate(jlong size,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1792
            unsigned char** mem_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1793
    return functions->Allocate(this, size, mem_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1794
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1795
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1796
  jvmtiError Deallocate(unsigned char* mem) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1797
    return functions->Deallocate(this, mem);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1798
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1799
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1800
  jvmtiError GetThreadState(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1801
            jint* thread_state_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1802
    return functions->GetThreadState(this, thread, thread_state_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1803
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1804
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1805
  jvmtiError GetCurrentThread(jthread* thread_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1806
    return functions->GetCurrentThread(this, thread_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1807
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1808
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1809
  jvmtiError GetAllThreads(jint* threads_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1810
            jthread** threads_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1811
    return functions->GetAllThreads(this, threads_count_ptr, threads_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1812
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1813
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1814
  jvmtiError SuspendThread(jthread thread) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1815
    return functions->SuspendThread(this, thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1816
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1817
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1818
  jvmtiError SuspendThreadList(jint request_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1819
            const jthread* request_list,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1820
            jvmtiError* results) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1821
    return functions->SuspendThreadList(this, request_count, request_list, results);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1822
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1823
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1824
  jvmtiError ResumeThread(jthread thread) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1825
    return functions->ResumeThread(this, thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1826
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1827
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1828
  jvmtiError ResumeThreadList(jint request_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1829
            const jthread* request_list,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1830
            jvmtiError* results) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1831
    return functions->ResumeThreadList(this, request_count, request_list, results);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1832
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1833
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1834
  jvmtiError StopThread(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1835
            jobject exception) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1836
    return functions->StopThread(this, thread, exception);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1837
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1838
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1839
  jvmtiError InterruptThread(jthread thread) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1840
    return functions->InterruptThread(this, thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1841
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1842
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1843
  jvmtiError GetThreadInfo(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1844
            jvmtiThreadInfo* info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1845
    return functions->GetThreadInfo(this, thread, info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1846
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1847
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1848
  jvmtiError GetOwnedMonitorInfo(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1849
            jint* owned_monitor_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1850
            jobject** owned_monitors_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1851
    return functions->GetOwnedMonitorInfo(this, thread, owned_monitor_count_ptr, owned_monitors_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1852
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1853
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1854
  jvmtiError GetOwnedMonitorStackDepthInfo(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1855
            jint* monitor_info_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1856
            jvmtiMonitorStackDepthInfo** monitor_info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1857
    return functions->GetOwnedMonitorStackDepthInfo(this, thread, monitor_info_count_ptr, monitor_info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1858
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1859
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1860
  jvmtiError GetCurrentContendedMonitor(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1861
            jobject* monitor_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1862
    return functions->GetCurrentContendedMonitor(this, thread, monitor_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1863
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1864
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1865
  jvmtiError RunAgentThread(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1866
            jvmtiStartFunction proc,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1867
            const void* arg,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1868
            jint priority) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1869
    return functions->RunAgentThread(this, thread, proc, arg, priority);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1870
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1871
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1872
  jvmtiError SetThreadLocalStorage(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1873
            const void* data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1874
    return functions->SetThreadLocalStorage(this, thread, data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1875
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1876
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1877
  jvmtiError GetThreadLocalStorage(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1878
            void** data_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1879
    return functions->GetThreadLocalStorage(this, thread, data_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1880
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1881
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1882
  jvmtiError GetTopThreadGroups(jint* group_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1883
            jthreadGroup** groups_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1884
    return functions->GetTopThreadGroups(this, group_count_ptr, groups_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1885
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1886
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1887
  jvmtiError GetThreadGroupInfo(jthreadGroup group,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1888
            jvmtiThreadGroupInfo* info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1889
    return functions->GetThreadGroupInfo(this, group, info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1890
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1891
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1892
  jvmtiError GetThreadGroupChildren(jthreadGroup group,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1893
            jint* thread_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1894
            jthread** threads_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1895
            jint* group_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1896
            jthreadGroup** groups_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1897
    return functions->GetThreadGroupChildren(this, group, thread_count_ptr, threads_ptr, group_count_ptr, groups_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1898
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1899
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1900
  jvmtiError GetStackTrace(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1901
            jint start_depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1902
            jint max_frame_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1903
            jvmtiFrameInfo* frame_buffer,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1904
            jint* count_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1905
    return functions->GetStackTrace(this, thread, start_depth, max_frame_count, frame_buffer, count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1906
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1907
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1908
  jvmtiError GetAllStackTraces(jint max_frame_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1909
            jvmtiStackInfo** stack_info_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1910
            jint* thread_count_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1911
    return functions->GetAllStackTraces(this, max_frame_count, stack_info_ptr, thread_count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1912
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1913
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1914
  jvmtiError GetThreadListStackTraces(jint thread_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1915
            const jthread* thread_list,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1916
            jint max_frame_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1917
            jvmtiStackInfo** stack_info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1918
    return functions->GetThreadListStackTraces(this, thread_count, thread_list, max_frame_count, stack_info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1919
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1920
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1921
  jvmtiError GetFrameCount(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1922
            jint* count_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1923
    return functions->GetFrameCount(this, thread, count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1924
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1925
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1926
  jvmtiError PopFrame(jthread thread) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1927
    return functions->PopFrame(this, thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1928
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1929
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1930
  jvmtiError GetFrameLocation(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1931
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1932
            jmethodID* method_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1933
            jlocation* location_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1934
    return functions->GetFrameLocation(this, thread, depth, method_ptr, location_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1935
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1936
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1937
  jvmtiError NotifyFramePop(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1938
            jint depth) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1939
    return functions->NotifyFramePop(this, thread, depth);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1940
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1941
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1942
  jvmtiError ForceEarlyReturnObject(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1943
            jobject value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1944
    return functions->ForceEarlyReturnObject(this, thread, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1945
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1946
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1947
  jvmtiError ForceEarlyReturnInt(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1948
            jint value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1949
    return functions->ForceEarlyReturnInt(this, thread, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1950
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1951
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1952
  jvmtiError ForceEarlyReturnLong(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1953
            jlong value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1954
    return functions->ForceEarlyReturnLong(this, thread, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1955
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1956
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1957
  jvmtiError ForceEarlyReturnFloat(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1958
            jfloat value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1959
    return functions->ForceEarlyReturnFloat(this, thread, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1960
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1961
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1962
  jvmtiError ForceEarlyReturnDouble(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1963
            jdouble value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1964
    return functions->ForceEarlyReturnDouble(this, thread, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1965
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1966
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1967
  jvmtiError ForceEarlyReturnVoid(jthread thread) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1968
    return functions->ForceEarlyReturnVoid(this, thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1969
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1970
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1971
  jvmtiError FollowReferences(jint heap_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1972
            jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1973
            jobject initial_object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1974
            const jvmtiHeapCallbacks* callbacks,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1975
            const void* user_data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1976
    return functions->FollowReferences(this, heap_filter, klass, initial_object, callbacks, user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1977
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1978
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1979
  jvmtiError IterateThroughHeap(jint heap_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1980
            jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1981
            const jvmtiHeapCallbacks* callbacks,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1982
            const void* user_data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1983
    return functions->IterateThroughHeap(this, heap_filter, klass, callbacks, user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1984
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1985
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1986
  jvmtiError GetTag(jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1987
            jlong* tag_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1988
    return functions->GetTag(this, object, tag_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1989
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1990
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1991
  jvmtiError SetTag(jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1992
            jlong tag) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1993
    return functions->SetTag(this, object, tag);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1994
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1995
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1996
  jvmtiError GetObjectsWithTags(jint tag_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1997
            const jlong* tags,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1998
            jint* count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1999
            jobject** object_result_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2000
            jlong** tag_result_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2001
    return functions->GetObjectsWithTags(this, tag_count, tags, count_ptr, object_result_ptr, tag_result_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2002
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2003
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2004
  jvmtiError ForceGarbageCollection() {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2005
    return functions->ForceGarbageCollection(this);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2006
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2007
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2008
  jvmtiError IterateOverObjectsReachableFromObject(jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2009
            jvmtiObjectReferenceCallback object_reference_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2010
            const void* user_data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2011
    return functions->IterateOverObjectsReachableFromObject(this, object, object_reference_callback, user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2012
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2013
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2014
  jvmtiError IterateOverReachableObjects(jvmtiHeapRootCallback heap_root_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2015
            jvmtiStackReferenceCallback stack_ref_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2016
            jvmtiObjectReferenceCallback object_ref_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2017
            const void* user_data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2018
    return functions->IterateOverReachableObjects(this, heap_root_callback, stack_ref_callback, object_ref_callback, user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2019
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2020
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2021
  jvmtiError IterateOverHeap(jvmtiHeapObjectFilter object_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2022
            jvmtiHeapObjectCallback heap_object_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2023
            const void* user_data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2024
    return functions->IterateOverHeap(this, object_filter, heap_object_callback, user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2025
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2026
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2027
  jvmtiError IterateOverInstancesOfClass(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2028
            jvmtiHeapObjectFilter object_filter,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2029
            jvmtiHeapObjectCallback heap_object_callback,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2030
            const void* user_data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2031
    return functions->IterateOverInstancesOfClass(this, klass, object_filter, heap_object_callback, user_data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2032
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2033
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2034
  jvmtiError GetLocalObject(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2035
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2036
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2037
            jobject* value_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2038
    return functions->GetLocalObject(this, thread, depth, slot, value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2039
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2040
7978
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  2041
  jvmtiError GetLocalInstance(jthread thread,
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  2042
            jint depth,
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  2043
            jobject* value_ptr) {
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  2044
    return functions->GetLocalInstance(this, thread, depth, value_ptr);
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  2045
  }
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  2046
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2047
  jvmtiError GetLocalInt(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2048
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2049
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2050
            jint* value_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2051
    return functions->GetLocalInt(this, thread, depth, slot, value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2052
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2053
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2054
  jvmtiError GetLocalLong(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2055
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2056
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2057
            jlong* value_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2058
    return functions->GetLocalLong(this, thread, depth, slot, value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2059
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2060
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2061
  jvmtiError GetLocalFloat(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2062
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2063
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2064
            jfloat* value_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2065
    return functions->GetLocalFloat(this, thread, depth, slot, value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2066
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2067
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2068
  jvmtiError GetLocalDouble(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2069
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2070
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2071
            jdouble* value_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2072
    return functions->GetLocalDouble(this, thread, depth, slot, value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2073
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2074
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2075
  jvmtiError SetLocalObject(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2076
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2077
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2078
            jobject value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2079
    return functions->SetLocalObject(this, thread, depth, slot, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2080
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2081
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2082
  jvmtiError SetLocalInt(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2083
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2084
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2085
            jint value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2086
    return functions->SetLocalInt(this, thread, depth, slot, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2087
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2088
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2089
  jvmtiError SetLocalLong(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2090
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2091
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2092
            jlong value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2093
    return functions->SetLocalLong(this, thread, depth, slot, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2094
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2095
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2096
  jvmtiError SetLocalFloat(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2097
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2098
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2099
            jfloat value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2100
    return functions->SetLocalFloat(this, thread, depth, slot, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2101
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2102
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2103
  jvmtiError SetLocalDouble(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2104
            jint depth,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2105
            jint slot,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2106
            jdouble value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2107
    return functions->SetLocalDouble(this, thread, depth, slot, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2108
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2109
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2110
  jvmtiError SetBreakpoint(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2111
            jlocation location) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2112
    return functions->SetBreakpoint(this, method, location);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2113
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2114
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2115
  jvmtiError ClearBreakpoint(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2116
            jlocation location) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2117
    return functions->ClearBreakpoint(this, method, location);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2118
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2119
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2120
  jvmtiError SetFieldAccessWatch(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2121
            jfieldID field) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2122
    return functions->SetFieldAccessWatch(this, klass, field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2123
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2124
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2125
  jvmtiError ClearFieldAccessWatch(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2126
            jfieldID field) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2127
    return functions->ClearFieldAccessWatch(this, klass, field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2128
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2129
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2130
  jvmtiError SetFieldModificationWatch(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2131
            jfieldID field) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2132
    return functions->SetFieldModificationWatch(this, klass, field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2133
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2134
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2135
  jvmtiError ClearFieldModificationWatch(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2136
            jfieldID field) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2137
    return functions->ClearFieldModificationWatch(this, klass, field);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2138
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2139
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2140
  jvmtiError GetLoadedClasses(jint* class_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2141
            jclass** classes_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2142
    return functions->GetLoadedClasses(this, class_count_ptr, classes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2143
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2144
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2145
  jvmtiError GetClassLoaderClasses(jobject initiating_loader,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2146
            jint* class_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2147
            jclass** classes_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2148
    return functions->GetClassLoaderClasses(this, initiating_loader, class_count_ptr, classes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2149
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2150
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2151
  jvmtiError GetClassSignature(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2152
            char** signature_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2153
            char** generic_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2154
    return functions->GetClassSignature(this, klass, signature_ptr, generic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2155
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2156
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2157
  jvmtiError GetClassStatus(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2158
            jint* status_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2159
    return functions->GetClassStatus(this, klass, status_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2160
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2161
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2162
  jvmtiError GetSourceFileName(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2163
            char** source_name_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2164
    return functions->GetSourceFileName(this, klass, source_name_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2165
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2166
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2167
  jvmtiError GetClassModifiers(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2168
            jint* modifiers_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2169
    return functions->GetClassModifiers(this, klass, modifiers_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2170
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2171
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2172
  jvmtiError GetClassMethods(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2173
            jint* method_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2174
            jmethodID** methods_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2175
    return functions->GetClassMethods(this, klass, method_count_ptr, methods_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2176
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2177
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2178
  jvmtiError GetClassFields(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2179
            jint* field_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2180
            jfieldID** fields_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2181
    return functions->GetClassFields(this, klass, field_count_ptr, fields_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2182
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2183
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2184
  jvmtiError GetImplementedInterfaces(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2185
            jint* interface_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2186
            jclass** interfaces_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2187
    return functions->GetImplementedInterfaces(this, klass, interface_count_ptr, interfaces_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2188
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2189
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2190
  jvmtiError GetClassVersionNumbers(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2191
            jint* minor_version_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2192
            jint* major_version_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2193
    return functions->GetClassVersionNumbers(this, klass, minor_version_ptr, major_version_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2194
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2195
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2196
  jvmtiError GetConstantPool(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2197
            jint* constant_pool_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2198
            jint* constant_pool_byte_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2199
            unsigned char** constant_pool_bytes_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2200
    return functions->GetConstantPool(this, klass, constant_pool_count_ptr, constant_pool_byte_count_ptr, constant_pool_bytes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2201
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2202
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2203
  jvmtiError IsInterface(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2204
            jboolean* is_interface_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2205
    return functions->IsInterface(this, klass, is_interface_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2206
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2207
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2208
  jvmtiError IsArrayClass(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2209
            jboolean* is_array_class_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2210
    return functions->IsArrayClass(this, klass, is_array_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2211
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2212
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2213
  jvmtiError IsModifiableClass(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2214
            jboolean* is_modifiable_class_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2215
    return functions->IsModifiableClass(this, klass, is_modifiable_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2216
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2217
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2218
  jvmtiError GetClassLoader(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2219
            jobject* classloader_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2220
    return functions->GetClassLoader(this, klass, classloader_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2221
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2222
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2223
  jvmtiError GetSourceDebugExtension(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2224
            char** source_debug_extension_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2225
    return functions->GetSourceDebugExtension(this, klass, source_debug_extension_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2226
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2227
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2228
  jvmtiError RetransformClasses(jint class_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2229
            const jclass* classes) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2230
    return functions->RetransformClasses(this, class_count, classes);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2231
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2232
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2233
  jvmtiError RedefineClasses(jint class_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2234
            const jvmtiClassDefinition* class_definitions) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2235
    return functions->RedefineClasses(this, class_count, class_definitions);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2236
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2237
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2238
  jvmtiError GetObjectSize(jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2239
            jlong* size_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2240
    return functions->GetObjectSize(this, object, size_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2241
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2242
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2243
  jvmtiError GetObjectHashCode(jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2244
            jint* hash_code_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2245
    return functions->GetObjectHashCode(this, object, hash_code_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2246
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2247
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2248
  jvmtiError GetObjectMonitorUsage(jobject object,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2249
            jvmtiMonitorUsage* info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2250
    return functions->GetObjectMonitorUsage(this, object, info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2251
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2252
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2253
  jvmtiError GetFieldName(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2254
            jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2255
            char** name_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2256
            char** signature_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2257
            char** generic_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2258
    return functions->GetFieldName(this, klass, field, name_ptr, signature_ptr, generic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2259
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2260
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2261
  jvmtiError GetFieldDeclaringClass(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2262
            jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2263
            jclass* declaring_class_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2264
    return functions->GetFieldDeclaringClass(this, klass, field, declaring_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2265
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2266
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2267
  jvmtiError GetFieldModifiers(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2268
            jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2269
            jint* modifiers_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2270
    return functions->GetFieldModifiers(this, klass, field, modifiers_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2271
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2272
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2273
  jvmtiError IsFieldSynthetic(jclass klass,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2274
            jfieldID field,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2275
            jboolean* is_synthetic_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2276
    return functions->IsFieldSynthetic(this, klass, field, is_synthetic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2277
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2278
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2279
  jvmtiError GetMethodName(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2280
            char** name_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2281
            char** signature_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2282
            char** generic_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2283
    return functions->GetMethodName(this, method, name_ptr, signature_ptr, generic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2284
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2285
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2286
  jvmtiError GetMethodDeclaringClass(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2287
            jclass* declaring_class_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2288
    return functions->GetMethodDeclaringClass(this, method, declaring_class_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2289
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2290
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2291
  jvmtiError GetMethodModifiers(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2292
            jint* modifiers_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2293
    return functions->GetMethodModifiers(this, method, modifiers_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2294
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2295
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2296
  jvmtiError GetMaxLocals(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2297
            jint* max_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2298
    return functions->GetMaxLocals(this, method, max_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2299
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2300
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2301
  jvmtiError GetArgumentsSize(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2302
            jint* size_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2303
    return functions->GetArgumentsSize(this, method, size_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2304
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2305
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2306
  jvmtiError GetLineNumberTable(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2307
            jint* entry_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2308
            jvmtiLineNumberEntry** table_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2309
    return functions->GetLineNumberTable(this, method, entry_count_ptr, table_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2310
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2311
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2312
  jvmtiError GetMethodLocation(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2313
            jlocation* start_location_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2314
            jlocation* end_location_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2315
    return functions->GetMethodLocation(this, method, start_location_ptr, end_location_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2316
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2317
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2318
  jvmtiError GetLocalVariableTable(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2319
            jint* entry_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2320
            jvmtiLocalVariableEntry** table_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2321
    return functions->GetLocalVariableTable(this, method, entry_count_ptr, table_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2322
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2323
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2324
  jvmtiError GetBytecodes(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2325
            jint* bytecode_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2326
            unsigned char** bytecodes_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2327
    return functions->GetBytecodes(this, method, bytecode_count_ptr, bytecodes_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2328
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2329
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2330
  jvmtiError IsMethodNative(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2331
            jboolean* is_native_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2332
    return functions->IsMethodNative(this, method, is_native_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2333
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2334
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2335
  jvmtiError IsMethodSynthetic(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2336
            jboolean* is_synthetic_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2337
    return functions->IsMethodSynthetic(this, method, is_synthetic_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2338
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2339
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2340
  jvmtiError IsMethodObsolete(jmethodID method,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2341
            jboolean* is_obsolete_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2342
    return functions->IsMethodObsolete(this, method, is_obsolete_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2343
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2344
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2345
  jvmtiError SetNativeMethodPrefix(const char* prefix) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2346
    return functions->SetNativeMethodPrefix(this, prefix);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2347
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2348
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2349
  jvmtiError SetNativeMethodPrefixes(jint prefix_count,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2350
            char** prefixes) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2351
    return functions->SetNativeMethodPrefixes(this, prefix_count, prefixes);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2352
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2353
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2354
  jvmtiError CreateRawMonitor(const char* name,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2355
            jrawMonitorID* monitor_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2356
    return functions->CreateRawMonitor(this, name, monitor_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2357
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2358
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2359
  jvmtiError DestroyRawMonitor(jrawMonitorID monitor) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2360
    return functions->DestroyRawMonitor(this, monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2361
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2362
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2363
  jvmtiError RawMonitorEnter(jrawMonitorID monitor) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2364
    return functions->RawMonitorEnter(this, monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2365
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2366
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2367
  jvmtiError RawMonitorExit(jrawMonitorID monitor) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2368
    return functions->RawMonitorExit(this, monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2369
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2370
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2371
  jvmtiError RawMonitorWait(jrawMonitorID monitor,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2372
            jlong millis) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2373
    return functions->RawMonitorWait(this, monitor, millis);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2374
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2375
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2376
  jvmtiError RawMonitorNotify(jrawMonitorID monitor) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2377
    return functions->RawMonitorNotify(this, monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2378
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2379
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2380
  jvmtiError RawMonitorNotifyAll(jrawMonitorID monitor) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2381
    return functions->RawMonitorNotifyAll(this, monitor);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2382
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2383
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2384
  jvmtiError SetJNIFunctionTable(const jniNativeInterface* function_table) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2385
    return functions->SetJNIFunctionTable(this, function_table);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2386
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2387
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2388
  jvmtiError GetJNIFunctionTable(jniNativeInterface** function_table) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2389
    return functions->GetJNIFunctionTable(this, function_table);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2390
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2391
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2392
  jvmtiError SetEventCallbacks(const jvmtiEventCallbacks* callbacks,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2393
            jint size_of_callbacks) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2394
    return functions->SetEventCallbacks(this, callbacks, size_of_callbacks);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2395
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2396
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2397
  jvmtiError SetEventNotificationMode(jvmtiEventMode mode,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2398
            jvmtiEvent event_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2399
            jthread event_thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2400
             ...) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2401
    return functions->SetEventNotificationMode(this, mode, event_type, event_thread);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2402
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2403
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2404
  jvmtiError GenerateEvents(jvmtiEvent event_type) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2405
    return functions->GenerateEvents(this, event_type);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2406
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2407
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2408
  jvmtiError GetExtensionFunctions(jint* extension_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2409
            jvmtiExtensionFunctionInfo** extensions) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2410
    return functions->GetExtensionFunctions(this, extension_count_ptr, extensions);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2411
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2412
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2413
  jvmtiError GetExtensionEvents(jint* extension_count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2414
            jvmtiExtensionEventInfo** extensions) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2415
    return functions->GetExtensionEvents(this, extension_count_ptr, extensions);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2416
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2417
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2418
  jvmtiError SetExtensionEventCallback(jint extension_event_index,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2419
            jvmtiExtensionEvent callback) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2420
    return functions->SetExtensionEventCallback(this, extension_event_index, callback);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2421
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2422
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2423
  jvmtiError GetPotentialCapabilities(jvmtiCapabilities* capabilities_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2424
    return functions->GetPotentialCapabilities(this, capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2425
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2426
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2427
  jvmtiError AddCapabilities(const jvmtiCapabilities* capabilities_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2428
    return functions->AddCapabilities(this, capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2429
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2430
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2431
  jvmtiError RelinquishCapabilities(const jvmtiCapabilities* capabilities_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2432
    return functions->RelinquishCapabilities(this, capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2433
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2434
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2435
  jvmtiError GetCapabilities(jvmtiCapabilities* capabilities_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2436
    return functions->GetCapabilities(this, capabilities_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2437
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2438
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2439
  jvmtiError GetCurrentThreadCpuTimerInfo(jvmtiTimerInfo* info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2440
    return functions->GetCurrentThreadCpuTimerInfo(this, info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2441
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2442
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2443
  jvmtiError GetCurrentThreadCpuTime(jlong* nanos_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2444
    return functions->GetCurrentThreadCpuTime(this, nanos_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2445
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2446
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2447
  jvmtiError GetThreadCpuTimerInfo(jvmtiTimerInfo* info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2448
    return functions->GetThreadCpuTimerInfo(this, info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2449
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2450
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2451
  jvmtiError GetThreadCpuTime(jthread thread,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2452
            jlong* nanos_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2453
    return functions->GetThreadCpuTime(this, thread, nanos_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2454
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2455
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2456
  jvmtiError GetTimerInfo(jvmtiTimerInfo* info_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2457
    return functions->GetTimerInfo(this, info_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2458
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2459
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2460
  jvmtiError GetTime(jlong* nanos_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2461
    return functions->GetTime(this, nanos_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2462
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2463
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2464
  jvmtiError GetAvailableProcessors(jint* processor_count_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2465
    return functions->GetAvailableProcessors(this, processor_count_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2466
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2467
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2468
  jvmtiError AddToBootstrapClassLoaderSearch(const char* segment) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2469
    return functions->AddToBootstrapClassLoaderSearch(this, segment);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2470
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2471
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2472
  jvmtiError AddToSystemClassLoaderSearch(const char* segment) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2473
    return functions->AddToSystemClassLoaderSearch(this, segment);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2474
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2475
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2476
  jvmtiError GetSystemProperties(jint* count_ptr,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2477
            char*** property_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2478
    return functions->GetSystemProperties(this, count_ptr, property_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2479
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2480
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2481
  jvmtiError GetSystemProperty(const char* property,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2482
            char** value_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2483
    return functions->GetSystemProperty(this, property, value_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2484
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2485
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2486
  jvmtiError SetSystemProperty(const char* property,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2487
            const char* value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2488
    return functions->SetSystemProperty(this, property, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2489
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2490
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2491
  jvmtiError GetPhase(jvmtiPhase* phase_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2492
    return functions->GetPhase(this, phase_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2493
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2494
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2495
  jvmtiError DisposeEnvironment() {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2496
    return functions->DisposeEnvironment(this);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2497
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2498
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2499
  jvmtiError SetEnvironmentLocalStorage(const void* data) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2500
    return functions->SetEnvironmentLocalStorage(this, data);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2501
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2502
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2503
  jvmtiError GetEnvironmentLocalStorage(void** data_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2504
    return functions->GetEnvironmentLocalStorage(this, data_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2505
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2506
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2507
  jvmtiError GetVersionNumber(jint* version_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2508
    return functions->GetVersionNumber(this, version_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2509
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2510
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2511
  jvmtiError GetErrorName(jvmtiError error,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2512
            char** name_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2513
    return functions->GetErrorName(this, error, name_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2514
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2515
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2516
  jvmtiError SetVerboseFlag(jvmtiVerboseFlag flag,
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2517
            jboolean value) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2518
    return functions->SetVerboseFlag(this, flag, value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2519
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2520
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2521
  jvmtiError GetJLocationFormat(jvmtiJlocationFormat* format_ptr) {
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2522
    return functions->GetJLocationFormat(this, format_ptr);
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2523
  }
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2524
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2525
#endif /* __cplusplus */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2526
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2527
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2528
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2529
#ifdef __cplusplus
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2530
} /* extern "C" */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2531
#endif /* __cplusplus */
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2532
90ce3da70b43 Initial load
duke
parents:
diff changeset
  2533
#endif /* !_JAVA_JVMTI_H_ */
7978
120267233d5e 6436034: Instance filter doesn't filter event if it occurs in native method
kamg
parents: 5506
diff changeset
  2534