home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / warphead.zip / H / EXTENSN.XH < prev    next >
Text File  |  1997-02-28  |  25KB  |  894 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: F:\build\os2\ship\include\Extensn.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emitxh: 2.47
  8.  */
  9.  
  10. #ifndef SOM_ODExtension_xh
  11. #define SOM_ODExtension_xh
  12.  
  13. class ODExtension;
  14.  
  15. #define ODExtension_MajorVersion 1
  16. #define ODExtension_MinorVersion 0
  17.  
  18. /* C++ SOM defs */
  19. #include <somcls.xh>
  20. #include <somcm.xh>
  21.  
  22. /* C++ parent defs */
  23. #ifndef SOM_ODRefCntObject_xh
  24. #include <RefCtObj.xh>
  25. #endif
  26.  
  27. #ifndef ODExtension_API
  28. #define ODExtension_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 ODObject;
  43. class ODExtension;
  44. class ODRefCntObject;
  45.  
  46. /*
  47.  * End of bindings for IDL types.
  48.  */
  49.  
  50. /* A procedure to create the ODExtension Class */
  51. SOMEXTERN SOMClass * SOMLINK ODExtensionNewClass(
  52.         integer4 majorVersion,
  53.         integer4 minorVersion);
  54.  
  55. /* The API to the ODExtension class object, and the methods it introduces. */
  56. SOMEXTERN struct ODExtensionClassDataStructure {
  57.     SOMClass *classObject;
  58.     somMToken InitExtension;
  59.     somMToken GetBase;
  60.     somMToken BaseRemoved;
  61.     somMToken IsValid;
  62.     somMToken CheckValid;
  63. } SOMDLINK ODExtensionClassData;
  64. #define _ODExtension ODExtensionClassData.classObject
  65.  
  66. /* The API to parentMtabs for ODExtension, and the instance data it introduces. */
  67. SOMEXTERN struct ODExtensionCClassDataStructure {
  68.     somMethodTabs parentMtab;
  69.     somDToken              instanceDataToken;
  70. } SOMDLINK ODExtensionCClassData;
  71.  
  72. /*
  73.  * -- Typedefs for ODExtension Method Procedures
  74.  */
  75. SOMEXTERN {
  76. typedef void   SOMLINK somTP_ODExtension_InitExtension(ODExtension *somSelf, Environment *ev, 
  77.         ODObject* base);
  78. typedef somTP_ODExtension_InitExtension *somTD_ODExtension_InitExtension;
  79. typedef ODObject*   SOMLINK somTP_ODExtension_GetBase(ODExtension *somSelf, Environment *ev);
  80. typedef somTP_ODExtension_GetBase *somTD_ODExtension_GetBase;
  81. typedef void   SOMLINK somTP_ODExtension_BaseRemoved(ODExtension *somSelf, Environment *ev);
  82. typedef somTP_ODExtension_BaseRemoved *somTD_ODExtension_BaseRemoved;
  83. typedef ODBoolean   SOMLINK somTP_ODExtension_IsValid(ODExtension *somSelf, Environment *ev);
  84. typedef somTP_ODExtension_IsValid *somTD_ODExtension_IsValid;
  85. typedef void   SOMLINK somTP_ODExtension_CheckValid(ODExtension *somSelf, Environment *ev);
  86. typedef somTP_ODExtension_CheckValid *somTD_ODExtension_CheckValid;
  87.  
  88. /*
  89.  * -- Typedefs for Reintroduced Wrapper Methods
  90.  */
  91. typedef void   SOMLINK somTP_ODExtension_InitRefCntObject(ODExtension *somSelf, Environment *ev);
  92. typedef somTP_ODExtension_InitRefCntObject *somTD_ODExtension_InitRefCntObject;
  93. typedef void   SOMLINK somTP_ODExtension_Acquire(ODExtension *somSelf, Environment *ev);
  94. typedef somTP_ODExtension_Acquire *somTD_ODExtension_Acquire;
  95. typedef void   SOMLINK somTP_ODExtension_Release(ODExtension *somSelf, Environment *ev);
  96. typedef somTP_ODExtension_Release *somTD_ODExtension_Release;
  97. typedef ODULong   SOMLINK somTP_ODExtension_GetRefCount(ODExtension *somSelf, Environment *ev);
  98. typedef somTP_ODExtension_GetRefCount *somTD_ODExtension_GetRefCount;
  99. typedef void   SOMLINK somTP_ODExtension_somUninit(ODExtension *somSelf);
  100. typedef somTP_ODExtension_somUninit *somTD_ODExtension_somUninit;
  101. typedef void   SOMLINK somTP_ODExtension_InitObject(ODExtension *somSelf, Environment *ev);
  102. typedef somTP_ODExtension_InitObject *somTD_ODExtension_InitObject;
  103. typedef ODBoolean   SOMLINK somTP_ODExtension_HasExtension(ODExtension *somSelf, Environment *ev, 
  104.         ODType extensionName);
  105. typedef somTP_ODExtension_HasExtension *somTD_ODExtension_HasExtension;
  106. typedef ODExtension*   SOMLINK somTP_ODExtension_AcquireExtension(ODExtension *somSelf, Environment *ev, 
  107.         ODType extensionName);
  108. typedef somTP_ODExtension_AcquireExtension *somTD_ODExtension_AcquireExtension;
  109. typedef void   SOMLINK somTP_ODExtension_ReleaseExtension(ODExtension *somSelf, Environment *ev, 
  110.         ODExtension* extension);
  111. typedef somTP_ODExtension_ReleaseExtension *somTD_ODExtension_ReleaseExtension;
  112. typedef ODSize   SOMLINK somTP_ODExtension_Purge(ODExtension *somSelf, Environment *ev, 
  113.         ODSize size);
  114. typedef somTP_ODExtension_Purge *somTD_ODExtension_Purge;
  115. typedef ODBoolean   SOMLINK somTP_ODExtension_IsEqualTo(ODExtension *somSelf, Environment *ev, 
  116.         ODObject* object);
  117. typedef somTP_ODExtension_IsEqualTo *somTD_ODExtension_IsEqualTo;
  118. typedef void   SOMLINK somTP_ODExtension_SubClassResponsibility(ODExtension *somSelf, Environment *ev);
  119. typedef somTP_ODExtension_SubClassResponsibility *somTD_ODExtension_SubClassResponsibility;
  120. typedef void   SOMLINK somTP_ODExtension_somInit(ODExtension *somSelf);
  121. typedef somTP_ODExtension_somInit *somTD_ODExtension_somInit;
  122. typedef void   SOMLINK somTP_ODExtension_somDefaultInit(ODExtension *somSelf, 
  123.         som3InitCtrl* ctrl);
  124. typedef somTP_ODExtension_somDefaultInit *somTD_ODExtension_somDefaultInit;
  125. typedef void   SOMLINK somTP_ODExtension_somDestruct(ODExtension *somSelf, 
  126.         octet doFree, 
  127.         som3DestructCtrl* ctrl);
  128. typedef somTP_ODExtension_somDestruct *somTD_ODExtension_somDestruct;
  129. typedef void   SOMLINK somTP_ODExtension_somDefaultCopyInit(ODExtension *somSelf, 
  130.         som3InitCtrl* ctrl, 
  131.         SOMObject* fromObj);
  132. typedef somTP_ODExtension_somDefaultCopyInit *somTD_ODExtension_somDefaultCopyInit;
  133. typedef ODExtension*   SOMLINK somTP_ODExtension_somDefaultAssign(ODExtension *somSelf, 
  134.         som3AssignCtrl* ctrl, 
  135.         SOMObject* fromObj);
  136. typedef somTP_ODExtension_somDefaultAssign *somTD_ODExtension_somDefaultAssign;
  137. typedef void   SOMLINK somTP_ODExtension_somDefaultConstCopyInit(ODExtension *somSelf, 
  138.         som3InitCtrl* ctrl, 
  139.         SOMObject* fromObj);
  140. typedef somTP_ODExtension_somDefaultConstCopyInit *somTD_ODExtension_somDefaultConstCopyInit;
  141. typedef void   SOMLINK somTP_ODExtension_somDefaultVCopyInit(ODExtension *somSelf, 
  142.         som3InitCtrl* ctrl, 
  143.         SOMObject* fromObj);
  144. typedef somTP_ODExtension_somDefaultVCopyInit *somTD_ODExtension_somDefaultVCopyInit;
  145. typedef void   SOMLINK somTP_ODExtension_somDefaultConstVCopyInit(ODExtension *somSelf, 
  146.         som3InitCtrl* ctrl, 
  147.         SOMObject* fromObj);
  148. typedef somTP_ODExtension_somDefaultConstVCopyInit *somTD_ODExtension_somDefaultConstVCopyInit;
  149. typedef ODExtension*   SOMLINK somTP_ODExtension_somDefaultConstAssign(ODExtension *somSelf, 
  150.         som3AssignCtrl* ctrl, 
  151.         SOMObject* fromObj);
  152. typedef somTP_ODExtension_somDefaultConstAssign *somTD_ODExtension_somDefaultConstAssign;
  153. typedef ODExtension*   SOMLINK somTP_ODExtension_somDefaultVAssign(ODExtension *somSelf, 
  154.         som3AssignCtrl* ctrl, 
  155.         SOMObject* fromObj);
  156. typedef somTP_ODExtension_somDefaultVAssign *somTD_ODExtension_somDefaultVAssign;
  157. typedef ODExtension*   SOMLINK somTP_ODExtension_somDefaultConstVAssign(ODExtension *somSelf, 
  158.         som3AssignCtrl* ctrl, 
  159.         SOMObject* fromObj);
  160. typedef somTP_ODExtension_somDefaultConstVAssign *somTD_ODExtension_somDefaultConstVAssign;
  161. typedef void   SOMLINK somTP_ODExtension_somFree(ODExtension *somSelf);
  162. typedef somTP_ODExtension_somFree *somTD_ODExtension_somFree;
  163. typedef SOMClass*   SOMLINK somTP_ODExtension_somGetClass(ODExtension *somSelf);
  164. typedef somTP_ODExtension_somGetClass *somTD_ODExtension_somGetClass;
  165. typedef string   SOMLINK somTP_ODExtension_somGetClassName(ODExtension *somSelf);
  166. typedef somTP_ODExtension_somGetClassName *somTD_ODExtension_somGetClassName;
  167. typedef long   SOMLINK somTP_ODExtension_somGetSize(ODExtension *somSelf);
  168. typedef somTP_ODExtension_somGetSize *somTD_ODExtension_somGetSize;
  169. typedef boolean   SOMLINK somTP_ODExtension_somIsA(ODExtension *somSelf, 
  170.         SOMClass* aClassObj);
  171. typedef somTP_ODExtension_somIsA *somTD_ODExtension_somIsA;
  172. typedef boolean   SOMLINK somTP_ODExtension_somIsInstanceOf(ODExtension *somSelf, 
  173.         SOMClass* aClassObj);
  174. typedef somTP_ODExtension_somIsInstanceOf *somTD_ODExtension_somIsInstanceOf;
  175. typedef boolean   SOMLINK somTP_ODExtension_somRespondsTo(ODExtension *somSelf, 
  176.         somId mId);
  177. typedef somTP_ODExtension_somRespondsTo *somTD_ODExtension_somRespondsTo;
  178. typedef boolean   SOMLINK somTP_ODExtension_somDispatch(ODExtension *somSelf, 
  179.         somToken* retValue, 
  180.         somId methodId, 
  181.         va_list ap);
  182. typedef somTP_ODExtension_somDispatch *somTD_ODExtension_somDispatch;
  183. typedef boolean   SOMLINK somTP_ODExtension_somClassDispatch(ODExtension *somSelf, 
  184.         SOMClass* clsObj, 
  185.         somToken* retValue, 
  186.         somId methodId, 
  187.         va_list ap);
  188. typedef somTP_ODExtension_somClassDispatch *somTD_ODExtension_somClassDispatch;
  189. typedef boolean   SOMLINK somTP_ODExtension_somCastObj(ODExtension *somSelf, 
  190.         SOMClass* cls);
  191. typedef somTP_ODExtension_somCastObj *somTD_ODExtension_somCastObj;
  192. typedef boolean   SOMLINK somTP_ODExtension_somResetObj(ODExtension *somSelf);
  193. typedef somTP_ODExtension_somResetObj *somTD_ODExtension_somResetObj;
  194. typedef void   SOMLINK somTP_ODExtension_somDispatchV(ODExtension *somSelf, 
  195.         somId methodId, 
  196.         somId descriptor, 
  197.         va_list ap);
  198. typedef somTP_ODExtension_somDispatchV *somTD_ODExtension_somDispatchV;
  199. typedef long   SOMLINK somTP_ODExtension_somDispatchL(ODExtension *somSelf, 
  200.         somId methodId, 
  201.         somId descriptor, 
  202.         va_list ap);
  203. typedef somTP_ODExtension_somDispatchL *somTD_ODExtension_somDispatchL;
  204. typedef void*   SOMLINK somTP_ODExtension_somDispatchA(ODExtension *somSelf, 
  205.         somId methodId, 
  206.         somId descriptor, 
  207.         va_list ap);
  208. typedef somTP_ODExtension_somDispatchA *somTD_ODExtension_somDispatchA;
  209. typedef double   SOMLINK somTP_ODExtension_somDispatchD(ODExtension *somSelf, 
  210.         somId methodId, 
  211.         somId descriptor, 
  212.         va_list ap);
  213. typedef somTP_ODExtension_somDispatchD *somTD_ODExtension_somDispatchD;
  214. typedef SOMObject*   SOMLINK somTP_ODExtension_somPrintSelf(ODExtension *somSelf);
  215. typedef somTP_ODExtension_somPrintSelf *somTD_ODExtension_somPrintSelf;
  216. typedef void   SOMLINK somTP_ODExtension_somDumpSelf(ODExtension *somSelf, 
  217.         long level);
  218. typedef somTP_ODExtension_somDumpSelf *somTD_ODExtension_somDumpSelf;
  219. typedef void   SOMLINK somTP_ODExtension_somDumpSelfInt(ODExtension *somSelf, 
  220.         long level);
  221. typedef somTP_ODExtension_somDumpSelfInt *somTD_ODExtension_somDumpSelfInt;
  222. }
  223.  
  224. #endif /* ODExtension_API */
  225.  
  226.  
  227. /*
  228.  * -- This emitter treats Method Tokens as Thunks by default.
  229.  * -- Use the sc modifier "nothunks" to change this default
  230.  */
  231. #undef somresolve_
  232. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  233.  
  234. /*
  235.  * -- The C++ Wrapper Class for ODExtension
  236.  */
  237. class ODExtension : public ODRefCntObject
  238. {
  239. public:
  240.  
  241. // ODExtension::new creates the class object if necessary, and then uses somNewNoInit
  242. // to allocate memory and create the object. Initialization is in ctors.
  243. void *operator new(size_t)
  244. {
  245.    if (!_ODExtension) ODExtensionNewClass(ODExtension_MajorVersion,ODExtension_MinorVersion);
  246.    return (void*)
  247.       SOM_Resolve(_ODExtension,SOMClass,somNewNoInit)
  248.          ((SOMClass *)((void*)_ODExtension));
  249. }
  250.  
  251. // ODExtension::delete uses somDestruct.
  252. void operator delete(void * obj)
  253. {
  254.    if (obj && *(void**)obj) {
  255.       SOM_Resolve(obj,SOMObject,somFree)
  256.          ((SOMObject*)obj);
  257.    }
  258. }
  259.  
  260. ODExtension& operator=(ODExtension& fromObj)
  261. {
  262.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  263.    return *this;
  264. }
  265.  
  266. ODExtension()
  267. {
  268.    if (*(void**)this != 
  269.        ((somParentMtabStructPtr)
  270.         (ODExtensionCClassData.parentMtab))->mtab)
  271.       return;
  272.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  273. }
  274.  
  275. ODExtension(ODExtension* fromObj)
  276. {
  277.    if (*(void**)this != 
  278.        ((somParentMtabStructPtr)
  279.         (ODExtensionCClassData.parentMtab))->mtab)
  280.       return;
  281.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  282. }
  283.  
  284. #ifdef __IBMCPP__
  285. #pragma info(nocnv,nopar)
  286. #endif
  287. ODExtension(const ODExtension* fromObj)
  288. {
  289.    if (*(void**)this != 
  290.        ((somParentMtabStructPtr)
  291.         (ODExtensionCClassData.parentMtab))->mtab)
  292.       return;
  293.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  294. }
  295. #ifdef __IBMCPP__
  296. #pragma info(restore)
  297. #endif
  298.  
  299.  
  300. /* method: InitExtension */
  301. void   InitExtension(Environment *ev, 
  302.         ODObject* base)
  303. {
  304.    SOM_ResolveD(this,ODExtension,ODExtension,InitExtension)
  305.     (this, ev,base);
  306. #ifdef SOMCHKEXCEPT
  307.    if ( ev->_major != NO_EXCEPTION )
  308.       SOMCHKEXCEPT;
  309. #endif
  310. }
  311.  
  312.  
  313. /* method: GetBase */
  314. ODObject*   GetBase(Environment *ev)
  315. {
  316. #ifdef SOMCHKEXCEPT
  317.    ODObject* __somResult = 
  318.       SOM_ResolveD(this,ODExtension,ODExtension,GetBase)
  319.     (this, ev);
  320.    if ( ev->_major != NO_EXCEPTION )
  321.       SOMCHKEXCEPT;
  322.    return __somResult;
  323. #else
  324.    return SOM_ResolveD(this,ODExtension,ODExtension,GetBase)
  325.     (this, ev);
  326. #endif
  327. }
  328.  
  329.  
  330. /* method: BaseRemoved */
  331. void   BaseRemoved(Environment *ev)
  332. {
  333.    SOM_ResolveD(this,ODExtension,ODExtension,BaseRemoved)
  334.     (this, ev);
  335. #ifdef SOMCHKEXCEPT
  336.    if ( ev->_major != NO_EXCEPTION )
  337.       SOMCHKEXCEPT;
  338. #endif
  339. }
  340.  
  341.  
  342. /* method: IsValid */
  343. ODBoolean   IsValid(Environment *ev)
  344. {
  345. #ifdef SOMCHKEXCEPT
  346.    ODBoolean __somResult = 
  347.       SOM_ResolveD(this,ODExtension,ODExtension,IsValid)
  348.     (this, ev);
  349.    if ( ev->_major != NO_EXCEPTION )
  350.       SOMCHKEXCEPT;
  351.    return __somResult;
  352. #else
  353.    return SOM_ResolveD(this,ODExtension,ODExtension,IsValid)
  354.     (this, ev);
  355. #endif
  356. }
  357.  
  358.  
  359. /* method: CheckValid */
  360. void   CheckValid(Environment *ev)
  361. {
  362.    SOM_ResolveD(this,ODExtension,ODExtension,CheckValid)
  363.     (this, ev);
  364. #ifdef SOMCHKEXCEPT
  365.    if ( ev->_major != NO_EXCEPTION )
  366.       SOMCHKEXCEPT;
  367. #endif
  368. }
  369.  
  370.  
  371. /*
  372.  * Reintroduce inherited methods
  373.  */
  374.  
  375. /* method: InitRefCntObject */
  376. void   InitRefCntObject(Environment *ev)
  377. {
  378.    SOM_ResolveD(this,ODExtension,ODRefCntObject,InitRefCntObject)
  379.     (this, ev);
  380. #ifdef SOMCHKEXCEPT
  381.    if ( ev->_major != NO_EXCEPTION )
  382.       SOMCHKEXCEPT;
  383. #endif
  384. }
  385.  
  386.  
  387. /* method: Acquire */
  388. void   Acquire(Environment *ev)
  389. {
  390.    SOM_ResolveD(this,ODExtension,ODRefCntObject,Acquire)
  391.     (this, ev);
  392. #ifdef SOMCHKEXCEPT
  393.    if ( ev->_major != NO_EXCEPTION )
  394.       SOMCHKEXCEPT;
  395. #endif
  396. }
  397.  
  398.  
  399. /* method: Release */
  400. void   Release(Environment *ev)
  401. {
  402.    SOM_ResolveD(this,ODExtension,ODRefCntObject,Release)
  403.     (this, ev);
  404. #ifdef SOMCHKEXCEPT
  405.    if ( ev->_major != NO_EXCEPTION )
  406.       SOMCHKEXCEPT;
  407. #endif
  408. }
  409.  
  410.  
  411. /* method: GetRefCount */
  412. ODULong   GetRefCount(Environment *ev)
  413. {
  414. #ifdef SOMCHKEXCEPT
  415.    ODULong __somResult = 
  416.       SOM_ResolveD(this,ODExtension,ODRefCntObject,GetRefCount)
  417.     (this, ev);
  418.    if ( ev->_major != NO_EXCEPTION )
  419.       SOMCHKEXCEPT;
  420.    return __somResult;
  421. #else
  422.    return SOM_ResolveD(this,ODExtension,ODRefCntObject,GetRefCount)
  423.     (this, ev);
  424. #endif
  425. }
  426.  
  427.  
  428. /* method: somUninit */
  429. void   somUninit()
  430. {
  431.    SOM_ResolveD(this,ODExtension,SOMObject,somUninit)
  432.     (this);
  433. }
  434.  
  435.  
  436. /* method: InitObject */
  437. void   InitObject(Environment *ev)
  438. {
  439.    SOM_ResolveD(this,ODExtension,ODObject,InitObject)
  440.     (this, ev);
  441. #ifdef SOMCHKEXCEPT
  442.    if ( ev->_major != NO_EXCEPTION )
  443.       SOMCHKEXCEPT;
  444. #endif
  445. }
  446.  
  447.  
  448. /* method: HasExtension */
  449. ODBoolean   HasExtension(Environment *ev, 
  450.         ODType extensionName)
  451. {
  452. #ifdef SOMCHKEXCEPT
  453.    ODBoolean __somResult = 
  454.       SOM_ResolveD(this,ODExtension,ODObject,HasExtension)
  455.     (this, ev,extensionName);
  456.    if ( ev->_major != NO_EXCEPTION )
  457.       SOMCHKEXCEPT;
  458.    return __somResult;
  459. #else
  460.    return SOM_ResolveD(this,ODExtension,ODObject,HasExtension)
  461.     (this, ev,extensionName);
  462. #endif
  463. }
  464.  
  465.  
  466. /* method: AcquireExtension */
  467. ODExtension*   AcquireExtension(Environment *ev, 
  468.         ODType extensionName)
  469. {
  470. #ifdef SOMCHKEXCEPT
  471.    ODExtension* __somResult = 
  472.       SOM_ResolveD(this,ODExtension,ODObject,AcquireExtension)
  473.     (this, ev,extensionName);
  474.    if ( ev->_major != NO_EXCEPTION )
  475.       SOMCHKEXCEPT;
  476.    return __somResult;
  477. #else
  478.    return SOM_ResolveD(this,ODExtension,ODObject,AcquireExtension)
  479.     (this, ev,extensionName);
  480. #endif
  481. }
  482.  
  483.  
  484. /* method: ReleaseExtension */
  485. void   ReleaseExtension(Environment *ev, 
  486.         ODExtension* extension)
  487. {
  488.    SOM_ResolveD(this,ODExtension,ODObject,ReleaseExtension)
  489.     (this, ev,extension);
  490. #ifdef SOMCHKEXCEPT
  491.    if ( ev->_major != NO_EXCEPTION )
  492.       SOMCHKEXCEPT;
  493. #endif
  494. }
  495.  
  496.  
  497. /* method: Purge */
  498. ODSize   Purge(Environment *ev, 
  499.         ODSize size)
  500. {
  501. #ifdef SOMCHKEXCEPT
  502.    ODSize __somResult = 
  503.       SOM_ResolveD(this,ODExtension,ODObject,Purge)
  504.     (this, ev,size);
  505.    if ( ev->_major != NO_EXCEPTION )
  506.       SOMCHKEXCEPT;
  507.    return __somResult;
  508. #else
  509.    return SOM_ResolveD(this,ODExtension,ODObject,Purge)
  510.     (this, ev,size);
  511. #endif
  512. }
  513.  
  514.  
  515. /* method: IsEqualTo */
  516. ODBoolean   IsEqualTo(Environment *ev, 
  517.         ODObject* object)
  518. {
  519. #ifdef SOMCHKEXCEPT
  520.    ODBoolean __somResult = 
  521.       SOM_ResolveD(this,ODExtension,ODObject,IsEqualTo)
  522.     (this, ev,object);
  523.    if ( ev->_major != NO_EXCEPTION )
  524.       SOMCHKEXCEPT;
  525.    return __somResult;
  526. #else
  527.    return SOM_ResolveD(this,ODExtension,ODObject,IsEqualTo)
  528.     (this, ev,object);
  529. #endif
  530. }
  531.  
  532.  
  533. /* method: SubClassResponsibility */
  534. void   SubClassResponsibility(Environment *ev)
  535. {
  536.    SOM_ResolveD(this,ODExtension,ODObject,SubClassResponsibility)
  537.     (this, ev);
  538. #ifdef SOMCHKEXCEPT
  539.    if ( ev->_major != NO_EXCEPTION )
  540.       SOMCHKEXCEPT;
  541. #endif
  542. }
  543.  
  544.  
  545. /* method: somInit */
  546. void   somInit()
  547. {
  548.    SOM_ResolveD(this,ODExtension,SOMObject,somInit)
  549.     (this);
  550. }
  551.  
  552.  
  553. /* initializer method: somDefaultInit */
  554. void   somDefaultInit(som3InitCtrl* ctrl)
  555. {
  556.    SOM_ResolveD(this,ODExtension,SOMObject,somDefaultInit)
  557.     (this,ctrl);
  558. }
  559.  
  560.  
  561. /* method: somDestruct */
  562. void   somDestruct(octet doFree, 
  563.         som3DestructCtrl* ctrl)
  564. {
  565.    SOM_ResolveD(this,ODExtension,SOMObject,somDestruct)
  566.     (this,doFree,ctrl);
  567. }
  568.  
  569.  
  570. /* initializer method: somDefaultCopyInit */
  571. void   somDefaultCopyInit(som3InitCtrl* ctrl, 
  572.         SOMObject* fromObj)
  573. {
  574.    SOM_ResolveD(this,ODExtension,SOMObject,somDefaultCopyInit)
  575.     (this,ctrl,fromObj);
  576. }
  577.  
  578.  
  579. /* method: somDefaultAssign */
  580. ODExtension*  somDefaultAssign(som3AssignCtrl* ctrl, 
  581.         SOMObject* fromObj)
  582. {
  583.    return SOM_ResolveD(this,ODExtension,SOMObject,somDefaultAssign)
  584.     (this,ctrl,fromObj);
  585. }
  586.  
  587.  
  588. /* initializer method: somDefaultConstCopyInit */
  589. void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
  590.         SOMObject* fromObj)
  591. {
  592.    SOM_ResolveD(this,ODExtension,SOMObject,somDefaultConstCopyInit)
  593.     (this,ctrl,fromObj);
  594. }
  595.  
  596.  
  597. /* initializer method: somDefaultVCopyInit */
  598. void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
  599.         SOMObject* fromObj)
  600. {
  601.    SOM_ResolveD(this,ODExtension,SOMObject,somDefaultVCopyInit)
  602.     (this,ctrl,fromObj);
  603. }
  604.  
  605.  
  606. /* initializer method: somDefaultConstVCopyInit */
  607. void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
  608.         SOMObject* fromObj)
  609. {
  610.    SOM_ResolveD(this,ODExtension,SOMObject,somDefaultConstVCopyInit)
  611.     (this,ctrl,fromObj);
  612. }
  613.  
  614.  
  615. /* method: somDefaultConstAssign */
  616. ODExtension*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
  617.         SOMObject* fromObj)
  618. {
  619.    return SOM_ResolveD(this,ODExtension,SOMObject,somDefaultConstAssign)
  620.     (this,ctrl,fromObj);
  621. }
  622.  
  623.  
  624. /* method: somDefaultVAssign */
  625. ODExtension*  somDefaultVAssign(som3AssignCtrl* ctrl, 
  626.         SOMObject* fromObj)
  627. {
  628.    return SOM_ResolveD(this,ODExtension,SOMObject,somDefaultVAssign)
  629.     (this,ctrl,fromObj);
  630. }
  631.  
  632.  
  633. /* method: somDefaultConstVAssign */
  634. ODExtension*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
  635.         SOMObject* fromObj)
  636. {
  637.    return SOM_ResolveD(this,ODExtension,SOMObject,somDefaultConstVAssign)
  638.     (this,ctrl,fromObj);
  639. }
  640.  
  641.  
  642. /* method: somFree */
  643. void   somFree()
  644. {
  645.    SOM_ResolveD(this,ODExtension,SOMObject,somFree)
  646.     (this);
  647. }
  648.  
  649.  
  650. /* method: somGetClass */
  651. SOMClass*   somGetClass()
  652. {
  653.    return SOM_ResolveD(this,ODExtension,SOMObject,somGetClass)
  654.     (this);
  655. }
  656.  
  657.  
  658. /* method: somGetClassName */
  659. string   somGetClassName()
  660. {
  661.    return SOM_ResolveD(this,ODExtension,SOMObject,somGetClassName)
  662.     (this);
  663. }
  664.  
  665.  
  666. /* method: somGetSize */
  667. long   somGetSize()
  668. {
  669.    return SOM_ResolveD(this,ODExtension,SOMObject,somGetSize)
  670.     (this);
  671. }
  672.  
  673.  
  674. /* method: somIsA */
  675. boolean   somIsA(SOMClass* aClassObj)
  676. {
  677.    return SOM_ResolveD(this,ODExtension,SOMObject,somIsA)
  678.     (this,aClassObj);
  679. }
  680.  
  681.  
  682. /* method: somIsInstanceOf */
  683. boolean   somIsInstanceOf(SOMClass* aClassObj)
  684. {
  685.    return SOM_ResolveD(this,ODExtension,SOMObject,somIsInstanceOf)
  686.     (this,aClassObj);
  687. }
  688.  
  689.  
  690. /* method: somRespondsTo */
  691. boolean   somRespondsTo(somId mId)
  692. {
  693.    return SOM_ResolveD(this,ODExtension,SOMObject,somRespondsTo)
  694.     (this,mId);
  695. }
  696.  
  697.  
  698. /* va_list method: somDispatch */
  699.  
  700. /* the va_list invocation form */
  701. boolean   ODExtension_somDispatch(somToken* retValue, 
  702.         somId methodId, 
  703.         va_list ap)
  704. {return SOM_ResolveD(this,ODExtension,SOMObject,somDispatch)
  705.     (this,retValue,methodId,ap);
  706. }
  707.  
  708. /* the varargs invocation form */
  709. boolean   somDispatch(somToken* retValue, 
  710.         somId methodId, 
  711.         ...)
  712. {
  713.    va_list ap;
  714.    va_start(ap, methodId);
  715.    boolean __somResult = 
  716.       SOM_ResolveD(this,ODExtension,SOMObject,somDispatch)
  717.     (this,retValue,methodId,ap);
  718.    va_end(ap);
  719.    return __somResult;
  720. }
  721.  
  722.  
  723. /* va_list method: somClassDispatch */
  724.  
  725. /* the va_list invocation form */
  726. boolean   ODExtension_somClassDispatch(SOMClass* clsObj, 
  727.         somToken* retValue, 
  728.         somId methodId, 
  729.         va_list ap)
  730. {return SOM_ResolveD(this,ODExtension,SOMObject,somClassDispatch)
  731.     (this,clsObj,retValue,methodId,ap);
  732. }
  733.  
  734. /* the varargs invocation form */
  735. boolean   somClassDispatch(SOMClass* clsObj, 
  736.         somToken* retValue, 
  737.         somId methodId, 
  738.         ...)
  739. {
  740.    va_list ap;
  741.    va_start(ap, methodId);
  742.    boolean __somResult = 
  743.       SOM_ResolveD(this,ODExtension,SOMObject,somClassDispatch)
  744.     (this,clsObj,retValue,methodId,ap);
  745.    va_end(ap);
  746.    return __somResult;
  747. }
  748.  
  749.  
  750. /* method: somCastObj */
  751. boolean   somCastObj(SOMClass* cls)
  752. {
  753.    return SOM_ResolveD(this,ODExtension,SOMObject,somCastObj)
  754.     (this,cls);
  755. }
  756.  
  757.  
  758. /* method: somResetObj */
  759. boolean   somResetObj()
  760. {
  761.    return SOM_ResolveD(this,ODExtension,SOMObject,somResetObj)
  762.     (this);
  763. }
  764.  
  765.  
  766. /* va_list method: somDispatchV */
  767.  
  768. /* the va_list invocation form */
  769. void   ODExtension_somDispatchV(somId methodId, 
  770.         somId descriptor, 
  771.         va_list ap)
  772. {   SOM_ResolveD(this,ODExtension,SOMObject,somDispatchV)
  773.     (this,methodId,descriptor,ap);
  774. }
  775.  
  776. /* the varargs invocation form */
  777. void   somDispatchV(somId methodId, 
  778.         somId descriptor, 
  779.         ...)
  780. {
  781.    va_list ap;
  782.    va_start(ap, descriptor);
  783.    SOM_ResolveD(this,ODExtension,SOMObject,somDispatchV)
  784.     (this,methodId,descriptor,ap);
  785.    va_end(ap);
  786. }
  787.  
  788.  
  789. /* va_list method: somDispatchL */
  790.  
  791. /* the va_list invocation form */
  792. long   ODExtension_somDispatchL(somId methodId, 
  793.         somId descriptor, 
  794.         va_list ap)
  795. {return SOM_ResolveD(this,ODExtension,SOMObject,somDispatchL)
  796.     (this,methodId,descriptor,ap);
  797. }
  798.  
  799. /* the varargs invocation form */
  800. long   somDispatchL(somId methodId, 
  801.         somId descriptor, 
  802.         ...)
  803. {
  804.    va_list ap;
  805.    va_start(ap, descriptor);
  806.    long __somResult = 
  807.       SOM_ResolveD(this,ODExtension,SOMObject,somDispatchL)
  808.     (this,methodId,descriptor,ap);
  809.    va_end(ap);
  810.    return __somResult;
  811. }
  812.  
  813.  
  814. /* va_list method: somDispatchA */
  815.  
  816. /* the va_list invocation form */
  817. void*   ODExtension_somDispatchA(somId methodId, 
  818.         somId descriptor, 
  819.         va_list ap)
  820. {return SOM_ResolveD(this,ODExtension,SOMObject,somDispatchA)
  821.     (this,methodId,descriptor,ap);
  822. }
  823.  
  824. /* the varargs invocation form */
  825. void*   somDispatchA(somId methodId, 
  826.         somId descriptor, 
  827.         ...)
  828. {
  829.    va_list ap;
  830.    va_start(ap, descriptor);
  831.    void* __somResult = 
  832.       SOM_ResolveD(this,ODExtension,SOMObject,somDispatchA)
  833.     (this,methodId,descriptor,ap);
  834.    va_end(ap);
  835.    return __somResult;
  836. }
  837.  
  838.  
  839. /* va_list method: somDispatchD */
  840.  
  841. /* the va_list invocation form */
  842. double   ODExtension_somDispatchD(somId methodId, 
  843.         somId descriptor, 
  844.         va_list ap)
  845. {return SOM_ResolveD(this,ODExtension,SOMObject,somDispatchD)
  846.     (this,methodId,descriptor,ap);
  847. }
  848.  
  849. /* the varargs invocation form */
  850. double   somDispatchD(somId methodId, 
  851.         somId descriptor, 
  852.         ...)
  853. {
  854.    va_list ap;
  855.    va_start(ap, descriptor);
  856.    double __somResult = 
  857.       SOM_ResolveD(this,ODExtension,SOMObject,somDispatchD)
  858.     (this,methodId,descriptor,ap);
  859.    va_end(ap);
  860.    return __somResult;
  861. }
  862.  
  863.  
  864. /* method: somPrintSelf */
  865. SOMObject*   somPrintSelf()
  866. {
  867.    return SOM_ResolveD(this,ODExtension,SOMObject,somPrintSelf)
  868.     (this);
  869. }
  870.  
  871.  
  872. /* method: somDumpSelf */
  873. void   somDumpSelf(long level)
  874. {
  875.    SOM_ResolveD(this,ODExtension,SOMObject,somDumpSelf)
  876.     (this,level);
  877. }
  878.  
  879.  
  880. /* method: somDumpSelfInt */
  881. void   somDumpSelfInt(long level)
  882. {
  883.    SOM_ResolveD(this,ODExtension,SOMObject,somDumpSelfInt)
  884.     (this,level);
  885. }
  886.  
  887.  
  888.  
  889. };   /* ODExtension */
  890.  
  891.  
  892.  
  893. #endif       /* SOM_ODExtension_xh */
  894.