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