00001 #ifndef __UPF_CLASSINFO_IDL__
00002 #define __UPF_CLASSINFO_IDL__
00003
00004 #include "IObject.idl"
00005 #include "IClassFactory.idl"
00006
00007 module upf
00008 {
00009
00026 interface IClassInfo : IObject
00027 {
00029 struct Property
00030 {
00032 string name;
00034 string value;
00035 };
00037 typedef sequence<Property> Properties;
00038
00040 string getName();
00041
00043 CID getCID();
00044
00048 IClassFactory getFactory();
00049
00051 IIDsList getInterfaces();
00052
00054 boolean implementsInterface(in IID iface);
00055
00060 string getProperty(in string name);
00061
00065 Properties getProperties();
00066 };
00067 #pragma single_impl IClassInfo upf.impl.ClassInfo
00068 #pragma version IClassInfo 1.0
00069
00070 };
00071
00072 #endif