Martini::MPI Namespace Reference

Martini Profiling Interface namespace. More...


Classes

struct  TIdArray
 Defines an array of MPI ids. More...
struct  SVersionInfo
 Defines MPI version information. More...
struct  SConfigData
struct  SLineNumberTableEntry
 Defines a mapping between two types of offsets. More...
struct  SLineNumberTable
 Defines a line number table. More...
struct  SDotNetModulePrejit
 Defines .NET module pre-JIT information. More...
struct  SCodeRegion
 Defines a region of continuous native (JITted) code. More...
struct  SCodeInfo
struct  SStackEntry
 Defines stack entry information. More...
struct  SStackTrace
 Defines a stack trace. More...
struct  SGgMovedRefInfo
 Defines .NET GC Moved References information. More...
struct  SJavaDynamicCode
 Defines JVM internal dynamic code information. More...
struct  SMethodLineNumbers
 Defines a method's first and last source line numbers. More...
struct  SArrayDimensionInfo
 Defines array dimension information. More...
struct  SArrayDimensionsInfos
 Defines array dimensions. More...
struct  SArrayInfo
 Defines array information. More...
struct  SObjectInfo
 Defines object information for the IMpi::GetObjectInfo API and the Heap events. More...
interface  IEventObserver
 A base interface for all Event Observer interfaces. More...
struct  SNewMethodEventData
 Defines New Method event data. More...
interface  INewMethodEventObserver
 Observer interface for receiving New Method events. More...
struct  SMethodEnterEventData
 Defines Method Enter event data. More...
interface  IMethodEnterEventObserver
 Observer interface for receiving Method Enter events. More...
struct  SMethodLeaveEventData
 Defines Method Leave event data. More...
interface  IMethodLeaveEventObserver
 Observer interface for receiving Method Leave events. More...
struct  SJittedMethodLoadedEventData
 Defines JITted Method Loaded event data. More...
interface  IJittedMethodLoadedEventObserver
 Observer interface for receiving JITted Method Loaded events. More...
struct  SJittedMethodUnloadedEventData
 Defines JITted Method Unloaded event data. More...
interface  IJittedMethodUnloadedEventObserver
 Observer interface for receiving JITted Method Unloaded events. More...
struct  SThreadEventData
 Defines Thread events data. More...
interface  IThreadStartEventObserver
 Observer interface for receiving Thread Start events. More...
interface  IThreadEndEventObserver
 Observer interface for receiving Thread End events. More...
struct  SMonitorWaitEventData
 Defines Monitor Wait event data. More...
interface  IMonitorWaitEventObserver
 Observer interface for receiving Monitor Wait events. More...
struct  SMonitorWaitedEventData
 Defines Monitor Waited event data. More...
interface  IMonitorWaitedEventObserver
 Observer interface for receiving Monitor Waited events. More...
struct  SContendedMonitorEnterEventData
 Defines Contended Monitor Enter event data. More...
interface  IContendedMonitorEnterEventObserver
 Observer interface for receiving Contended Monitor Enter events. More...
struct  SContendedMonitorEnteredEventData
 Defines Contended Monitor Entered event data. More...
interface  IContendedMonitorEnteredEventObserver
 Observer interface for receiving Contended Monitor Entered events. More...
struct  SThreadInteractionEventData
 Defines Thread Interaction event data. More...
interface  IThreadInteractionEventObserver
 Observer interface for receiving Thread Interaction events. More...
struct  SHeapEventData
 Defines Heap events data. More...
interface  IObjectAllocEventObserver
 Observer interface for receiving Object Alloc events. More...
interface  IObjectFreeEventObserver
 Observer interface for receiving Object Free events. More...
interface  IGcStartEventObserver
 Observer interface for receiving Garbage Collection Start events. More...
interface  IGcEndEventObserver
 Observer interface for receiving Garbage Collection Finish events. More...
struct  SGcMovedRefEventData
 Defines Garbage Collection Moved References event data. More...
interface  IGcMovedReferencesEventObserver
 Observer interface for receiving Garbage Collection Moved References events (.NET only). More...
struct  SVmInitEventData
 Defines VM Init event data. More...
interface  IVmInitEventObserver
 Observer interface for receiving VM Init events. More...
interface  IVmShutdownEventObserver
 Observer interface for receiving VM Shutdown events. More...
struct  SDotNetMethodInstrEventData
 Defines .NET Method Instrumentation event data. More...
interface  IDotNetMethodInstrumentationPointEventObserver
 Observer interface for receiving .NET Method Instrumentation Point events (.NET only). More...
struct  SDotNetModuleEventData
 Defines .NET Module events data. More...
interface  IDotNetModuleUnloadStartEventObserver
 Observer interface for receiving .NET Module Unload Started events (.NET only). More...
interface  IDotNetModuleLoadFinishEventObserver
 Observer interface for receiving .NET Module Load Finished events (.NET only). More...
struct  SJavaDynamicCodeEventData
 Defines Java Dynamic Code Generated event data. More...
interface  IJavaDynamicCodeGeneratedEventObserver
 Observer interface for receiving Java Dynamic Code Generated events (Java only). More...
struct  SClassFileLoadHookEventData
 Defines Java Class File Load Hook event data. More...
interface  IJavaClassFileLoadHookEventObserver
 Observer interface for receiving Java Class File Load Hook events (Java 5.0+ only). More...
struct  SSetOutputDirEventData
 Defines Set Output Directory event data. More...
interface  IEcSetOutputDirEventObserver
 Observer interface for receiving Set Output Directory events from External Controllers. More...
interface  IEcStartEventObserver
 Observer interface for receiving Start events from External Controllers. More...
interface  IEcStopEventObserver
 Observer interface for receiving Stop events from External Controllers. More...
interface  IEcAttachEventObserver
 Observer interface for receiving Attach events from External Controllers. More...
interface  IEcDetachEventObserver
 Observer interface for receiving Detach events from External Controllers. More...
struct  SCustomCommandEventData
 Defines Custom Command event data. More...
interface  IEcCustomCommandEventObserver
 Observer interface for receiving Custom Command events from External Controllers. More...
struct  SCallGraphFilterData
 Defines data for the Call Graph events filter. More...
interface  ICallGraphFilter
 Event Filter interface for defining selectivity for Call Graph events. More...
struct  SHeapFilterData
 Defines data for the Heap events filter. More...
interface  IHeapFilter
 Event Filter interface for defining selectivity for Heap events. More...
struct  SThreadInteractionFilterData
 Defines data for the Thread Interaction events filter. More...
interface  IThreadInteractionFilter
 Event Filter interface for defining selectivity for Thread Interaction events. More...
struct  SMethodInfo
 Defines method information for the IMpi::GetMethodInfo API. More...
struct  SClassInfo
 Defines class information for the IMpi::GetClassInfo API. More...
struct  SObjectDataRequest
 Defines object information for the IMpi::GetObjectInfo API. More...
struct  SThreadInfo
 Defines thread information for the IMpi::GetThreadInfo API. More...
struct  SThreadInfoArrayEntry
 Defines information for an entry in an SThreadInfoArray. More...
struct  SThreadInfoArray
 Defines thread information array for the IMpi::GetAllThreadsInfo API. More...
struct  SModuleInfo
 Defines module information for the IMpi::GetModuleInfo API. More...
struct  SObjectReference
 Defines information for an object reference. More...
struct  SObjectReferenceInfo
 Defines object reference information for the IMpi::GetObjectReferences API. More...
interface  IMpi
 Martini Profiling Interface functions. More...
interface  IEventFilter
 Event Filter interface. More...

Defines all MPI supported events

This is a list of all supported MPI events. However there are multiple modules that implement MPI, not all of them support the entire set of events. Unsupported events will result in a proper return value during event registration via IMpi::RegisterEvent()

Remarks:
- Java-specific events start with EV_JAVA

- .NET-specific events start with EV_DOTNET



typedef unsigned int TEventType
const TEventType EV_NONE = 0
const TEventType EV_METHOD_ENTER = 1
const TEventType EV_METHOD_LEAVE = 2
const TEventType EV_NEW_METHOD = 3
const TEventType EV_JITTED_METHOD_LOADED = 4
const TEventType EV_JITTED_METHOD_UNLOADED = 5
const TEventType EV_THREAD_START = 6
const TEventType EV_THREAD_END = 7
const TEventType EV_OBJECT_ALLOC = 8
const TEventType EV_OBJECT_FREE = 9
const TEventType EV_GC_START = 10
const TEventType EV_GC_END = 11
const TEventType EV_GC_MOVED_REFERENCES = 12
const TEventType EV_VM_INIT = 13
const TEventType EV_VM_SHUTDOWN = 14
const TEventType EV_DOTNET_METHOD_INSTRUMENTATION_POINT = 15
const TEventType EV_DOTNET_MODULE_UNLOAD_STARTED = 16
const TEventType EV_DOTNET_MODULE_LOAD_FINISHED = 17
const TEventType EV_JAVA_DYNAMIC_CODE_GENERATED = 18
const TEventType EV_EC_START = 19
const TEventType EV_EC_STOP = 20
const TEventType EV_EC_SET_OUTPUT_DIRECTORY = 21
const TEventType EV_EC_ATTACH = 22
const TEventType EV_EC_DETACH = 23
const TEventType EV_EC_CUSTOM_COMMAND = 24
const TEventType EV_MONITOR_WAIT = 25
const TEventType EV_MONITOR_WAITED = 26
const TEventType EV_CONTENDED_MONITOR_ENTER = 27
const TEventType EV_CONTENDED_MONITOR_ENTERED = 28
const TEventType EV_JAVA_CLASS_FILE_LOAD_HOOK = 29
const TEventType EV_THREAD_INTERACTION = 30
const TEventType EV_LAST = 31

Typedefs

typedef U64 TId
 Id Type for most MPI elements: modules, classes, methods, etc...
typedef U64 TTimeStamp
 Time stamp type.
typedef U32 TDataRequestType
 Data Type for MPI Data Request Types.
typedef TResult(* TDotNetUnmanagedStackWalkCallBack )(SThreadInfo *pData, void *context, unsigned int contextSize, U64 firstUnmanagedCallSiteIP, U64 terminatingManagedCallSiteIP)
 callback function for unmanaged stack walk (.NET only)
typedef TResult(* TClientInstantiate )(IMpi *pMpiApi, TId clientId, const char *szOptions)
 Prototype of MPI client initialization function.
typedef U32 BitSet
 Bit set.

Enumerations

enum  EEventGroup {
  EG_NONE, EG_CALL_GRAPH, EG_HEAP, EG_MONITOR,
  EG_THREAD_INTERACTION, EG_LAST
}
 Defines MPI Event Groups. More...
enum  EMessageType { MT_ERROR, MT_INFORMATIVE, MT_DEBUG }
 Defines message types for the IMpi::MessageLog function. More...
enum  EMessageDest { MD_LOG_FILE = 0x01, MD_EXTERNAL_CONTROL = 0x02 }
 Defines possible destinations for messages sent with the IMpi::MessageLog function. More...
enum  EConfigurationFlags {
  CF_NONE = 0x00000000, CF_DOTNET_USE_VM_IDS = 0x00010000, CF_DOTNET_NO_INLINING = 0x00020000, CF_DOTNET_DISABLE_PREJIT_USE = 0x00040000,
  CF_LAST = 0x80080000
}
enum  ERuntimeType { RT_JAVA = 2, RT_DOTNET, RT_JIT_PROFILING = 9, RT_UNDEFINED }
 Defines MPI supported runtime types (Virtual Machines). More...
enum  EMethodAccessType {
  MAT_NONE = 0, MAT_CLASS_INTERNAL, MAT_PACKAGE_INTERNAL, MAT_MODULE_INTERNAL = MAT_PACKAGE_INTERNAL,
  MAT_PACKAGE_API, MAT_MODULE_API = MAT_PACKAGE_API
}
 Defines method access (scope or visibility) types. More...
enum  EArrayType {
  AT_NONE, AT_CLASS, AT_BOOL, AT_CHAR,
  AT_S1, AT_U1, AT_S2, AT_U2,
  AT_S4, AT_U4, AT_S8, AT_U8,
  AT_FLOAT, AT_DOUBLE, AT_STRING, AT_VOID,
  AT_OTHER, AT_LAST
}
 Defines array types. More...
enum  EThreadInteractionType { IT_NOTIFY_ALL = 1, IT_NOTIFY = 2, IT_INTERRUPT = 3, IT_START = 4 }
 Defines Thread Interaction types. More...
enum  EThreadState {
  TS_UNKNOWN, TS_UNSTARTED, TS_RUNNING, TS_SLEEPING,
  TS_BLOCKED, TS_WAITING, TS_TERMINATED
}
 Defines thread states. More...
enum  EObjectReferenceType {
  OR_CLASS = 1, OR_FIELD = 2, OR_ARRAY_ELEMENT = 3, OR_JAVA_CLASS_LOADER = 4,
  OR_JAVA_REFERENCE_SIGNERS = 5, OR_JAVA_PROTECTION_DOMAIN = 6, OR_INTERFACE = 7, OR_STATIC_FIELD = 8,
  OR_CONSTANT_POOL = 9, OR_SUPERCLASS = 10, OR_JAVA_JNI_GLOBAL = 21, OR_SYSTEM_CLASS = 22,
  OR_MONITOR = 23, OR_STACK_LOCAL = 24, OR_JAVA_JNI_LOCAL = 25, OR_THREAD = 26,
  OR_OTHER = 27
}
 Defines object reference types. More...

Variables

Data Request Types

The Data Request Types supported by MPI. Used for specifying the data items for an MPI event or a data request. Can be OR'ed together for specifying multiple items.

const TDataRequestType DR_NONE = 0x00000000
 No data.
const TDataRequestType DR_THREAD_ID = 0x00000001
 Thread id. Unique for the duration of the profiled application.
const TDataRequestType DR_MODULE_ID = 0x00000002
 Unique module id.
const TDataRequestType DR_CLASS_ID = 0x00000004
 Unique class id.
const TDataRequestType DR_METHOD_ID = 0x00000008
 Unique method id.
const TDataRequestType DR_OBJECT_ID = 0x00000010
 Unique object id.
const TDataRequestType DR_METHOD_NAME = 0x00010000
 Method name (developer-friendly).
const TDataRequestType DR_METHOD_SIGNATURE = 0x00020000
 Method signature (developer-friendly).
const TDataRequestType DR_SOURCE_FILE_NAME = 0x00040000
 Name of the source file in which a method is defined.
const TDataRequestType DR_METHOD_LINE_NUMBERS = 0x00080000
 First and last source file line numbers of a method.
const TDataRequestType DR_MODULE_NAME = 0x00100000
 Module name.
const TDataRequestType DR_CLASS_NAME = 0x00200000
 Class name.
const TDataRequestType DR_METHOD_CODE = 0x00400000
 Compiled method code.
const TDataRequestType DR_NATIVE_TO_SRC_LINE_MAP = 0x00800000
 Mapping of compiled method JITted (native) code to source line numbers.
const TDataRequestType DR_NATIVE_TO_MANAGED_LINE_MAP = 0x01000000
 Mapping of compiled method JITted (native) code to managed code (Java byte-code or .NET IL) offsets.
const TDataRequestType DR_MANAGED_TO_SRC_LINE_MAP = 0x02000000
 Mapping of managed code (Java byte-code or .NET IL) to source line numbers.
const TDataRequestType DR_JAVA_NATIVE_CLASS_NAME = 0x04000000
 Native (non-translated) class name (Java-only).
const TDataRequestType DR_DOTNET_MODULE_PREJIT = 0x10000000
const TDataRequestType DR_DOTNET_METHOD_TOKEN = 0x20000000
 Method token (.NET only).
const TDataRequestType DR_JAVA_NATIVE_METHOD_NAME = 0x40000000
 Native (non-translated) method name (Java-only).
const TDataRequestType DR_JAVA_NATIVE_METHOD_SIGNATURE = 0x80000000
 Native (mangled) method signature (Java-only).
const TDataRequestType DR_THREAD_NAME = 0x00010000
 Thread name.
const TDataRequestType DR_THREAD_GROUP = 0x00020000
 Thread group name. Currently supported only for Java.
const TDataRequestType DR_THREAD_PARENT_GROUP = 0x00040000
 Name of the parent group of this thread's group. Currently supported only for Java.
const TDataRequestType DR_ABSOLUTE_NATIVE_STACK_TRACE = 0x00080000
 Stack trace of the current thread, using absolute machine IP (.NET only).
const TDataRequestType DR_VM_RELATIVE_STACK_TRACE = 0x00100000
 Stack trace of the current thread, using relative VM instruction offsets.
const TDataRequestType DR_THREAD_ELAPSED_TIME = 0x00200000
 Thread elapsed time.
const TDataRequestType DR_THREAD_CPU_TIME = 0x00400000
 Thread elapsed time.
const TDataRequestType DR_THREAD_STATE = 0x00800000
 Thread state.
const TDataRequestType DR_CURRENT_MONITOR = 0x01000000
 Id of the object (if any) whose monitor the thread is waiting for (Java only).
const TDataRequestType DR_THREAD_INFO
 Thread information (name, group and parent group).
const TDataRequestType DR_MONITOR_OWNER_THREAD_ID = 0x00010000
 Id of the thread owning the contended monitor.
const TDataRequestType DR_OBJECT_INFO = 0x00020000
 Object information.
const TDataRequestType DR_MONITOR_TIMEOUT = 0x00040000
 Monitor timeout for "wait" operations, in milliseconds.
const TDataRequestType DR_MONITOR_TIMED_OUT = 0x00800000
 Monitor timeout expiration status for "wait" operations.
const TDataRequestType DR_THREAD_INTERACTION_TYPE = 0x01000000
 Type of interaction between threads,.
const TDataRequestType DR_MONITOR_OWN_WAITERS = 0x00080000
 List of threads waiting to own the monitor.
const TDataRequestType DR_MONITOR_NOTIFY_WAITERS = 0x00100000
 List of threads waiting to be notified by the monitor.
const TDataRequestType DR_ALLOC_VM_INSTRUCTION_OFFSET = 0x00200000
 The VM instruction index (relative to the beginning of the method) where an object was allocated. Can be used with DR_METHOD_ID to identify the object allocation site (Java-only).
const TDataRequestType DR_OBJECT_AGE = 0x00400000
 The number of Garbage Collection cycles an object survived (Java-only).
const TDataRequestType DR_JAVA_HEAP_USAGE = 0x00010000
 Heap usage information. Used with SHeapUsage (Java-only).
const TDataRequestType DR_ACTIVITY_PATH = 0x00010000
 Activity path defined by an External Controller with the EV_EC_CONFIGURE event.
const TDataRequestType DR_DOTNET_GC_MOVED_REF_INFO = 0x00010000
 Information about objects moved during Garbage Collection (.NET only).
const TDataRequestType DR_JAVA_DYNAMIC_CODE = 0x00010000
 Dynamic code information (Java-only).
const TDataRequestType DR_COMMAND_ID = 0x00010000
 Id of a Custom Command passed with the EV_EC_CUSTOM_COMMAND event.
const TDataRequestType DR_COMMAND_DATA = 0x00020000
 Custom Command Data passed with the EV_EC_CUSTOM_COMMAND event.


Detailed Description

Defines the Martini Profiling Interface API and related data types

Typedef Documentation

typedef TResult(* TClientInstantiate)(IMpi *pMpiApi, TId clientId, const char *szOptions)

The MPI client must implement an initialization function whose name is MPICL_Instantiate and whose type is TClientInstantiate. This method is called during initialization phase by the module that implements MPI. The client is expected to initialize itself and register for events from within this function.

Parameters:
[in] pMpiAPI MPI interface object. With this interface object all MPI API's can be called
[in] clientId Id of the client, to be passed with all MPI functions.
[in] szOptions Client-specific options in the following format: param=value[,param=value]*
Return values:
MRTE_RESULT_OK Client successfully initialized
MRTE_RESULT_FAIL Client failed to initialize
MRTE_RESULT_OUT_OF_MEMORY Out of memory
MRTE_ERROR_PHASE_FAILURE Can't instantiate after initialization phase

typedef TResult(* TDotNetUnmanagedStackWalkCallBack)(SThreadInfo *pData, void *context, unsigned int contextSize, U64 firstUnmanagedCallSiteIP, U64 terminatingManagedCallSiteIP)

A .NET-specific callback function that informs clients of an unmanaged stack frame encountered during a Stack Trace request (

See also:
IMpi::GetThreadInfo). Multiple consecutive unmanaged frames are reported as a single frame by this function. The firstUnmanagedCallSiteIP and terminatingManagedCallSiteIP arguments can be used to determine the start and end IPs of the unmanged frame(s).
Parameters:
[in,out] pData The pData argument supplied to GetThreadInfo. The client can use this to populate the pData->nativeAbsoluteStack field with unmanged stack frame information.
[in] context The context (machine registers, etc) of the unmanged frame.
[in] contextSize The size of the context parameter in bytes
[in] firstUnmanagedCallSiteIP IP of the first unmanaged call site.
[in] terminatingManagedCallSiteIP IP of the next managed frame following this unmanaged frame. May be 0 if not enough space was allocated for the stack trace array.
Returns:
The Client should return MRTE_RESULT_OK to notify the Martini implementation to continue stack walk, or any other value (e.g, MRTE_ERROR_FAIL) to terminate the stack walk.


Enumeration Type Documentation

enum EArrayType

Enumerator indicating the type of an array object. Used with the SObjectInfo struct.

Enumerator:
AT_NONE  object is not an array
AT_CLASS  array of classes
AT_BOOL  array of booleans
AT_CHAR  array of chars
AT_S1  array of signed bytes
AT_U1  array of unsigned bytes
AT_S2  array of signed double-bytes
AT_U2  array of unsigned double-bytes
AT_S4  array of signed 4-bytes
AT_U4  array of unsigned 4-bytes
AT_S8  array of signed 8-bytes
AT_U8  array of unsigned 8-bytes
AT_FLOAT  array of floats
AT_DOUBLE  array of doubles
AT_STRING  array of strings
AT_VOID  array of voids
AT_OTHER  array of unknown types

Defines configuration options

Used with the IMpi::Configure() function as a bit-mask for the configuration options of the loaded Martini interface module.

See also:
IMpi::Configure()
Remarks:
All configuration options are currently supported only in .NET.
Enumerator:
CF_NONE  None.
CF_DOTNET_USE_VM_IDS  Set this to receive native VM id's instead of MPI allocated id's.

Applies for the following MPI elements: thread, module, class and method

CF_DOTNET_NO_INLINING  Set this to disable inlining in the VM.
CF_DOTNET_DISABLE_PREJIT_USE  Set this to disable the VM from using pre-JITted (NGEN'ed) modules.
CF_LAST  End sentinel.

Defines MPI Event Groups.

Enumerator:
EG_NONE  No group.
EG_CALL_GRAPH  Call Graph events: EV_METHOD_ENTER, EV_METHOD_LEAVE.
EG_HEAP  Heap events: EV_OBJECT_ALLOC, EV_OBJECT_FREE.
EG_MONITOR  Monitor events: EV_MONITOR_WAIT, EV_MONITOR_WAITED, EV_CONTENDED_MONITOR_ENTER, EV_CONTENDED_MONITOR_ENTERED.
EG_THREAD_INTERACTION  Thread Interaction events: EV_THREAD_INTERACTION.
EG_LAST  End sentinel.

Defines possible destinations for messages sent with the IMpi::MessageLog function. Values can be OR'ed together to specify multiple destinations.

Enumerator:
MD_LOG_FILE  Message is sent to the log file of the MPI module.
MD_EXTERNAL_CONTROL  Message is sent to an External Control module, if one is loaded.

Defines message types for the IMpi::MessageLog function

Enumerator:
MT_ERROR  A critical error. When an External Controller module is loaded, it will terminate the application in response to this message.
MT_INFORMATIVE  Informative message.
MT_DEBUG  Debug message.

Defines method access (scope or visibility) types. Used with Call Graph filters

Enumerator:
MAT_NONE  None.
MAT_CLASS_INTERNAL  Method can be accessed from within the same class only (private method).
MAT_PACKAGE_INTERNAL  Method can be accessed from within the Java package only (public method of a package-internal class).
MAT_MODULE_INTERNAL  Same as MAT_PACKAGE_INTERNAL, using .NET nomenclature instead of Java.
MAT_PACKAGE_API  Method can be accessed from anywhere, including other Java packages (public method of a public class).
MAT_MODULE_API  Same as MAT_PACKAGE_API, using .NET nomenclature instead of Java.

Enumerator:
OR_CLASS  Reference from an object to its class.
OR_FIELD  Reference from an object to the value of one of its instance fields.
OR_ARRAY_ELEMENT  Reference from an array to one of its elements.
OR_JAVA_CLASS_LOADER  Reference from a class to its class loader (Java only).
OR_JAVA_REFERENCE_SIGNERS  Reference from a class to its signers array (Java only).
OR_JAVA_PROTECTION_DOMAIN  Reference from a class to its protection domain (Java only).
OR_INTERFACE  Reference from a class to one of its interfaces.
OR_STATIC_FIELD  Reference from a class to the value of one of its static fields.
OR_CONSTANT_POOL  Reference from a class to a resolved entry in the constant pool.
OR_SUPERCLASS  Reference from a class to its superclass.
OR_JAVA_JNI_GLOBAL  Heap root reference: JNI global reference (Java only).
OR_SYSTEM_CLASS  Heap root reference: System class.
OR_MONITOR  Heap root reference: monitor.
OR_STACK_LOCAL  Heap root reference: local variable on the stack.
OR_JAVA_JNI_LOCAL  Heap root reference: JNI local reference (Java only)
OR_THREAD  Heap root reference: Thread.
OR_OTHER  Heap root reference: other heap root reference.

Defines MPI supported runtime types (Virtual Machines)

Enumerator:
RT_JAVA  Java.
RT_DOTNET  .NET
RT_JIT_PROFILING  JIT profiling.

Defines Thread Interaction types

Enumerator:
IT_NOTIFY_ALL  A thread generated a notification on a monitor to wake up all waiting threads.
IT_NOTIFY  A thread generated a notification on a monitor to wake up a single thread.
IT_INTERRUPT  A thread interrupted the execution of another thread.
IT_START  A thread started a new thread.

Enumerator indicating the a thread state. A thread can be in only one state at a given point in time.

Remarks:
- In .NET, the TS_SLEEPING and TS_WAITING states are not supported. The TS_BLOCKED state is used to identify a .NET thread which is blocked as a result of a call to Wait, Sleep, or Join.
Enumerator:
TS_UNKNOWN  Unknown state.
TS_UNSTARTED  Thread was created but not yet started.
TS_RUNNING  Thread is running.
TS_SLEEPING  Thread is sleeping (Java only).
TS_BLOCKED  Thread is blocked. In Java, the thread is waiting for a monitor lock.
TS_WAITING  Thread is waiting on a monitor (Java only).
TS_TERMINATED  Thread has stopped execution.


Variable Documentation

const TDataRequestType DR_METHOD_NAME = 0x00010000

Method name in a developer friendly format. The internal VM method name is translated to the name used by developers in their programs, and is the one

Method signature in a developer friendly format. The internal VM signature is translated to the signature expected by developers



Generated on Thu Mar 6 15:07:57 2008 for Martini by doxygen 1.5.5