The ClassInformation2 method of the IJavaEventMonitorIDInfo3 interface returns the ClassID of the Java class's superclass, an array of ClassIDs representing interfaces implemented by the class, and an array of MethodIDs for all methods of the class.
Use this method to retrieve more detailed information about a class including the ClassID of the class's superclass (or NULL if the class is java.lang.Object), an array of ClassIDs for all the interfaces implemented by the class, and an array of MethodIDs for all the class's methods. An interface may appear in the returned interface list more than once. Base interfaces of explicitly implemented interfaces will be in the list. Consequently, it is not necessary to call ClassInformation2 again for each listed interface to retrieve the interfaces implemented by a superclass.
The list of methods returned by ClassInformation2 includes the contents of the class's vtable plus all static and non-virtual methods. The list of methods will include any private methods of superclasses or other methods that may not be accessible through the given class. Methods may be in the list more than once, and if the class is abstract, abstract methods may also be listed.
The ClassInformation2 method is implemented only by the IJavaEventMonitorIDInfo3 interface.
HRESULT ClassInformation2(ClassID class_id, ClassID *psuperclass, ClassID*pinterfaces, unsigned int *pinterfaces_length, MethodID *pimplemented_methods, unsigned int *pimplemented_methods_length);
[in] class_id | The ClassID of the class to be profiled. |
[out] *psuperclass | The ClassID of the class's superclass. |
[out] *pinterfaces | The ClassIDs for all the interfaces implemented by the class. |
[out] *pinterfaces_length | The number of interfaces in the returned list. |
[out] *pimplemented_methods | The MethodIDs for all the class's methods. |
[out] *pimplemented_methods_length | The number of methods in the returned list. |