import "ITypeInfo.idl";
Inheritance diagram for upf::ITypeInfo:
This class and derived classes are used to implement reflexion (ability to inspect types at runtime, e.g. enumerate inteface's methods and call them without compilation-time knowledge of the type).
ITypeInfo objects are returned by various IInterfaceInfo methods. IInterfaceInfo instances are returned by IManager as means of interface description.
Public Types | |
enum | Kind { TYPE_INTERFACE, TYPE_TYPEDEF, TYPE_NATIVE_TYPE, TYPE_STRUCT, TYPE_CONST, TYPE_UNION, TYPE_ENUM } |
Basic type categorization. More... | |
Public Methods | |
Kind | getKind () |
Returns basic "type category" of the type represented by this ITypeInfo instance (interface, typedef, elementary type, ...). | |
string | getName () |
Returns type name. |
|
Basic type categorization.
|
|
Returns basic "type category" of the type represented by this ITypeInfo instance (interface, typedef, elementary type, ...). Use this information to query type info object for more specific interface with detailed information about the type. For example, if getKind returns TYPE_INTERFACE, then you can query the object for upf::IInterfaceInfo: // C++ example: Ptr<ITypeInfo> typeinfo = ...; if (typeinfo->getKind() == ITypeInfo::TYPE_INTERFACE) { Ptr<IInterfaceInfo> info2 = typeinfo; // will certainly be != NULL ... } |
|
Returns type name.
The name is fully qualified and uses dotted notation (for example, interface defined as |