home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12otk1.exe / include / compmgr.xh < prev    next >
Text File  |  1997-04-02  |  67KB  |  2,098 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: F:\build\os2\ship\include\compmgr.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emitxh: 2.47
  8.  */
  9.  
  10. #ifndef SOM_M_ComponentManager_xh
  11. #define SOM_M_ComponentManager_xh
  12.  
  13. class M_ComponentManager;
  14.  
  15. #define M_ComponentManager_MajorVersion 1
  16. #define M_ComponentManager_MinorVersion 0
  17.  
  18. /* C++ SOM defs */
  19. #include <somcls.xh>
  20. #include <somcm.xh>
  21.  
  22. /* C++ parent defs */
  23. #ifndef SOM_SOMClass_xh
  24. #include <somcls.xh>
  25. #endif
  26.  
  27. #ifndef M_ComponentManager_API
  28. #define M_ComponentManager_API
  29. /*
  30.  * -- The Class API
  31.  */
  32.  
  33. /*
  34.  * Start of bindings for IDL types
  35.  */
  36.  
  37. class SOMClass;
  38. class SOMObject;
  39. class ODFrame;
  40. class ODFacet;
  41. class ODPlatformCanvas;
  42. class Component;
  43. class ComponentManager;
  44. class M_ComponentManager;
  45. typedef
  46. unsigned long  OSType;
  47.  
  48. typedef
  49. struct ComponentDescription {
  50. OSType componentType;
  51. OSType componentSubType;
  52. OSType componentManufacturer;
  53. ODULong componentVersion;
  54. ODULong componentFlags;
  55. ODULong componentFlagsMask;
  56. } ComponentDescription;
  57.  
  58. #define CMGR_MAX_STRING 256 /* 256 */
  59. typedef
  60. char  CMGRString[256];
  61.  
  62. typedef
  63. struct ComponentRegistryData {
  64. OSType componentType;
  65. OSType componentSubType;
  66. OSType componentManufacturer;
  67. ODULong componentFlags;
  68. ODULong componentVersion;
  69. CMGRString componentDLL;
  70. CMGRString componentClassName;
  71. CMGRString componentName;
  72. CMGRString componentInfo;
  73. } ComponentRegistryData;
  74.  
  75.  
  76. /*
  77.  * End of bindings for IDL types.
  78.  */
  79.  
  80. /*
  81.  * -- M_ComponentManager is a metaclass for ComponentManager. Make sure ComponentManager is known.
  82.  */
  83. class ComponentManager;
  84.  
  85.  
  86. /* A procedure to create the M_ComponentManager Class */
  87. SOMEXTERN SOMClass * SOMLINK M_ComponentManagerNewClass(
  88.         integer4 majorVersion,
  89.         integer4 minorVersion);
  90.  
  91. /* The API to the M_ComponentManager class object, and the methods it introduces. */
  92. SOMEXTERN struct M_ComponentManagerClassDataStructure {
  93.     SOMClass *classObject;
  94.     somMToken Reserved1;
  95. } SOMDLINK M_ComponentManagerClassData;
  96. #define _M_ComponentManager M_ComponentManagerClassData.classObject
  97.  
  98. /* The API to parentMtabs for M_ComponentManager, and the instance data it introduces. */
  99. SOMEXTERN struct M_ComponentManagerCClassDataStructure {
  100.     somMethodTabs parentMtab;
  101.     somDToken              instanceDataToken;
  102. } SOMDLINK M_ComponentManagerCClassData;
  103.  
  104. /*
  105.  * -- Typedefs for M_ComponentManager Method Procedures
  106.  */
  107. SOMEXTERN {
  108.  
  109. /*
  110.  * -- Typedefs for Reintroduced Wrapper Methods
  111.  */
  112. typedef long   SOMLINK somTP_M_ComponentManager__get_somDataAlignment(M_ComponentManager *somSelf);
  113. typedef somTP_M_ComponentManager__get_somDataAlignment *somTD_M_ComponentManager__get_somDataAlignment;
  114. typedef SOMClass_somOffsets   SOMLINK somTP_M_ComponentManager__get_somInstanceDataOffsets(M_ComponentManager *somSelf);
  115. typedef somTP_M_ComponentManager__get_somInstanceDataOffsets *somTD_M_ComponentManager__get_somInstanceDataOffsets;
  116. typedef SOMClass_SOMClassSequence   SOMLINK somTP_M_ComponentManager__get_somDirectInitClasses(M_ComponentManager *somSelf);
  117. typedef somTP_M_ComponentManager__get_somDirectInitClasses *somTD_M_ComponentManager__get_somDirectInitClasses;
  118. typedef ComponentManager*   SOMLINK somTP_M_ComponentManager_somNew(M_ComponentManager *somSelf);
  119. typedef somTP_M_ComponentManager_somNew *somTD_M_ComponentManager_somNew;
  120. typedef SOMObject*   SOMLINK somTP_M_ComponentManager_somNewNoInit(M_ComponentManager *somSelf);
  121. typedef somTP_M_ComponentManager_somNewNoInit *somTD_M_ComponentManager_somNewNoInit;
  122. typedef SOMObject*   SOMLINK somTP_M_ComponentManager_somRenew(M_ComponentManager *somSelf, 
  123.         void* obj);
  124. typedef somTP_M_ComponentManager_somRenew *somTD_M_ComponentManager_somRenew;
  125. typedef SOMObject*   SOMLINK somTP_M_ComponentManager_somRenewNoInit(M_ComponentManager *somSelf, 
  126.         void* obj);
  127. typedef somTP_M_ComponentManager_somRenewNoInit *somTD_M_ComponentManager_somRenewNoInit;
  128. typedef SOMObject*   SOMLINK somTP_M_ComponentManager_somRenewNoZero(M_ComponentManager *somSelf, 
  129.         void* obj);
  130. typedef somTP_M_ComponentManager_somRenewNoZero *somTD_M_ComponentManager_somRenewNoZero;
  131. typedef SOMObject*   SOMLINK somTP_M_ComponentManager_somRenewNoInitNoZero(M_ComponentManager *somSelf, 
  132.         void* obj);
  133. typedef somTP_M_ComponentManager_somRenewNoInitNoZero *somTD_M_ComponentManager_somRenewNoInitNoZero;
  134. typedef somToken   SOMLINK somTP_M_ComponentManager_somAllocate(M_ComponentManager *somSelf, 
  135.         long size);
  136. typedef somTP_M_ComponentManager_somAllocate *somTD_M_ComponentManager_somAllocate;
  137. typedef void   SOMLINK somTP_M_ComponentManager_somDeallocate(M_ComponentManager *somSelf, 
  138.         somToken memptr);
  139. typedef somTP_M_ComponentManager_somDeallocate *somTD_M_ComponentManager_somDeallocate;
  140. typedef void   SOMLINK somTP_M_ComponentManager_somInitClass(M_ComponentManager *somSelf, 
  141.         string className, 
  142.         SOMClass* parentClass, 
  143.         long dataSize, 
  144.         long maxStaticMethods, 
  145.         long majorVersion, 
  146.         long minorVersion);
  147. typedef somTP_M_ComponentManager_somInitClass *somTD_M_ComponentManager_somInitClass;
  148. typedef void   SOMLINK somTP_M_ComponentManager_somInitMIClass(M_ComponentManager *somSelf, 
  149.         long inherit_vars, 
  150.         string className, 
  151.         SOMClass_SOMClassSequence* parentClasses, 
  152.         long dataSize, 
  153.         long dataAlignment, 
  154.         long maxStaticMethods, 
  155.         long majorVersion, 
  156.         long minorVersion);
  157. typedef somTP_M_ComponentManager_somInitMIClass *somTD_M_ComponentManager_somInitMIClass;
  158. typedef somMToken   SOMLINK somTP_M_ComponentManager_somAddStaticMethod(M_ComponentManager *somSelf, 
  159.         somId methodId, 
  160.         somId methodDescriptor, 
  161.         somMethodPtr method, 
  162.         somMethodPtr redispatchStub, 
  163.         somMethodPtr applyStub);
  164. typedef somTP_M_ComponentManager_somAddStaticMethod *somTD_M_ComponentManager_somAddStaticMethod;
  165. typedef void   SOMLINK somTP_M_ComponentManager_somAddDynamicMethod(M_ComponentManager *somSelf, 
  166.         somId methodId, 
  167.         somId methodDescriptor, 
  168.         somMethodPtr method, 
  169.         somMethodPtr applyStub);
  170. typedef somTP_M_ComponentManager_somAddDynamicMethod *somTD_M_ComponentManager_somAddDynamicMethod;
  171. typedef void   SOMLINK somTP_M_ComponentManager_somOverrideSMethod(M_ComponentManager *somSelf, 
  172.         somId methodId, 
  173.         somMethodPtr method);
  174. typedef somTP_M_ComponentManager_somOverrideSMethod *somTD_M_ComponentManager_somOverrideSMethod;
  175. typedef void   SOMLINK somTP_M_ComponentManager_somClassReady(M_ComponentManager *somSelf);
  176. typedef somTP_M_ComponentManager_somClassReady *somTD_M_ComponentManager_somClassReady;
  177. typedef somMethodPtr   SOMLINK somTP_M_ComponentManager_somGetApplyStub(M_ComponentManager *somSelf, 
  178.         somId methodId);
  179. typedef somTP_M_ComponentManager_somGetApplyStub *somTD_M_ComponentManager_somGetApplyStub;
  180. typedef somClassDataStructure*   SOMLINK somTP_M_ComponentManager_somGetClassData(M_ComponentManager *somSelf);
  181. typedef somTP_M_ComponentManager_somGetClassData *somTD_M_ComponentManager_somGetClassData;
  182. typedef void   SOMLINK somTP_M_ComponentManager_somSetClassData(M_ComponentManager *somSelf, 
  183.         somClassDataStructure* cds);
  184. typedef somTP_M_ComponentManager_somSetClassData *somTD_M_ComponentManager_somSetClassData;
  185. typedef somMethodTab*   SOMLINK somTP_M_ComponentManager_somGetClassMtab(M_ComponentManager *somSelf);
  186. typedef somTP_M_ComponentManager_somGetClassMtab *somTD_M_ComponentManager_somGetClassMtab;
  187. typedef long   SOMLINK somTP_M_ComponentManager_somGetInstanceOffset(M_ComponentManager *somSelf);
  188. typedef somTP_M_ComponentManager_somGetInstanceOffset *somTD_M_ComponentManager_somGetInstanceOffset;
  189. typedef long   SOMLINK somTP_M_ComponentManager_somGetInstancePartSize(M_ComponentManager *somSelf);
  190. typedef somTP_M_ComponentManager_somGetInstancePartSize *somTD_M_ComponentManager_somGetInstancePartSize;
  191. typedef long   SOMLINK somTP_M_ComponentManager_somGetInstanceSize(M_ComponentManager *somSelf);
  192. typedef somTP_M_ComponentManager_somGetInstanceSize *somTD_M_ComponentManager_somGetInstanceSize;
  193. typedef somDToken   SOMLINK somTP_M_ComponentManager_somGetInstanceToken(M_ComponentManager *somSelf);
  194. typedef somTP_M_ComponentManager_somGetInstanceToken *somTD_M_ComponentManager_somGetInstanceToken;
  195. typedef somDToken   SOMLINK somTP_M_ComponentManager_somGetMemberToken(M_ComponentManager *somSelf, 
  196.         long memberOffset, 
  197.         somDToken instanceToken);
  198. typedef somTP_M_ComponentManager_somGetMemberToken *somTD_M_ComponentManager_somGetMemberToken;
  199. typedef boolean   SOMLINK somTP_M_ComponentManager_somGetMethodData(M_ComponentManager *somSelf, 
  200.         somId methodId, 
  201.         somMethodData* md);
  202. typedef somTP_M_ComponentManager_somGetMethodData *somTD_M_ComponentManager_somGetMethodData;
  203. typedef somMethodProc*   SOMLINK somTP_M_ComponentManager_somGetRdStub(M_ComponentManager *somSelf, 
  204.         somId methodId);
  205. typedef somTP_M_ComponentManager_somGetRdStub *somTD_M_ComponentManager_somGetRdStub;
  206. typedef somId   SOMLINK somTP_M_ComponentManager_somGetMethodDescriptor(M_ComponentManager *somSelf, 
  207.         somId methodId);
  208. typedef somTP_M_ComponentManager_somGetMethodDescriptor *somTD_M_ComponentManager_somGetMethodDescriptor;
  209. typedef long   SOMLINK somTP_M_ComponentManager_somGetMethodIndex(M_ComponentManager *somSelf, 
  210.         somId id);
  211. typedef somTP_M_ComponentManager_somGetMethodIndex *somTD_M_ComponentManager_somGetMethodIndex;
  212. typedef somMToken   SOMLINK somTP_M_ComponentManager_somGetMethodToken(M_ComponentManager *somSelf, 
  213.         somId methodId);
  214. typedef somTP_M_ComponentManager_somGetMethodToken *somTD_M_ComponentManager_somGetMethodToken;
  215. typedef string   SOMLINK somTP_M_ComponentManager_somGetName(M_ComponentManager *somSelf);
  216. typedef somTP_M_ComponentManager_somGetName *somTD_M_ComponentManager_somGetName;
  217. typedef boolean   SOMLINK somTP_M_ComponentManager_somGetNthMethodData(M_ComponentManager *somSelf, 
  218.         long n, 
  219.         somMethodData* md);
  220. typedef somTP_M_ComponentManager_somGetNthMethodData *somTD_M_ComponentManager_somGetNthMethodData;
  221. typedef somId   SOMLINK somTP_M_ComponentManager_somGetNthMethodInfo(M_ComponentManager *somSelf, 
  222.         long n, 
  223.         somId* descriptor);
  224. typedef somTP_M_ComponentManager_somGetNthMethodInfo *somTD_M_ComponentManager_somGetNthMethodInfo;
  225. typedef long   SOMLINK somTP_M_ComponentManager_somGetNumMethods(M_ComponentManager *somSelf);
  226. typedef somTP_M_ComponentManager_somGetNumMethods *somTD_M_ComponentManager_somGetNumMethods;
  227. typedef long   SOMLINK somTP_M_ComponentManager_somGetNumStaticMethods(M_ComponentManager *somSelf);
  228. typedef somTP_M_ComponentManager_somGetNumStaticMethods *somTD_M_ComponentManager_somGetNumStaticMethods;
  229. typedef SOMClass*   SOMLINK somTP_M_ComponentManager_somGetParent(M_ComponentManager *somSelf);
  230. typedef somTP_M_ComponentManager_somGetParent *somTD_M_ComponentManager_somGetParent;
  231. typedef SOMClass_SOMClassSequence   SOMLINK somTP_M_ComponentManager_somGetParents(M_ComponentManager *somSelf);
  232. typedef somTP_M_ComponentManager_somGetParents *somTD_M_ComponentManager_somGetParents;
  233. typedef void   SOMLINK somTP_M_ComponentManager_somGetVersionNumbers(M_ComponentManager *somSelf, 
  234.         long* majorVersion, 
  235.         long* minorVersion);
  236. typedef somTP_M_ComponentManager_somGetVersionNumbers *somTD_M_ComponentManager_somGetVersionNumbers;
  237. typedef boolean   SOMLINK somTP_M_ComponentManager_somFindMethod(M_ComponentManager *somSelf, 
  238.         somId methodId, 
  239.         somMethodPtr* m);
  240. typedef somTP_M_ComponentManager_somFindMethod *somTD_M_ComponentManager_somFindMethod;
  241. typedef boolean   SOMLINK somTP_M_ComponentManager_somFindMethodOk(M_ComponentManager *somSelf, 
  242.         somId methodId, 
  243.         somMethodPtr* m);
  244. typedef somTP_M_ComponentManager_somFindMethodOk *somTD_M_ComponentManager_somFindMethodOk;
  245. typedef somMethodPtr   SOMLINK somTP_M_ComponentManager_somFindSMethod(M_ComponentManager *somSelf, 
  246.         somId methodId);
  247. typedef somTP_M_ComponentManager_somFindSMethod *somTD_M_ComponentManager_somFindSMethod;
  248. typedef somMethodPtr   SOMLINK somTP_M_ComponentManager_somFindSMethodOk(M_ComponentManager *somSelf, 
  249.         somId methodId);
  250. typedef somTP_M_ComponentManager_somFindSMethodOk *somTD_M_ComponentManager_somFindSMethodOk;
  251. typedef somMethodPtr   SOMLINK somTP_M_ComponentManager_somLookupMethod(M_ComponentManager *somSelf, 
  252.         somId methodId);
  253. typedef somTP_M_ComponentManager_somLookupMethod *somTD_M_ComponentManager_somLookupMethod;
  254. typedef boolean   SOMLINK somTP_M_ComponentManager_somCheckVersion(M_ComponentManager *somSelf, 
  255.         long majorVersion, 
  256.         long minorVersion);
  257. typedef somTP_M_ComponentManager_somCheckVersion *somTD_M_ComponentManager_somCheckVersion;
  258. typedef boolean   SOMLINK somTP_M_ComponentManager_somDescendedFrom(M_ComponentManager *somSelf, 
  259.         SOMClass* aClassObj);
  260. typedef somTP_M_ComponentManager_somDescendedFrom *somTD_M_ComponentManager_somDescendedFrom;
  261. typedef boolean   SOMLINK somTP_M_ComponentManager_somSupportsMethod(M_ComponentManager *somSelf, 
  262.         somId mId);
  263. typedef somTP_M_ComponentManager_somSupportsMethod *somTD_M_ComponentManager_somSupportsMethod;
  264. typedef somMethodPtr   SOMLINK somTP_M_ComponentManager_somDefinedMethod(M_ComponentManager *somSelf, 
  265.         somMToken method);
  266. typedef somTP_M_ComponentManager_somDefinedMethod *somTD_M_ComponentManager_somDefinedMethod;
  267. typedef void   SOMLINK somTP_M_ComponentManager_somOverrideMtab(M_ComponentManager *somSelf);
  268. typedef somTP_M_ComponentManager_somOverrideMtab *somTD_M_ComponentManager_somOverrideMtab;
  269. typedef void   SOMLINK somTP_M_ComponentManager_somDefaultInit(M_ComponentManager *somSelf, 
  270.         som3InitCtrl* ctrl);
  271. typedef somTP_M_ComponentManager_somDefaultInit *somTD_M_ComponentManager_somDefaultInit;
  272. typedef void   SOMLINK somTP_M_ComponentManager_somDestruct(M_ComponentManager *somSelf, 
  273.         octet doFree, 
  274.         som3DestructCtrl* ctrl);
  275. typedef somTP_M_ComponentManager_somDestruct *somTD_M_ComponentManager_somDestruct;
  276. typedef void   SOMLINK somTP_M_ComponentManager_somDefaultCopyInit(M_ComponentManager *somSelf, 
  277.         som3InitCtrl* ctrl, 
  278.         SOMObject* fromObj);
  279. typedef somTP_M_ComponentManager_somDefaultCopyInit *somTD_M_ComponentManager_somDefaultCopyInit;
  280. typedef M_ComponentManager*   SOMLINK somTP_M_ComponentManager_somDefaultAssign(M_ComponentManager *somSelf, 
  281.         som3AssignCtrl* ctrl, 
  282.         SOMObject* fromObj);
  283. typedef somTP_M_ComponentManager_somDefaultAssign *somTD_M_ComponentManager_somDefaultAssign;
  284. typedef void   SOMLINK somTP_M_ComponentManager_somDefaultConstCopyInit(M_ComponentManager *somSelf, 
  285.         som3InitCtrl* ctrl, 
  286.         SOMObject* fromObj);
  287. typedef somTP_M_ComponentManager_somDefaultConstCopyInit *somTD_M_ComponentManager_somDefaultConstCopyInit;
  288. typedef void   SOMLINK somTP_M_ComponentManager_somDefaultVCopyInit(M_ComponentManager *somSelf, 
  289.         som3InitCtrl* ctrl, 
  290.         SOMObject* fromObj);
  291. typedef somTP_M_ComponentManager_somDefaultVCopyInit *somTD_M_ComponentManager_somDefaultVCopyInit;
  292. typedef void   SOMLINK somTP_M_ComponentManager_somDefaultConstVCopyInit(M_ComponentManager *somSelf, 
  293.         som3InitCtrl* ctrl, 
  294.         SOMObject* fromObj);
  295. typedef somTP_M_ComponentManager_somDefaultConstVCopyInit *somTD_M_ComponentManager_somDefaultConstVCopyInit;
  296. typedef M_ComponentManager*   SOMLINK somTP_M_ComponentManager_somDefaultConstAssign(M_ComponentManager *somSelf, 
  297.         som3AssignCtrl* ctrl, 
  298.         SOMObject* fromObj);
  299. typedef somTP_M_ComponentManager_somDefaultConstAssign *somTD_M_ComponentManager_somDefaultConstAssign;
  300. typedef M_ComponentManager*   SOMLINK somTP_M_ComponentManager_somDefaultVAssign(M_ComponentManager *somSelf, 
  301.         som3AssignCtrl* ctrl, 
  302.         SOMObject* fromObj);
  303. typedef somTP_M_ComponentManager_somDefaultVAssign *somTD_M_ComponentManager_somDefaultVAssign;
  304. typedef M_ComponentManager*   SOMLINK somTP_M_ComponentManager_somDefaultConstVAssign(M_ComponentManager *somSelf, 
  305.         som3AssignCtrl* ctrl, 
  306.         SOMObject* fromObj);
  307. typedef somTP_M_ComponentManager_somDefaultConstVAssign *somTD_M_ComponentManager_somDefaultConstVAssign;
  308. typedef void   SOMLINK somTP_M_ComponentManager_somInit(M_ComponentManager *somSelf);
  309. typedef somTP_M_ComponentManager_somInit *somTD_M_ComponentManager_somInit;
  310. typedef void   SOMLINK somTP_M_ComponentManager_somFree(M_ComponentManager *somSelf);
  311. typedef somTP_M_ComponentManager_somFree *somTD_M_ComponentManager_somFree;
  312. typedef void   SOMLINK somTP_M_ComponentManager_somUninit(M_ComponentManager *somSelf);
  313. typedef somTP_M_ComponentManager_somUninit *somTD_M_ComponentManager_somUninit;
  314. typedef SOMClass*   SOMLINK somTP_M_ComponentManager_somGetClass(M_ComponentManager *somSelf);
  315. typedef somTP_M_ComponentManager_somGetClass *somTD_M_ComponentManager_somGetClass;
  316. typedef string   SOMLINK somTP_M_ComponentManager_somGetClassName(M_ComponentManager *somSelf);
  317. typedef somTP_M_ComponentManager_somGetClassName *somTD_M_ComponentManager_somGetClassName;
  318. typedef long   SOMLINK somTP_M_ComponentManager_somGetSize(M_ComponentManager *somSelf);
  319. typedef somTP_M_ComponentManager_somGetSize *somTD_M_ComponentManager_somGetSize;
  320. typedef boolean   SOMLINK somTP_M_ComponentManager_somIsA(M_ComponentManager *somSelf, 
  321.         SOMClass* aClassObj);
  322. typedef somTP_M_ComponentManager_somIsA *somTD_M_ComponentManager_somIsA;
  323. typedef boolean   SOMLINK somTP_M_ComponentManager_somIsInstanceOf(M_ComponentManager *somSelf, 
  324.         SOMClass* aClassObj);
  325. typedef somTP_M_ComponentManager_somIsInstanceOf *somTD_M_ComponentManager_somIsInstanceOf;
  326. typedef boolean   SOMLINK somTP_M_ComponentManager_somRespondsTo(M_ComponentManager *somSelf, 
  327.         somId mId);
  328. typedef somTP_M_ComponentManager_somRespondsTo *somTD_M_ComponentManager_somRespondsTo;
  329. typedef boolean   SOMLINK somTP_M_ComponentManager_somDispatch(M_ComponentManager *somSelf, 
  330.         somToken* retValue, 
  331.         somId methodId, 
  332.         va_list ap);
  333. typedef somTP_M_ComponentManager_somDispatch *somTD_M_ComponentManager_somDispatch;
  334. typedef boolean   SOMLINK somTP_M_ComponentManager_somClassDispatch(M_ComponentManager *somSelf, 
  335.         SOMClass* clsObj, 
  336.         somToken* retValue, 
  337.         somId methodId, 
  338.         va_list ap);
  339. typedef somTP_M_ComponentManager_somClassDispatch *somTD_M_ComponentManager_somClassDispatch;
  340. typedef boolean   SOMLINK somTP_M_ComponentManager_somCastObj(M_ComponentManager *somSelf, 
  341.         SOMClass* cls);
  342. typedef somTP_M_ComponentManager_somCastObj *somTD_M_ComponentManager_somCastObj;
  343. typedef boolean   SOMLINK somTP_M_ComponentManager_somResetObj(M_ComponentManager *somSelf);
  344. typedef somTP_M_ComponentManager_somResetObj *somTD_M_ComponentManager_somResetObj;
  345. typedef void   SOMLINK somTP_M_ComponentManager_somDispatchV(M_ComponentManager *somSelf, 
  346.         somId methodId, 
  347.         somId descriptor, 
  348.         va_list ap);
  349. typedef somTP_M_ComponentManager_somDispatchV *somTD_M_ComponentManager_somDispatchV;
  350. typedef long   SOMLINK somTP_M_ComponentManager_somDispatchL(M_ComponentManager *somSelf, 
  351.         somId methodId, 
  352.         somId descriptor, 
  353.         va_list ap);
  354. typedef somTP_M_ComponentManager_somDispatchL *somTD_M_ComponentManager_somDispatchL;
  355. typedef void*   SOMLINK somTP_M_ComponentManager_somDispatchA(M_ComponentManager *somSelf, 
  356.         somId methodId, 
  357.         somId descriptor, 
  358.         va_list ap);
  359. typedef somTP_M_ComponentManager_somDispatchA *somTD_M_ComponentManager_somDispatchA;
  360. typedef double   SOMLINK somTP_M_ComponentManager_somDispatchD(M_ComponentManager *somSelf, 
  361.         somId methodId, 
  362.         somId descriptor, 
  363.         va_list ap);
  364. typedef somTP_M_ComponentManager_somDispatchD *somTD_M_ComponentManager_somDispatchD;
  365. typedef SOMObject*   SOMLINK somTP_M_ComponentManager_somPrintSelf(M_ComponentManager *somSelf);
  366. typedef somTP_M_ComponentManager_somPrintSelf *somTD_M_ComponentManager_somPrintSelf;
  367. typedef void   SOMLINK somTP_M_ComponentManager_somDumpSelf(M_ComponentManager *somSelf, 
  368.         long level);
  369. typedef somTP_M_ComponentManager_somDumpSelf *somTD_M_ComponentManager_somDumpSelf;
  370. typedef void   SOMLINK somTP_M_ComponentManager_somDumpSelfInt(M_ComponentManager *somSelf, 
  371.         long level);
  372. typedef somTP_M_ComponentManager_somDumpSelfInt *somTD_M_ComponentManager_somDumpSelfInt;
  373. }
  374.  
  375. #endif /* M_ComponentManager_API */
  376.  
  377.  
  378. /*
  379.  * -- This emitter treats Method Tokens as Thunks by default.
  380.  * -- Use the sc modifier "nothunks" to change this default
  381.  */
  382. #undef somresolve_
  383. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  384.  
  385. /*
  386.  * -- The C++ Wrapper Class for M_ComponentManager
  387.  */
  388. class M_ComponentManager : public SOMClass
  389. {
  390. public:
  391.  
  392. // M_ComponentManager::new creates the class object if necessary, and then uses somNewNoInit
  393. // to allocate memory and create the object. Initialization is in ctors.
  394. void *operator new(size_t)
  395. {
  396.    if (!_M_ComponentManager) M_ComponentManagerNewClass(M_ComponentManager_MajorVersion,M_ComponentManager_MinorVersion);
  397.    return (void*)
  398.       SOM_Resolve(_M_ComponentManager,SOMClass,somNewNoInit)
  399.          ((SOMClass *)((void*)_M_ComponentManager));
  400. }
  401.  
  402. // M_ComponentManager::delete uses somDestruct.
  403. void operator delete(void * obj)
  404. {
  405.    if (obj && *(void**)obj) {
  406.       SOM_Resolve(obj,SOMObject,somFree)
  407.          ((SOMObject*)obj);
  408.    }
  409. }
  410.  
  411. M_ComponentManager& operator=(M_ComponentManager& fromObj)
  412. {
  413.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  414.    return *this;
  415. }
  416.  
  417. M_ComponentManager()
  418. {
  419.    if (*(void**)this != 
  420.        ((somParentMtabStructPtr)
  421.         (M_ComponentManagerCClassData.parentMtab))->mtab)
  422.       return;
  423.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  424. }
  425.  
  426. M_ComponentManager(M_ComponentManager* fromObj)
  427. {
  428.    if (*(void**)this != 
  429.        ((somParentMtabStructPtr)
  430.         (M_ComponentManagerCClassData.parentMtab))->mtab)
  431.       return;
  432.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  433. }
  434.  
  435. #ifdef __IBMCPP__
  436. #pragma info(nocnv,nopar)
  437. #endif
  438. M_ComponentManager(const M_ComponentManager* fromObj)
  439. {
  440.    if (*(void**)this != 
  441.        ((somParentMtabStructPtr)
  442.         (M_ComponentManagerCClassData.parentMtab))->mtab)
  443.       return;
  444.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  445. }
  446. #ifdef __IBMCPP__
  447. #pragma info(restore)
  448. #endif
  449.  
  450.  
  451. /*
  452.  * Reintroduce inherited methods
  453.  */
  454.  
  455. /* method: _get_somDataAlignment */
  456. long   _get_somDataAlignment()
  457. {
  458. /*
  459.  * Method from the IDL attribute statement:
  460.  * "readonly attribute long somDataAlignment"
  461.  */
  462.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,_get_somDataAlignment)
  463.     (this);
  464. }
  465.  
  466.  
  467. /* nonstatic method: _get_somInstanceDataOffsets */
  468. SOMClass_somOffsets   _get_somInstanceDataOffsets()
  469. {
  470. /*
  471.  * Method from the IDL attribute statement:
  472.  * "readonly attribute SOMClass_somOffsets somInstanceDataOffsets"
  473.  */
  474.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,_get_somInstanceDataOffsets)
  475.     (this);
  476. }
  477.  
  478.  
  479. /* nonstatic method: _get_somDirectInitClasses */
  480. SOMClass_SOMClassSequence   _get_somDirectInitClasses()
  481. {
  482. /*
  483.  * Method from the IDL attribute statement:
  484.  * "readonly attribute SOMClass_SOMClassSequence somDirectInitClasses"
  485.  */
  486.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,_get_somDirectInitClasses)
  487.     (this);
  488. }
  489.  
  490.  
  491. /* method: somNew */
  492. ComponentManager*  somNew()
  493. {
  494.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somNew)
  495.     (this);
  496. }
  497.  
  498.  
  499. /* method: somNewNoInit */
  500. SOMObject*   somNewNoInit()
  501. {
  502.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somNewNoInit)
  503.     (this);
  504. }
  505.  
  506.  
  507. /* method: somRenew */
  508. SOMObject*   somRenew(void* obj)
  509. {
  510.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somRenew)
  511.     (this,obj);
  512. }
  513.  
  514.  
  515. /* method: somRenewNoInit */
  516. SOMObject*   somRenewNoInit(void* obj)
  517. {
  518.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somRenewNoInit)
  519.     (this,obj);
  520. }
  521.  
  522.  
  523. /* method: somRenewNoZero */
  524. SOMObject*   somRenewNoZero(void* obj)
  525. {
  526.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somRenewNoZero)
  527.     (this,obj);
  528. }
  529.  
  530.  
  531. /* method: somRenewNoInitNoZero */
  532. SOMObject*   somRenewNoInitNoZero(void* obj)
  533. {
  534.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somRenewNoInitNoZero)
  535.     (this,obj);
  536. }
  537.  
  538.  
  539. /* nonstatic method: somAllocate */
  540. somToken   somAllocate(long size)
  541. {
  542.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somAllocate)
  543.     (this,size);
  544. }
  545.  
  546.  
  547. /* nonstatic method: somDeallocate */
  548. void   somDeallocate(somToken memptr)
  549. {
  550.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somDeallocate)
  551.     (this,memptr);
  552. }
  553.  
  554.  
  555. /* method: somInitClass */
  556. void   somInitClass(string className, 
  557.         SOMClass* parentClass, 
  558.         long dataSize, 
  559.         long maxStaticMethods, 
  560.         long majorVersion, 
  561.         long minorVersion)
  562. {
  563.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somInitClass)
  564.     (this,className,parentClass,dataSize,maxStaticMethods,majorVersion,minorVersion);
  565. }
  566.  
  567.  
  568. /* method: somInitMIClass */
  569. void   somInitMIClass(long inherit_vars, 
  570.         string className, 
  571.         SOMClass_SOMClassSequence* parentClasses, 
  572.         long dataSize, 
  573.         long dataAlignment, 
  574.         long maxStaticMethods, 
  575.         long majorVersion, 
  576.         long minorVersion)
  577. {
  578.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somInitMIClass)
  579.     (this,inherit_vars,className,parentClasses,dataSize,dataAlignment,maxStaticMethods,majorVersion,minorVersion);
  580. }
  581.  
  582.  
  583. /* method: somAddStaticMethod */
  584. somMToken   somAddStaticMethod(somId methodId, 
  585.         somId methodDescriptor, 
  586.         somMethodPtr method, 
  587.         somMethodPtr redispatchStub, 
  588.         somMethodPtr applyStub)
  589. {
  590.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somAddStaticMethod)
  591.     (this,methodId,methodDescriptor,method,redispatchStub,applyStub);
  592. }
  593.  
  594.  
  595. /* method: somAddDynamicMethod */
  596. void   somAddDynamicMethod(somId methodId, 
  597.         somId methodDescriptor, 
  598.         somMethodPtr method, 
  599.         somMethodPtr applyStub)
  600. {
  601.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somAddDynamicMethod)
  602.     (this,methodId,methodDescriptor,method,applyStub);
  603. }
  604.  
  605.  
  606. /* method: somOverrideSMethod */
  607. void   somOverrideSMethod(somId methodId, 
  608.         somMethodPtr method)
  609. {
  610.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somOverrideSMethod)
  611.     (this,methodId,method);
  612. }
  613.  
  614.  
  615. /* method: somClassReady */
  616. void   somClassReady()
  617. {
  618.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somClassReady)
  619.     (this);
  620. }
  621.  
  622.  
  623. /* method: somGetApplyStub */
  624. somMethodPtr   somGetApplyStub(somId methodId)
  625. {
  626.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetApplyStub)
  627.     (this,methodId);
  628. }
  629.  
  630.  
  631. /* method: somGetClassData */
  632. somClassDataStructure*   somGetClassData()
  633. {
  634.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetClassData)
  635.     (this);
  636. }
  637.  
  638.  
  639. /* method: somSetClassData */
  640. void   somSetClassData(somClassDataStructure* cds)
  641. {
  642.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somSetClassData)
  643.     (this,cds);
  644. }
  645.  
  646.  
  647. /* method: somGetClassMtab */
  648. somMethodTab*   somGetClassMtab()
  649. {
  650.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetClassMtab)
  651.     (this);
  652. }
  653.  
  654.  
  655. /* method: somGetInstanceOffset */
  656. long   somGetInstanceOffset()
  657. {
  658.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetInstanceOffset)
  659.     (this);
  660. }
  661.  
  662.  
  663. /* method: somGetInstancePartSize */
  664. long   somGetInstancePartSize()
  665. {
  666.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetInstancePartSize)
  667.     (this);
  668. }
  669.  
  670.  
  671. /* method: somGetInstanceSize */
  672. long   somGetInstanceSize()
  673. {
  674.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetInstanceSize)
  675.     (this);
  676. }
  677.  
  678.  
  679. /* method: somGetInstanceToken */
  680. somDToken   somGetInstanceToken()
  681. {
  682.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetInstanceToken)
  683.     (this);
  684. }
  685.  
  686.  
  687. /* method: somGetMemberToken */
  688. somDToken   somGetMemberToken(long memberOffset, 
  689.         somDToken instanceToken)
  690. {
  691.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetMemberToken)
  692.     (this,memberOffset,instanceToken);
  693. }
  694.  
  695.  
  696. /* method: somGetMethodData */
  697. boolean   somGetMethodData(somId methodId, 
  698.         somMethodData* md)
  699. {
  700.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetMethodData)
  701.     (this,methodId,md);
  702. }
  703.  
  704.  
  705. /* method: somGetRdStub */
  706. somMethodProc*   somGetRdStub(somId methodId)
  707. {
  708.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetRdStub)
  709.     (this,methodId);
  710. }
  711.  
  712.  
  713. /* method: somGetMethodDescriptor */
  714. somId   somGetMethodDescriptor(somId methodId)
  715. {
  716.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetMethodDescriptor)
  717.     (this,methodId);
  718. }
  719.  
  720.  
  721. /* method: somGetMethodIndex */
  722. long   somGetMethodIndex(somId id)
  723. {
  724.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetMethodIndex)
  725.     (this,id);
  726. }
  727.  
  728.  
  729. /* method: somGetMethodToken */
  730. somMToken   somGetMethodToken(somId methodId)
  731. {
  732.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetMethodToken)
  733.     (this,methodId);
  734. }
  735.  
  736.  
  737. /* method: somGetName */
  738. string   somGetName()
  739. {
  740.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetName)
  741.     (this);
  742. }
  743.  
  744.  
  745. /* method: somGetNthMethodData */
  746. boolean   somGetNthMethodData(long n, 
  747.         somMethodData* md)
  748. {
  749.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetNthMethodData)
  750.     (this,n,md);
  751. }
  752.  
  753.  
  754. /* method: somGetNthMethodInfo */
  755. somId   somGetNthMethodInfo(long n, 
  756.         somId* descriptor)
  757. {
  758.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetNthMethodInfo)
  759.     (this,n,descriptor);
  760. }
  761.  
  762.  
  763. /* method: somGetNumMethods */
  764. long   somGetNumMethods()
  765. {
  766.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetNumMethods)
  767.     (this);
  768. }
  769.  
  770.  
  771. /* method: somGetNumStaticMethods */
  772. long   somGetNumStaticMethods()
  773. {
  774.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetNumStaticMethods)
  775.     (this);
  776. }
  777.  
  778.  
  779. /* method: somGetParent */
  780. SOMClass*   somGetParent()
  781. {
  782.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetParent)
  783.     (this);
  784. }
  785.  
  786.  
  787. /* method: somGetParents */
  788. SOMClass_SOMClassSequence   somGetParents()
  789. {
  790.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetParents)
  791.     (this);
  792. }
  793.  
  794.  
  795. /* method: somGetVersionNumbers */
  796. void   somGetVersionNumbers(long* majorVersion, 
  797.         long* minorVersion)
  798. {
  799.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somGetVersionNumbers)
  800.     (this,majorVersion,minorVersion);
  801. }
  802.  
  803.  
  804. /* method: somFindMethod */
  805. boolean   somFindMethod(somId methodId, 
  806.         somMethodPtr* m)
  807. {
  808.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somFindMethod)
  809.     (this,methodId,m);
  810. }
  811.  
  812.  
  813. /* method: somFindMethodOk */
  814. boolean   somFindMethodOk(somId methodId, 
  815.         somMethodPtr* m)
  816. {
  817.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somFindMethodOk)
  818.     (this,methodId,m);
  819. }
  820.  
  821.  
  822. /* method: somFindSMethod */
  823. somMethodPtr   somFindSMethod(somId methodId)
  824. {
  825.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somFindSMethod)
  826.     (this,methodId);
  827. }
  828.  
  829.  
  830. /* method: somFindSMethodOk */
  831. somMethodPtr   somFindSMethodOk(somId methodId)
  832. {
  833.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somFindSMethodOk)
  834.     (this,methodId);
  835. }
  836.  
  837.  
  838. /* method: somLookupMethod */
  839. somMethodPtr   somLookupMethod(somId methodId)
  840. {
  841.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somLookupMethod)
  842.     (this,methodId);
  843. }
  844.  
  845.  
  846. /* method: somCheckVersion */
  847. boolean   somCheckVersion(long majorVersion, 
  848.         long minorVersion)
  849. {
  850.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somCheckVersion)
  851.     (this,majorVersion,minorVersion);
  852. }
  853.  
  854.  
  855. /* method: somDescendedFrom */
  856. boolean   somDescendedFrom(SOMClass* aClassObj)
  857. {
  858.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somDescendedFrom)
  859.     (this,aClassObj);
  860. }
  861.  
  862.  
  863. /* method: somSupportsMethod */
  864. boolean   somSupportsMethod(somId mId)
  865. {
  866.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somSupportsMethod)
  867.     (this,mId);
  868. }
  869.  
  870.  
  871. /* method: somDefinedMethod */
  872. somMethodPtr   somDefinedMethod(somMToken method)
  873. {
  874.    return SOM_ResolveD(this,M_ComponentManager,SOMClass,somDefinedMethod)
  875.     (this,method);
  876. }
  877.  
  878.  
  879. /* method: somOverrideMtab */
  880. void   somOverrideMtab()
  881. {
  882.    SOM_ResolveD(this,M_ComponentManager,SOMClass,somOverrideMtab)
  883.     (this);
  884. }
  885.  
  886.  
  887. /* initializer method: somDefaultInit */
  888. void   somDefaultInit(som3InitCtrl* ctrl)
  889. {
  890.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultInit)
  891.     (this,ctrl);
  892. }
  893.  
  894.  
  895. /* method: somDestruct */
  896. void   somDestruct(octet doFree, 
  897.         som3DestructCtrl* ctrl)
  898. {
  899.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDestruct)
  900.     (this,doFree,ctrl);
  901. }
  902.  
  903.  
  904. /* initializer method: somDefaultCopyInit */
  905. void   somDefaultCopyInit(som3InitCtrl* ctrl, 
  906.         SOMObject* fromObj)
  907. {
  908.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultCopyInit)
  909.     (this,ctrl,fromObj);
  910. }
  911.  
  912.  
  913. /* method: somDefaultAssign */
  914. M_ComponentManager*  somDefaultAssign(som3AssignCtrl* ctrl, 
  915.         SOMObject* fromObj)
  916. {
  917.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultAssign)
  918.     (this,ctrl,fromObj);
  919. }
  920.  
  921.  
  922. /* initializer method: somDefaultConstCopyInit */
  923. void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
  924.         SOMObject* fromObj)
  925. {
  926.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultConstCopyInit)
  927.     (this,ctrl,fromObj);
  928. }
  929.  
  930.  
  931. /* initializer method: somDefaultVCopyInit */
  932. void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
  933.         SOMObject* fromObj)
  934. {
  935.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultVCopyInit)
  936.     (this,ctrl,fromObj);
  937. }
  938.  
  939.  
  940. /* initializer method: somDefaultConstVCopyInit */
  941. void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
  942.         SOMObject* fromObj)
  943. {
  944.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultConstVCopyInit)
  945.     (this,ctrl,fromObj);
  946. }
  947.  
  948.  
  949. /* method: somDefaultConstAssign */
  950. M_ComponentManager*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
  951.         SOMObject* fromObj)
  952. {
  953.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultConstAssign)
  954.     (this,ctrl,fromObj);
  955. }
  956.  
  957.  
  958. /* method: somDefaultVAssign */
  959. M_ComponentManager*  somDefaultVAssign(som3AssignCtrl* ctrl, 
  960.         SOMObject* fromObj)
  961. {
  962.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultVAssign)
  963.     (this,ctrl,fromObj);
  964. }
  965.  
  966.  
  967. /* method: somDefaultConstVAssign */
  968. M_ComponentManager*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
  969.         SOMObject* fromObj)
  970. {
  971.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDefaultConstVAssign)
  972.     (this,ctrl,fromObj);
  973. }
  974.  
  975.  
  976. /* method: somInit */
  977. void   somInit()
  978. {
  979.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somInit)
  980.     (this);
  981. }
  982.  
  983.  
  984. /* method: somFree */
  985. void   somFree()
  986. {
  987.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somFree)
  988.     (this);
  989. }
  990.  
  991.  
  992. /* method: somUninit */
  993. void   somUninit()
  994. {
  995.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somUninit)
  996.     (this);
  997. }
  998.  
  999.  
  1000. /* method: somGetClass */
  1001. SOMClass*   somGetClass()
  1002. {
  1003.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somGetClass)
  1004.     (this);
  1005. }
  1006.  
  1007.  
  1008. /* method: somGetClassName */
  1009. string   somGetClassName()
  1010. {
  1011.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somGetClassName)
  1012.     (this);
  1013. }
  1014.  
  1015.  
  1016. /* method: somGetSize */
  1017. long   somGetSize()
  1018. {
  1019.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somGetSize)
  1020.     (this);
  1021. }
  1022.  
  1023.  
  1024. /* method: somIsA */
  1025. boolean   somIsA(SOMClass* aClassObj)
  1026. {
  1027.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somIsA)
  1028.     (this,aClassObj);
  1029. }
  1030.  
  1031.  
  1032. /* method: somIsInstanceOf */
  1033. boolean   somIsInstanceOf(SOMClass* aClassObj)
  1034. {
  1035.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somIsInstanceOf)
  1036.     (this,aClassObj);
  1037. }
  1038.  
  1039.  
  1040. /* method: somRespondsTo */
  1041. boolean   somRespondsTo(somId mId)
  1042. {
  1043.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somRespondsTo)
  1044.     (this,mId);
  1045. }
  1046.  
  1047.  
  1048. /* va_list method: somDispatch */
  1049.  
  1050. /* the va_list invocation form */
  1051. boolean   M_ComponentManager_somDispatch(somToken* retValue, 
  1052.         somId methodId, 
  1053.         va_list ap)
  1054. {return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatch)
  1055.     (this,retValue,methodId,ap);
  1056. }
  1057.  
  1058. /* the varargs invocation form */
  1059. boolean   somDispatch(somToken* retValue, 
  1060.         somId methodId, 
  1061.         ...)
  1062. {
  1063.    va_list ap;
  1064.    va_start(ap, methodId);
  1065.    boolean __somResult = 
  1066.       SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatch)
  1067.     (this,retValue,methodId,ap);
  1068.    va_end(ap);
  1069.    return __somResult;
  1070. }
  1071.  
  1072.  
  1073. /* va_list method: somClassDispatch */
  1074.  
  1075. /* the va_list invocation form */
  1076. boolean   M_ComponentManager_somClassDispatch(SOMClass* clsObj, 
  1077.         somToken* retValue, 
  1078.         somId methodId, 
  1079.         va_list ap)
  1080. {return SOM_ResolveD(this,M_ComponentManager,SOMObject,somClassDispatch)
  1081.     (this,clsObj,retValue,methodId,ap);
  1082. }
  1083.  
  1084. /* the varargs invocation form */
  1085. boolean   somClassDispatch(SOMClass* clsObj, 
  1086.         somToken* retValue, 
  1087.         somId methodId, 
  1088.         ...)
  1089. {
  1090.    va_list ap;
  1091.    va_start(ap, methodId);
  1092.    boolean __somResult = 
  1093.       SOM_ResolveD(this,M_ComponentManager,SOMObject,somClassDispatch)
  1094.     (this,clsObj,retValue,methodId,ap);
  1095.    va_end(ap);
  1096.    return __somResult;
  1097. }
  1098.  
  1099.  
  1100. /* method: somCastObj */
  1101. boolean   somCastObj(SOMClass* cls)
  1102. {
  1103.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somCastObj)
  1104.     (this,cls);
  1105. }
  1106.  
  1107.  
  1108. /* method: somResetObj */
  1109. boolean   somResetObj()
  1110. {
  1111.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somResetObj)
  1112.     (this);
  1113. }
  1114.  
  1115.  
  1116. /* va_list method: somDispatchV */
  1117.  
  1118. /* the va_list invocation form */
  1119. void   M_ComponentManager_somDispatchV(somId methodId, 
  1120.         somId descriptor, 
  1121.         va_list ap)
  1122. {   SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchV)
  1123.     (this,methodId,descriptor,ap);
  1124. }
  1125.  
  1126. /* the varargs invocation form */
  1127. void   somDispatchV(somId methodId, 
  1128.         somId descriptor, 
  1129.         ...)
  1130. {
  1131.    va_list ap;
  1132.    va_start(ap, descriptor);
  1133.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchV)
  1134.     (this,methodId,descriptor,ap);
  1135.    va_end(ap);
  1136. }
  1137.  
  1138.  
  1139. /* va_list method: somDispatchL */
  1140.  
  1141. /* the va_list invocation form */
  1142. long   M_ComponentManager_somDispatchL(somId methodId, 
  1143.         somId descriptor, 
  1144.         va_list ap)
  1145. {return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchL)
  1146.     (this,methodId,descriptor,ap);
  1147. }
  1148.  
  1149. /* the varargs invocation form */
  1150. long   somDispatchL(somId methodId, 
  1151.         somId descriptor, 
  1152.         ...)
  1153. {
  1154.    va_list ap;
  1155.    va_start(ap, descriptor);
  1156.    long __somResult = 
  1157.       SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchL)
  1158.     (this,methodId,descriptor,ap);
  1159.    va_end(ap);
  1160.    return __somResult;
  1161. }
  1162.  
  1163.  
  1164. /* va_list method: somDispatchA */
  1165.  
  1166. /* the va_list invocation form */
  1167. void*   M_ComponentManager_somDispatchA(somId methodId, 
  1168.         somId descriptor, 
  1169.         va_list ap)
  1170. {return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchA)
  1171.     (this,methodId,descriptor,ap);
  1172. }
  1173.  
  1174. /* the varargs invocation form */
  1175. void*   somDispatchA(somId methodId, 
  1176.         somId descriptor, 
  1177.         ...)
  1178. {
  1179.    va_list ap;
  1180.    va_start(ap, descriptor);
  1181.    void* __somResult = 
  1182.       SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchA)
  1183.     (this,methodId,descriptor,ap);
  1184.    va_end(ap);
  1185.    return __somResult;
  1186. }
  1187.  
  1188.  
  1189. /* va_list method: somDispatchD */
  1190.  
  1191. /* the va_list invocation form */
  1192. double   M_ComponentManager_somDispatchD(somId methodId, 
  1193.         somId descriptor, 
  1194.         va_list ap)
  1195. {return SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchD)
  1196.     (this,methodId,descriptor,ap);
  1197. }
  1198.  
  1199. /* the varargs invocation form */
  1200. double   somDispatchD(somId methodId, 
  1201.         somId descriptor, 
  1202.         ...)
  1203. {
  1204.    va_list ap;
  1205.    va_start(ap, descriptor);
  1206.    double __somResult = 
  1207.       SOM_ResolveD(this,M_ComponentManager,SOMObject,somDispatchD)
  1208.     (this,methodId,descriptor,ap);
  1209.    va_end(ap);
  1210.    return __somResult;
  1211. }
  1212.  
  1213.  
  1214. /* method: somPrintSelf */
  1215. SOMObject*   somPrintSelf()
  1216. {
  1217.    return SOM_ResolveD(this,M_ComponentManager,SOMObject,somPrintSelf)
  1218.     (this);
  1219. }
  1220.  
  1221.  
  1222. /* method: somDumpSelf */
  1223. void   somDumpSelf(long level)
  1224. {
  1225.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDumpSelf)
  1226.     (this,level);
  1227. }
  1228.  
  1229.  
  1230. /* method: somDumpSelfInt */
  1231. void   somDumpSelfInt(long level)
  1232. {
  1233.    SOM_ResolveD(this,M_ComponentManager,SOMObject,somDumpSelfInt)
  1234.     (this,level);
  1235. }
  1236.  
  1237.  
  1238.  
  1239. };   /* M_ComponentManager */
  1240.  
  1241.  
  1242.  
  1243. #endif       /* SOM_M_ComponentManager_xh */
  1244.  
  1245. #ifndef SOM_ComponentManager_xh
  1246. #define SOM_ComponentManager_xh
  1247.  
  1248. class ComponentManager;
  1249.  
  1250. #define ComponentManager_MajorVersion 1
  1251. #define ComponentManager_MinorVersion 0
  1252.  
  1253. /*
  1254.  * Passthru lines: File: "C.xh", "before"
  1255.  */
  1256. // macro UlongToStr(L,S) - use to convert the unsigned long 
  1257. //    value L to a string in the array S.  S must be at least
  1258. //    five characters wide
  1259. #define UlongToStr(L,S)  S[0] = (char) ((L >> 24) & 0xff) ; \ 
  1260.                          S[1] = (char) ((L >> 16) & 0xff) ; \ 
  1261.                          S[2] = (char) ((L >>  8) & 0xff) ; \ 
  1262.                          S[3] = (char) ((L >>  0) & 0xff) ; \ 
  1263.                          S[4] = '\0'  
  1264. // macro StrToUlong(S,L) - use to convert the string at S into
  1265. //    an unsigned long (32 bit) value.  S must be at least
  1266. //    four characters wide
  1267. #define StrToUlong(S,L) L = ( (unsigned int) S[0] << 24 ) | \ 
  1268.                             ( (unsigned int) S[1] << 16 ) | \ 
  1269.                             ( (unsigned int) S[2] <<  8 ) | \ 
  1270.                             ( (unsigned int) S[3] <<  0 ) 
  1271.  
  1272. /* C++ SOM defs */
  1273. #include <somcls.xh>
  1274. #include <somcm.xh>
  1275.  
  1276. /* C++ parent defs */
  1277. #ifndef SOM_SOMObject_xh
  1278. #include <somobj.xh>
  1279. #endif
  1280.  
  1281. #ifndef ComponentManager_API
  1282. #define ComponentManager_API
  1283. /*
  1284.  * -- The Class API
  1285.  */
  1286.  
  1287. /*
  1288.  * Start of bindings for IDL types
  1289.  */
  1290.  
  1291.  
  1292. /*
  1293.  * End of bindings for IDL types.
  1294.  */
  1295.  
  1296. /* A procedure to create the ComponentManager Class */
  1297. class M_ComponentManager;
  1298. SOMEXTERN M_ComponentManager * SOMLINK ComponentManagerNewClass(
  1299.         integer4 majorVersion,
  1300.         integer4 minorVersion);
  1301.  
  1302. /* The API to the ComponentManager class object, and the methods it introduces. */
  1303. SOMEXTERN struct ComponentManagerClassDataStructure {
  1304.     M_ComponentManager *classObject;
  1305.     somMToken CountComponents;
  1306.     somMToken FindNextComponent;
  1307.     somMToken GetComponentInfo;
  1308.     somMToken GetComponentRefcon;
  1309.     somMToken SetComponentRefcon;
  1310.     somMToken OpenComponent;
  1311.     somMToken OpenDefaultComponent;
  1312.     somMToken CloseComponent;
  1313.     somMToken InstallComponent;
  1314.     somMToken UninstallComponent;
  1315. } SOMDLINK ComponentManagerClassData;
  1316. #define _ComponentManager ComponentManagerClassData.classObject
  1317.  
  1318. /* The API to parentMtabs for ComponentManager, and the instance data it introduces. */
  1319. SOMEXTERN struct ComponentManagerCClassDataStructure {
  1320.     somMethodTabs parentMtab;
  1321.     somDToken              instanceDataToken;
  1322. } SOMDLINK ComponentManagerCClassData;
  1323.  
  1324. /*
  1325.  * -- Typedefs for ComponentManager Method Procedures
  1326.  */
  1327. SOMEXTERN {
  1328. typedef ODULong   SOMLINK somTP_ComponentManager_CountComponents(ComponentManager *somSelf, Environment *ev, 
  1329.         ComponentDescription* plooking);
  1330. typedef somTP_ComponentManager_CountComponents *somTD_ComponentManager_CountComponents;
  1331. typedef OSErr   SOMLINK somTP_ComponentManager_FindNextComponent(ComponentManager *somSelf, Environment *ev, 
  1332.         ComponentDescription* plastFound, 
  1333.         ComponentDescription* plooking, 
  1334.         ComponentDescription* pfound);
  1335. typedef somTP_ComponentManager_FindNextComponent *somTD_ComponentManager_FindNextComponent;
  1336. typedef OSErr   SOMLINK somTP_ComponentManager_GetComponentInfo(ComponentManager *somSelf, Environment *ev, 
  1337.         ComponentDescription* ptheComponent, 
  1338.         char* pcomponentClassName, 
  1339.         char* pcomponentDLL, 
  1340.         char* pcomponentName, 
  1341.         char* pcomponentInfo);
  1342. typedef somTP_ComponentManager_GetComponentInfo *somTD_ComponentManager_GetComponentInfo;
  1343. typedef ODSLong   SOMLINK somTP_ComponentManager_GetComponentRefcon(ComponentManager *somSelf, Environment *ev, 
  1344.         ComponentDescription* ptheComponent);
  1345. typedef somTP_ComponentManager_GetComponentRefcon *somTD_ComponentManager_GetComponentRefcon;
  1346. typedef void   SOMLINK somTP_ComponentManager_SetComponentRefcon(ComponentManager *somSelf, Environment *ev, 
  1347.         ComponentDescription* ptheComponent, 
  1348.         ODSLong Refcon);
  1349. typedef somTP_ComponentManager_SetComponentRefcon *somTD_ComponentManager_SetComponentRefcon;
  1350. typedef Component*   SOMLINK somTP_ComponentManager_OpenComponent(ComponentManager *somSelf, Environment *ev, 
  1351.         ComponentDescription* ptheComponent);
  1352. typedef somTP_ComponentManager_OpenComponent *somTD_ComponentManager_OpenComponent;
  1353. typedef Component*   SOMLINK somTP_ComponentManager_OpenDefaultComponent(ComponentManager *somSelf, Environment *ev, 
  1354.         OSType componentType, 
  1355.         OSType componentSubType);
  1356. typedef somTP_ComponentManager_OpenDefaultComponent *somTD_ComponentManager_OpenDefaultComponent;
  1357. typedef OSErr   SOMLINK somTP_ComponentManager_CloseComponent(ComponentManager *somSelf, Environment *ev, 
  1358.         Component* theComponentInstance);
  1359. typedef somTP_ComponentManager_CloseComponent *somTD_ComponentManager_CloseComponent;
  1360. typedef OSErr   SOMLINK somTP_ComponentManager_InstallComponent(ComponentManager *somSelf, Environment *ev, 
  1361.         ComponentRegistryData* ptheData);
  1362. typedef somTP_ComponentManager_InstallComponent *somTD_ComponentManager_InstallComponent;
  1363. typedef OSErr   SOMLINK somTP_ComponentManager_UninstallComponent(ComponentManager *somSelf, Environment *ev, 
  1364.         OSType componentType, 
  1365.         OSType componentSubType);
  1366. typedef somTP_ComponentManager_UninstallComponent *somTD_ComponentManager_UninstallComponent;
  1367.  
  1368. /*
  1369.  * -- Typedefs for Reintroduced Wrapper Methods
  1370.  */
  1371. typedef void   SOMLINK somTP_ComponentManager_somDefaultInit(ComponentManager *somSelf, 
  1372.         som3InitCtrl* ctrl);
  1373. typedef somTP_ComponentManager_somDefaultInit *somTD_ComponentManager_somDefaultInit;
  1374. typedef void   SOMLINK somTP_ComponentManager_somDestruct(ComponentManager *somSelf, 
  1375.         octet doFree, 
  1376.         som3DestructCtrl* ctrl);
  1377. typedef somTP_ComponentManager_somDestruct *somTD_ComponentManager_somDestruct;
  1378. typedef void   SOMLINK somTP_ComponentManager_somDefaultCopyInit(ComponentManager *somSelf, 
  1379.         som3InitCtrl* ctrl, 
  1380.         SOMObject* fromObj);
  1381. typedef somTP_ComponentManager_somDefaultCopyInit *somTD_ComponentManager_somDefaultCopyInit;
  1382. typedef ComponentManager*   SOMLINK somTP_ComponentManager_somDefaultAssign(ComponentManager *somSelf, 
  1383.         som3AssignCtrl* ctrl, 
  1384.         SOMObject* fromObj);
  1385. typedef somTP_ComponentManager_somDefaultAssign *somTD_ComponentManager_somDefaultAssign;
  1386. typedef void   SOMLINK somTP_ComponentManager_somDefaultConstCopyInit(ComponentManager *somSelf, 
  1387.         som3InitCtrl* ctrl, 
  1388.         SOMObject* fromObj);
  1389. typedef somTP_ComponentManager_somDefaultConstCopyInit *somTD_ComponentManager_somDefaultConstCopyInit;
  1390. typedef void   SOMLINK somTP_ComponentManager_somDefaultVCopyInit(ComponentManager *somSelf, 
  1391.         som3InitCtrl* ctrl, 
  1392.         SOMObject* fromObj);
  1393. typedef somTP_ComponentManager_somDefaultVCopyInit *somTD_ComponentManager_somDefaultVCopyInit;
  1394. typedef void   SOMLINK somTP_ComponentManager_somDefaultConstVCopyInit(ComponentManager *somSelf, 
  1395.         som3InitCtrl* ctrl, 
  1396.         SOMObject* fromObj);
  1397. typedef somTP_ComponentManager_somDefaultConstVCopyInit *somTD_ComponentManager_somDefaultConstVCopyInit;
  1398. typedef ComponentManager*   SOMLINK somTP_ComponentManager_somDefaultConstAssign(ComponentManager *somSelf, 
  1399.         som3AssignCtrl* ctrl, 
  1400.         SOMObject* fromObj);
  1401. typedef somTP_ComponentManager_somDefaultConstAssign *somTD_ComponentManager_somDefaultConstAssign;
  1402. typedef ComponentManager*   SOMLINK somTP_ComponentManager_somDefaultVAssign(ComponentManager *somSelf, 
  1403.         som3AssignCtrl* ctrl, 
  1404.         SOMObject* fromObj);
  1405. typedef somTP_ComponentManager_somDefaultVAssign *somTD_ComponentManager_somDefaultVAssign;
  1406. typedef ComponentManager*   SOMLINK somTP_ComponentManager_somDefaultConstVAssign(ComponentManager *somSelf, 
  1407.         som3AssignCtrl* ctrl, 
  1408.         SOMObject* fromObj);
  1409. typedef somTP_ComponentManager_somDefaultConstVAssign *somTD_ComponentManager_somDefaultConstVAssign;
  1410. typedef void   SOMLINK somTP_ComponentManager_somInit(ComponentManager *somSelf);
  1411. typedef somTP_ComponentManager_somInit *somTD_ComponentManager_somInit;
  1412. typedef void   SOMLINK somTP_ComponentManager_somFree(ComponentManager *somSelf);
  1413. typedef somTP_ComponentManager_somFree *somTD_ComponentManager_somFree;
  1414. typedef void   SOMLINK somTP_ComponentManager_somUninit(ComponentManager *somSelf);
  1415. typedef somTP_ComponentManager_somUninit *somTD_ComponentManager_somUninit;
  1416. typedef M_ComponentManager*   SOMLINK somTP_ComponentManager_somGetClass(ComponentManager *somSelf);
  1417. typedef somTP_ComponentManager_somGetClass *somTD_ComponentManager_somGetClass;
  1418. typedef string   SOMLINK somTP_ComponentManager_somGetClassName(ComponentManager *somSelf);
  1419. typedef somTP_ComponentManager_somGetClassName *somTD_ComponentManager_somGetClassName;
  1420. typedef long   SOMLINK somTP_ComponentManager_somGetSize(ComponentManager *somSelf);
  1421. typedef somTP_ComponentManager_somGetSize *somTD_ComponentManager_somGetSize;
  1422. typedef boolean   SOMLINK somTP_ComponentManager_somIsA(ComponentManager *somSelf, 
  1423.         SOMClass* aClassObj);
  1424. typedef somTP_ComponentManager_somIsA *somTD_ComponentManager_somIsA;
  1425. typedef boolean   SOMLINK somTP_ComponentManager_somIsInstanceOf(ComponentManager *somSelf, 
  1426.         SOMClass* aClassObj);
  1427. typedef somTP_ComponentManager_somIsInstanceOf *somTD_ComponentManager_somIsInstanceOf;
  1428. typedef boolean   SOMLINK somTP_ComponentManager_somRespondsTo(ComponentManager *somSelf, 
  1429.         somId mId);
  1430. typedef somTP_ComponentManager_somRespondsTo *somTD_ComponentManager_somRespondsTo;
  1431. typedef boolean   SOMLINK somTP_ComponentManager_somDispatch(ComponentManager *somSelf, 
  1432.         somToken* retValue, 
  1433.         somId methodId, 
  1434.         va_list ap);
  1435. typedef somTP_ComponentManager_somDispatch *somTD_ComponentManager_somDispatch;
  1436. typedef boolean   SOMLINK somTP_ComponentManager_somClassDispatch(ComponentManager *somSelf, 
  1437.         SOMClass* clsObj, 
  1438.         somToken* retValue, 
  1439.         somId methodId, 
  1440.         va_list ap);
  1441. typedef somTP_ComponentManager_somClassDispatch *somTD_ComponentManager_somClassDispatch;
  1442. typedef boolean   SOMLINK somTP_ComponentManager_somCastObj(ComponentManager *somSelf, 
  1443.         SOMClass* cls);
  1444. typedef somTP_ComponentManager_somCastObj *somTD_ComponentManager_somCastObj;
  1445. typedef boolean   SOMLINK somTP_ComponentManager_somResetObj(ComponentManager *somSelf);
  1446. typedef somTP_ComponentManager_somResetObj *somTD_ComponentManager_somResetObj;
  1447. typedef void   SOMLINK somTP_ComponentManager_somDispatchV(ComponentManager *somSelf, 
  1448.         somId methodId, 
  1449.         somId descriptor, 
  1450.         va_list ap);
  1451. typedef somTP_ComponentManager_somDispatchV *somTD_ComponentManager_somDispatchV;
  1452. typedef long   SOMLINK somTP_ComponentManager_somDispatchL(ComponentManager *somSelf, 
  1453.         somId methodId, 
  1454.         somId descriptor, 
  1455.         va_list ap);
  1456. typedef somTP_ComponentManager_somDispatchL *somTD_ComponentManager_somDispatchL;
  1457. typedef void*   SOMLINK somTP_ComponentManager_somDispatchA(ComponentManager *somSelf, 
  1458.         somId methodId, 
  1459.         somId descriptor, 
  1460.         va_list ap);
  1461. typedef somTP_ComponentManager_somDispatchA *somTD_ComponentManager_somDispatchA;
  1462. typedef double   SOMLINK somTP_ComponentManager_somDispatchD(ComponentManager *somSelf, 
  1463.         somId methodId, 
  1464.         somId descriptor, 
  1465.         va_list ap);
  1466. typedef somTP_ComponentManager_somDispatchD *somTD_ComponentManager_somDispatchD;
  1467. typedef SOMObject*   SOMLINK somTP_ComponentManager_somPrintSelf(ComponentManager *somSelf);
  1468. typedef somTP_ComponentManager_somPrintSelf *somTD_ComponentManager_somPrintSelf;
  1469. typedef void   SOMLINK somTP_ComponentManager_somDumpSelf(ComponentManager *somSelf, 
  1470.         long level);
  1471. typedef somTP_ComponentManager_somDumpSelf *somTD_ComponentManager_somDumpSelf;
  1472. typedef void   SOMLINK somTP_ComponentManager_somDumpSelfInt(ComponentManager *somSelf, 
  1473.         long level);
  1474. typedef somTP_ComponentManager_somDumpSelfInt *somTD_ComponentManager_somDumpSelfInt;
  1475. }
  1476.  
  1477. #endif /* ComponentManager_API */
  1478.  
  1479.  
  1480. /*
  1481.  * -- This emitter treats Method Tokens as Thunks by default.
  1482.  * -- Use the sc modifier "nothunks" to change this default
  1483.  */
  1484. #undef somresolve_
  1485. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  1486.  
  1487. /*
  1488.  * -- The C++ Wrapper Class for ComponentManager
  1489.  */
  1490. class ComponentManager : public SOMObject
  1491. {
  1492. public:
  1493.  
  1494. // ComponentManager::new creates the class object if necessary, and then uses somNewNoInit
  1495. // to allocate memory and create the object. Initialization is in ctors.
  1496. void *operator new(size_t)
  1497. {
  1498.    if (!_ComponentManager) ComponentManagerNewClass(ComponentManager_MajorVersion,ComponentManager_MinorVersion);
  1499.    return (void*)
  1500.       SOM_Resolve(_ComponentManager,SOMClass,somNewNoInit)
  1501.          ((SOMClass *)((void*)_ComponentManager));
  1502. }
  1503.  
  1504. // ComponentManager::delete uses somDestruct.
  1505. void operator delete(void * obj)
  1506. {
  1507.    if (obj && *(void**)obj) {
  1508.       SOM_Resolve(obj,SOMObject,somFree)
  1509.          ((SOMObject*)obj);
  1510.    }
  1511. }
  1512.  
  1513. ComponentManager& operator=(ComponentManager& fromObj)
  1514. {
  1515.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  1516.    return *this;
  1517. }
  1518.  
  1519. ComponentManager()
  1520. {
  1521.    if (*(void**)this != 
  1522.        ((somParentMtabStructPtr)
  1523.         (ComponentManagerCClassData.parentMtab))->mtab)
  1524.       return;
  1525.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  1526. }
  1527.  
  1528. ComponentManager(ComponentManager* fromObj)
  1529. {
  1530.    if (*(void**)this != 
  1531.        ((somParentMtabStructPtr)
  1532.         (ComponentManagerCClassData.parentMtab))->mtab)
  1533.       return;
  1534.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  1535. }
  1536.  
  1537. #ifdef __IBMCPP__
  1538. #pragma info(nocnv,nopar)
  1539. #endif
  1540. ComponentManager(const ComponentManager* fromObj)
  1541. {
  1542.    if (*(void**)this != 
  1543.        ((somParentMtabStructPtr)
  1544.         (ComponentManagerCClassData.parentMtab))->mtab)
  1545.       return;
  1546.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  1547. }
  1548. #ifdef __IBMCPP__
  1549. #pragma info(restore)
  1550. #endif
  1551.  
  1552.  
  1553. /* method: CountComponents */
  1554. ODULong   CountComponents(Environment *ev, 
  1555.         ComponentDescription* plooking)
  1556. {
  1557. #ifdef SOMCHKEXCEPT
  1558.    ODULong __somResult = 
  1559.       SOM_ResolveD(this,ComponentManager,ComponentManager,CountComponents)
  1560.     (this, ev,plooking);
  1561.    if ( ev->_major != NO_EXCEPTION )
  1562.       SOMCHKEXCEPT;
  1563.    return __somResult;
  1564. #else
  1565.    return SOM_ResolveD(this,ComponentManager,ComponentManager,CountComponents)
  1566.     (this, ev,plooking);
  1567. #endif
  1568. }
  1569.  
  1570.  
  1571. /* method: FindNextComponent */
  1572. OSErr   FindNextComponent(Environment *ev, 
  1573.         ComponentDescription* plastFound, 
  1574.         ComponentDescription* plooking, 
  1575.         ComponentDescription* pfound)
  1576. {
  1577. #ifdef SOMCHKEXCEPT
  1578.    OSErr __somResult = 
  1579.       SOM_ResolveD(this,ComponentManager,ComponentManager,FindNextComponent)
  1580.     (this, ev,plastFound,plooking,pfound);
  1581.    if ( ev->_major != NO_EXCEPTION )
  1582.       SOMCHKEXCEPT;
  1583.    return __somResult;
  1584. #else
  1585.    return SOM_ResolveD(this,ComponentManager,ComponentManager,FindNextComponent)
  1586.     (this, ev,plastFound,plooking,pfound);
  1587. #endif
  1588. }
  1589.  
  1590.  
  1591. /* method: GetComponentInfo */
  1592. OSErr   GetComponentInfo(Environment *ev, 
  1593.         ComponentDescription* ptheComponent, 
  1594.         char* pcomponentClassName, 
  1595.         char* pcomponentDLL, 
  1596.         char* pcomponentName, 
  1597.         char* pcomponentInfo)
  1598. {
  1599. #ifdef SOMCHKEXCEPT
  1600.    OSErr __somResult = 
  1601.       SOM_ResolveD(this,ComponentManager,ComponentManager,GetComponentInfo)
  1602.     (this, ev,ptheComponent,pcomponentClassName,pcomponentDLL,pcomponentName,pcomponentInfo);
  1603.    if ( ev->_major != NO_EXCEPTION )
  1604.       SOMCHKEXCEPT;
  1605.    return __somResult;
  1606. #else
  1607.    return SOM_ResolveD(this,ComponentManager,ComponentManager,GetComponentInfo)
  1608.     (this, ev,ptheComponent,pcomponentClassName,pcomponentDLL,pcomponentName,pcomponentInfo);
  1609. #endif
  1610. }
  1611.  
  1612.  
  1613. /* method: GetComponentRefcon */
  1614. ODSLong   GetComponentRefcon(Environment *ev, 
  1615.         ComponentDescription* ptheComponent)
  1616. {
  1617. #ifdef SOMCHKEXCEPT
  1618.    ODSLong __somResult = 
  1619.       SOM_ResolveD(this,ComponentManager,ComponentManager,GetComponentRefcon)
  1620.     (this, ev,ptheComponent);
  1621.    if ( ev->_major != NO_EXCEPTION )
  1622.       SOMCHKEXCEPT;
  1623.    return __somResult;
  1624. #else
  1625.    return SOM_ResolveD(this,ComponentManager,ComponentManager,GetComponentRefcon)
  1626.     (this, ev,ptheComponent);
  1627. #endif
  1628. }
  1629.  
  1630.  
  1631. /* method: SetComponentRefcon */
  1632. void   SetComponentRefcon(Environment *ev, 
  1633.         ComponentDescription* ptheComponent, 
  1634.         ODSLong Refcon)
  1635. {
  1636.    SOM_ResolveD(this,ComponentManager,ComponentManager,SetComponentRefcon)
  1637.     (this, ev,ptheComponent,Refcon);
  1638. #ifdef SOMCHKEXCEPT
  1639.    if ( ev->_major != NO_EXCEPTION )
  1640.       SOMCHKEXCEPT;
  1641. #endif
  1642. }
  1643.  
  1644.  
  1645. /* method: OpenComponent */
  1646. Component*   OpenComponent(Environment *ev, 
  1647.         ComponentDescription* ptheComponent)
  1648. {
  1649. #ifdef SOMCHKEXCEPT
  1650.    Component* __somResult = 
  1651.       SOM_ResolveD(this,ComponentManager,ComponentManager,OpenComponent)
  1652.     (this, ev,ptheComponent);
  1653.    if ( ev->_major != NO_EXCEPTION )
  1654.       SOMCHKEXCEPT;
  1655.    return __somResult;
  1656. #else
  1657.    return SOM_ResolveD(this,ComponentManager,ComponentManager,OpenComponent)
  1658.     (this, ev,ptheComponent);
  1659. #endif
  1660. }
  1661.  
  1662.  
  1663. /* method: OpenDefaultComponent */
  1664. Component*   OpenDefaultComponent(Environment *ev, 
  1665.         OSType componentType, 
  1666.         OSType componentSubType)
  1667. {
  1668. #ifdef SOMCHKEXCEPT
  1669.    Component* __somResult = 
  1670.       SOM_ResolveD(this,ComponentManager,ComponentManager,OpenDefaultComponent)
  1671.     (this, ev,componentType,componentSubType);
  1672.    if ( ev->_major != NO_EXCEPTION )
  1673.       SOMCHKEXCEPT;
  1674.    return __somResult;
  1675. #else
  1676.    return SOM_ResolveD(this,ComponentManager,ComponentManager,OpenDefaultComponent)
  1677.     (this, ev,componentType,componentSubType);
  1678. #endif
  1679. }
  1680.  
  1681.  
  1682. /* method: CloseComponent */
  1683. OSErr   CloseComponent(Environment *ev, 
  1684.         Component* theComponentInstance)
  1685. {
  1686. #ifdef SOMCHKEXCEPT
  1687.    OSErr __somResult = 
  1688.       SOM_ResolveD(this,ComponentManager,ComponentManager,CloseComponent)
  1689.     (this, ev,theComponentInstance);
  1690.    if ( ev->_major != NO_EXCEPTION )
  1691.       SOMCHKEXCEPT;
  1692.    return __somResult;
  1693. #else
  1694.    return SOM_ResolveD(this,ComponentManager,ComponentManager,CloseComponent)
  1695.     (this, ev,theComponentInstance);
  1696. #endif
  1697. }
  1698.  
  1699.  
  1700. /* method: InstallComponent */
  1701. OSErr   InstallComponent(Environment *ev, 
  1702.         ComponentRegistryData* ptheData)
  1703. {
  1704. #ifdef SOMCHKEXCEPT
  1705.    OSErr __somResult = 
  1706.       SOM_ResolveD(this,ComponentManager,ComponentManager,InstallComponent)
  1707.     (this, ev,ptheData);
  1708.    if ( ev->_major != NO_EXCEPTION )
  1709.       SOMCHKEXCEPT;
  1710.    return __somResult;
  1711. #else
  1712.    return SOM_ResolveD(this,ComponentManager,ComponentManager,InstallComponent)
  1713.     (this, ev,ptheData);
  1714. #endif
  1715. }
  1716.  
  1717.  
  1718. /* method: UninstallComponent */
  1719. OSErr   UninstallComponent(Environment *ev, 
  1720.         OSType componentType, 
  1721.         OSType componentSubType)
  1722. {
  1723. #ifdef SOMCHKEXCEPT
  1724.    OSErr __somResult = 
  1725.       SOM_ResolveD(this,ComponentManager,ComponentManager,UninstallComponent)
  1726.     (this, ev,componentType,componentSubType);
  1727.    if ( ev->_major != NO_EXCEPTION )
  1728.       SOMCHKEXCEPT;
  1729.    return __somResult;
  1730. #else
  1731.    return SOM_ResolveD(this,ComponentManager,ComponentManager,UninstallComponent)
  1732.     (this, ev,componentType,componentSubType);
  1733. #endif
  1734. }
  1735.  
  1736.  
  1737. /*
  1738.  * Reintroduce inherited methods
  1739.  */
  1740.  
  1741. /* initializer method: somDefaultInit */
  1742. void   somDefaultInit(som3InitCtrl* ctrl)
  1743. {
  1744.    SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultInit)
  1745.     (this,ctrl);
  1746. }
  1747.  
  1748.  
  1749. /* method: somDestruct */
  1750. void   somDestruct(octet doFree, 
  1751.         som3DestructCtrl* ctrl)
  1752. {
  1753.    SOM_ResolveD(this,ComponentManager,SOMObject,somDestruct)
  1754.     (this,doFree,ctrl);
  1755. }
  1756.  
  1757.  
  1758. /* initializer method: somDefaultCopyInit */
  1759. void   somDefaultCopyInit(som3InitCtrl* ctrl, 
  1760.         SOMObject* fromObj)
  1761. {
  1762.    SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultCopyInit)
  1763.     (this,ctrl,fromObj);
  1764. }
  1765.  
  1766.  
  1767. /* method: somDefaultAssign */
  1768. ComponentManager*  somDefaultAssign(som3AssignCtrl* ctrl, 
  1769.         SOMObject* fromObj)
  1770. {
  1771.    return SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultAssign)
  1772.     (this,ctrl,fromObj);
  1773. }
  1774.  
  1775.  
  1776. /* initializer method: somDefaultConstCopyInit */
  1777. void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
  1778.         SOMObject* fromObj)
  1779. {
  1780.    SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultConstCopyInit)
  1781.     (this,ctrl,fromObj);
  1782. }
  1783.  
  1784.  
  1785. /* initializer method: somDefaultVCopyInit */
  1786. void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
  1787.         SOMObject* fromObj)
  1788. {
  1789.    SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultVCopyInit)
  1790.     (this,ctrl,fromObj);
  1791. }
  1792.  
  1793.  
  1794. /* initializer method: somDefaultConstVCopyInit */
  1795. void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
  1796.         SOMObject* fromObj)
  1797. {
  1798.    SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultConstVCopyInit)
  1799.     (this,ctrl,fromObj);
  1800. }
  1801.  
  1802.  
  1803. /* method: somDefaultConstAssign */
  1804. ComponentManager*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
  1805.         SOMObject* fromObj)
  1806. {
  1807.    return SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultConstAssign)
  1808.     (this,ctrl,fromObj);
  1809. }
  1810.  
  1811.  
  1812. /* method: somDefaultVAssign */
  1813. ComponentManager*  somDefaultVAssign(som3AssignCtrl* ctrl, 
  1814.         SOMObject* fromObj)
  1815. {
  1816.    return SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultVAssign)
  1817.     (this,ctrl,fromObj);
  1818. }
  1819.  
  1820.  
  1821. /* method: somDefaultConstVAssign */
  1822. ComponentManager*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
  1823.         SOMObject* fromObj)
  1824. {
  1825.    return SOM_ResolveD(this,ComponentManager,SOMObject,somDefaultConstVAssign)
  1826.     (this,ctrl,fromObj);
  1827. }
  1828.  
  1829.  
  1830. /* method: somInit */
  1831. void   somInit()
  1832. {
  1833.    SOM_ResolveD(this,ComponentManager,SOMObject,somInit)
  1834.     (this);
  1835. }
  1836.  
  1837.  
  1838. /* method: somFree */
  1839. void   somFree()
  1840. {
  1841.    SOM_ResolveD(this,ComponentManager,SOMObject,somFree)
  1842.     (this);
  1843. }
  1844.  
  1845.  
  1846. /* method: somUninit */
  1847. void   somUninit()
  1848. {
  1849.    SOM_ResolveD(this,ComponentManager,SOMObject,somUninit)
  1850.     (this);
  1851. }
  1852.  
  1853.  
  1854. /* method: somGetClass */
  1855. M_ComponentManager*  somGetClass()
  1856. {
  1857.    return SOM_ResolveD(this,ComponentManager,SOMObject,somGetClass)
  1858.     (this);
  1859. }
  1860.  
  1861.  
  1862. /* method: somGetClassName */
  1863. string   somGetClassName()
  1864. {
  1865.    return SOM_ResolveD(this,ComponentManager,SOMObject,somGetClassName)
  1866.     (this);
  1867. }
  1868.  
  1869.  
  1870. /* method: somGetSize */
  1871. long   somGetSize()
  1872. {
  1873.    return SOM_ResolveD(this,ComponentManager,SOMObject,somGetSize)
  1874.     (this);
  1875. }
  1876.  
  1877.  
  1878. /* method: somIsA */
  1879. boolean   somIsA(SOMClass* aClassObj)
  1880. {
  1881.    return SOM_ResolveD(this,ComponentManager,SOMObject,somIsA)
  1882.     (this,aClassObj);
  1883. }
  1884.  
  1885.  
  1886. /* method: somIsInstanceOf */
  1887. boolean   somIsInstanceOf(SOMClass* aClassObj)
  1888. {
  1889.    return SOM_ResolveD(this,ComponentManager,SOMObject,somIsInstanceOf)
  1890.     (this,aClassObj);
  1891. }
  1892.  
  1893.  
  1894. /* method: somRespondsTo */
  1895. boolean   somRespondsTo(somId mId)
  1896. {
  1897.    return SOM_ResolveD(this,ComponentManager,SOMObject,somRespondsTo)
  1898.     (this,mId);
  1899. }
  1900.  
  1901.  
  1902. /* va_list method: somDispatch */
  1903.  
  1904. /* the va_list invocation form */
  1905. boolean   ComponentManager_somDispatch(somToken* retValue, 
  1906.         somId methodId, 
  1907.         va_list ap)
  1908. {return SOM_ResolveD(this,ComponentManager,SOMObject,somDispatch)
  1909.     (this,retValue,methodId,ap);
  1910. }
  1911.  
  1912. /* the varargs invocation form */
  1913. boolean   somDispatch(somToken* retValue, 
  1914.         somId methodId, 
  1915.         ...)
  1916. {
  1917.    va_list ap;
  1918.    va_start(ap, methodId);
  1919.    boolean __somResult = 
  1920.       SOM_ResolveD(this,ComponentManager,SOMObject,somDispatch)
  1921.     (this,retValue,methodId,ap);
  1922.    va_end(ap);
  1923.    return __somResult;
  1924. }
  1925.  
  1926.  
  1927. /* va_list method: somClassDispatch */
  1928.  
  1929. /* the va_list invocation form */
  1930. boolean   ComponentManager_somClassDispatch(SOMClass* clsObj, 
  1931.         somToken* retValue, 
  1932.         somId methodId, 
  1933.         va_list ap)
  1934. {return SOM_ResolveD(this,ComponentManager,SOMObject,somClassDispatch)
  1935.     (this,clsObj,retValue,methodId,ap);
  1936. }
  1937.  
  1938. /* the varargs invocation form */
  1939. boolean   somClassDispatch(SOMClass* clsObj, 
  1940.         somToken* retValue, 
  1941.         somId methodId, 
  1942.         ...)
  1943. {
  1944.    va_list ap;
  1945.    va_start(ap, methodId);
  1946.    boolean __somResult = 
  1947.       SOM_ResolveD(this,ComponentManager,SOMObject,somClassDispatch)
  1948.     (this,clsObj,retValue,methodId,ap);
  1949.    va_end(ap);
  1950.    return __somResult;
  1951. }
  1952.  
  1953.  
  1954. /* method: somCastObj */
  1955. boolean   somCastObj(SOMClass* cls)
  1956. {
  1957.    return SOM_ResolveD(this,ComponentManager,SOMObject,somCastObj)
  1958.     (this,cls);
  1959. }
  1960.  
  1961.  
  1962. /* method: somResetObj */
  1963. boolean   somResetObj()
  1964. {
  1965.    return SOM_ResolveD(this,ComponentManager,SOMObject,somResetObj)
  1966.     (this);
  1967. }
  1968.  
  1969.  
  1970. /* va_list method: somDispatchV */
  1971.  
  1972. /* the va_list invocation form */
  1973. void   ComponentManager_somDispatchV(somId methodId, 
  1974.         somId descriptor, 
  1975.         va_list ap)
  1976. {   SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchV)
  1977.     (this,methodId,descriptor,ap);
  1978. }
  1979.  
  1980. /* the varargs invocation form */
  1981. void   somDispatchV(somId methodId, 
  1982.         somId descriptor, 
  1983.         ...)
  1984. {
  1985.    va_list ap;
  1986.    va_start(ap, descriptor);
  1987.    SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchV)
  1988.     (this,methodId,descriptor,ap);
  1989.    va_end(ap);
  1990. }
  1991.  
  1992.  
  1993. /* va_list method: somDispatchL */
  1994.  
  1995. /* the va_list invocation form */
  1996. long   ComponentManager_somDispatchL(somId methodId, 
  1997.         somId descriptor, 
  1998.         va_list ap)
  1999. {return SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchL)
  2000.     (this,methodId,descriptor,ap);
  2001. }
  2002.  
  2003. /* the varargs invocation form */
  2004. long   somDispatchL(somId methodId, 
  2005.         somId descriptor, 
  2006.         ...)
  2007. {
  2008.    va_list ap;
  2009.    va_start(ap, descriptor);
  2010.    long __somResult = 
  2011.       SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchL)
  2012.     (this,methodId,descriptor,ap);
  2013.    va_end(ap);
  2014.    return __somResult;
  2015. }
  2016.  
  2017.  
  2018. /* va_list method: somDispatchA */
  2019.  
  2020. /* the va_list invocation form */
  2021. void*   ComponentManager_somDispatchA(somId methodId, 
  2022.         somId descriptor, 
  2023.         va_list ap)
  2024. {return SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchA)
  2025.     (this,methodId,descriptor,ap);
  2026. }
  2027.  
  2028. /* the varargs invocation form */
  2029. void*   somDispatchA(somId methodId, 
  2030.         somId descriptor, 
  2031.         ...)
  2032. {
  2033.    va_list ap;
  2034.    va_start(ap, descriptor);
  2035.    void* __somResult = 
  2036.       SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchA)
  2037.     (this,methodId,descriptor,ap);
  2038.    va_end(ap);
  2039.    return __somResult;
  2040. }
  2041.  
  2042.  
  2043. /* va_list method: somDispatchD */
  2044.  
  2045. /* the va_list invocation form */
  2046. double   ComponentManager_somDispatchD(somId methodId, 
  2047.         somId descriptor, 
  2048.         va_list ap)
  2049. {return SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchD)
  2050.     (this,methodId,descriptor,ap);
  2051. }
  2052.  
  2053. /* the varargs invocation form */
  2054. double   somDispatchD(somId methodId, 
  2055.         somId descriptor, 
  2056.         ...)
  2057. {
  2058.    va_list ap;
  2059.    va_start(ap, descriptor);
  2060.    double __somResult = 
  2061.       SOM_ResolveD(this,ComponentManager,SOMObject,somDispatchD)
  2062.     (this,methodId,descriptor,ap);
  2063.    va_end(ap);
  2064.    return __somResult;
  2065. }
  2066.  
  2067.  
  2068. /* method: somPrintSelf */
  2069. SOMObject*   somPrintSelf()
  2070. {
  2071.    return SOM_ResolveD(this,ComponentManager,SOMObject,somPrintSelf)
  2072.     (this);
  2073. }
  2074.  
  2075.  
  2076. /* method: somDumpSelf */
  2077. void   somDumpSelf(long level)
  2078. {
  2079.    SOM_ResolveD(this,ComponentManager,SOMObject,somDumpSelf)
  2080.     (this,level);
  2081. }
  2082.  
  2083.  
  2084. /* method: somDumpSelfInt */
  2085. void   somDumpSelfInt(long level)
  2086. {
  2087.    SOM_ResolveD(this,ComponentManager,SOMObject,somDumpSelfInt)
  2088.     (this,level);
  2089. }
  2090.  
  2091.  
  2092.  
  2093. };   /* ComponentManager */
  2094.  
  2095.  
  2096.  
  2097. #endif       /* SOM_ComponentManager_xh */
  2098.