home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / samples / compiler / dts / xhmain / dtsdll / info.xh < prev    next >
Encoding:
Text File  |  1996-02-21  |  13.6 KB  |  557 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: .\xhmain\dtsdll\info.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: Development
  7.  *     SOM Emitter emitxh.dll: Development
  8.  */
  9.  
  10. /*
  11.  * 
  12.  * 
  13.  * Generated on Wed Feb 21 12:41:50 1996
  14.  * Generated from info.hh
  15.  * Using IBM VisualAge for C++ for Windows, Version 3.5
  16.  */
  17.  
  18.  
  19. #ifndef SOM_info_xh
  20. #define SOM_info_xh
  21.  
  22. class info;
  23.  
  24. #define info_MajorVersion 0
  25. #define info_MinorVersion 0
  26.  
  27. /* C++ SOM defs */
  28. #include <somcls.xh>
  29. #include <somcm.xh>
  30.  
  31. /* C++ parent defs */
  32. #ifndef SOM_SOMObject_xh
  33. #include <somobj.xh>
  34. #endif
  35.  
  36. #ifndef info_API
  37. #define info_API
  38. /*
  39.  * -- The Class API
  40.  */
  41.  
  42. /*
  43.  * Start of user-defined types:
  44.  */
  45. class SOMClass;
  46. class SOMObject;
  47. class info;
  48.  
  49. /*
  50.  * End of user-defined types.
  51.  */
  52.  
  53. /* A procedure to create the info Class */
  54. SOMEXTERN
  55. #if (defined(SOM_Module_info_Source) || defined(info_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_info))
  56. WIN32_DLLEXPORT
  57. #else
  58. WIN32_DLLIMPORT
  59. #endif
  60. SOMClass * SOMLINK infoNewClass(
  61.         integer4,
  62.         integer4 );
  63.  
  64. /* The API to the info class object, and the methods it introduces. */
  65. SOMEXTERN struct infoClassDataStructure {
  66.     SOMClass *classObject;
  67.     somMToken _get_x;
  68.     somMToken _set_x;
  69.     somMToken _get_y;
  70.     somMToken _set_y;
  71. }
  72. #if !(defined(SOM_Module_info_Source) || defined(info_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_info))
  73. WIN32_DLLIMPORT
  74. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  75. WIN32_DLLEXPORT
  76. #endif
  77. SOMDLINK infoClassData;
  78. #define _info infoClassData.classObject
  79.  
  80. /* The API to parentMtabs for info, and the instance data it introduces. */
  81. SOMEXTERN struct infoCClassDataStructure {
  82.     somMethodTabs parentMtab;
  83.     somDToken              instanceDataToken;
  84. }
  85. #if !(defined(SOM_Module_info_Source) || defined(info_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_info))
  86. WIN32_DLLIMPORT
  87. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  88. WIN32_DLLEXPORT
  89. #endif
  90. SOMDLINK infoCClassData;
  91.  
  92. /*
  93.  * -- Typedefs for info Method Procedures
  94.  */
  95. extern "C" {
  96. typedef short   SOMLINK somTP_info__get_x(info *somSelf, Environment *ev);
  97. typedef somTP_info__get_x *somTD_info__get_x;
  98. typedef void   SOMLINK somTP_info__set_x(info *somSelf, Environment *ev,
  99.         short x);
  100. typedef somTP_info__set_x *somTD_info__set_x;
  101. typedef char   SOMLINK somTP_info__get_y(info *somSelf, Environment *ev);
  102. typedef somTP_info__get_y *somTD_info__get_y;
  103. typedef void   SOMLINK somTP_info__set_y(info *somSelf, Environment *ev,
  104.         char y);
  105. typedef somTP_info__set_y *somTD_info__set_y;
  106.  
  107. /*
  108.  * -- Typedefs for Reintroduced Wrapper Methods
  109.  */
  110. typedef void   SOMLINK somTP_info_somDefaultInit(info *somSelf,
  111.         somInitCtrl* ctrl);
  112. typedef somTP_info_somDefaultInit *somTD_info_somDefaultInit;
  113. typedef void   SOMLINK somTP_info_somDestruct(info *somSelf,
  114.         octet doFree,
  115.         somDestructCtrl* ctrl);
  116. typedef somTP_info_somDestruct *somTD_info_somDestruct;
  117. typedef void   SOMLINK somTP_info_somDefaultCopyInit(info *somSelf,
  118.         somInitCtrl* ctrl,
  119.         SOMObject* fromObj);
  120. typedef somTP_info_somDefaultCopyInit *somTD_info_somDefaultCopyInit;
  121. typedef info*   SOMLINK somTP_info_somDefaultAssign(info *somSelf,
  122.         somAssignCtrl* ctrl,
  123.         SOMObject* fromObj);
  124. typedef somTP_info_somDefaultAssign *somTD_info_somDefaultAssign;
  125. typedef void   SOMLINK somTP_info_somDefaultConstCopyInit(info *somSelf,
  126.         somInitCtrl* ctrl,
  127.         SOMObject* fromObj);
  128. typedef somTP_info_somDefaultConstCopyInit *somTD_info_somDefaultConstCopyInit;
  129. typedef void   SOMLINK somTP_info_somDefaultVCopyInit(info *somSelf,
  130.         somInitCtrl* ctrl,
  131.         SOMObject* fromObj);
  132. typedef somTP_info_somDefaultVCopyInit *somTD_info_somDefaultVCopyInit;
  133. typedef void   SOMLINK somTP_info_somDefaultConstVCopyInit(info *somSelf,
  134.         somInitCtrl* ctrl,
  135.         SOMObject* fromObj);
  136. typedef somTP_info_somDefaultConstVCopyInit *somTD_info_somDefaultConstVCopyInit;
  137. typedef info*   SOMLINK somTP_info_somDefaultConstAssign(info *somSelf,
  138.         somAssignCtrl* ctrl,
  139.         SOMObject* fromObj);
  140. typedef somTP_info_somDefaultConstAssign *somTD_info_somDefaultConstAssign;
  141. typedef info*   SOMLINK somTP_info_somDefaultVAssign(info *somSelf,
  142.         somAssignCtrl* ctrl,
  143.         SOMObject* fromObj);
  144. typedef somTP_info_somDefaultVAssign *somTD_info_somDefaultVAssign;
  145. typedef info*   SOMLINK somTP_info_somDefaultConstVAssign(info *somSelf,
  146.         somAssignCtrl* ctrl,
  147.         SOMObject* fromObj);
  148. typedef somTP_info_somDefaultConstVAssign *somTD_info_somDefaultConstVAssign;
  149. typedef void   SOMLINK somTP_info_somInit(info *somSelf);
  150. typedef somTP_info_somInit *somTD_info_somInit;
  151. typedef void   SOMLINK somTP_info_somFree(info *somSelf);
  152. typedef somTP_info_somFree *somTD_info_somFree;
  153. typedef void   SOMLINK somTP_info_somUninit(info *somSelf);
  154. typedef somTP_info_somUninit *somTD_info_somUninit;
  155. typedef SOMClass*   SOMLINK somTP_info_somGetClass(info *somSelf);
  156. typedef somTP_info_somGetClass *somTD_info_somGetClass;
  157. typedef string   SOMLINK somTP_info_somGetClassName(info *somSelf);
  158. typedef somTP_info_somGetClassName *somTD_info_somGetClassName;
  159. typedef long   SOMLINK somTP_info_somGetSize(info *somSelf);
  160. typedef somTP_info_somGetSize *somTD_info_somGetSize;
  161. typedef boolean   SOMLINK somTP_info_somIsA(info *somSelf,
  162.         SOMClass* aClassObj);
  163. typedef somTP_info_somIsA *somTD_info_somIsA;
  164. typedef boolean   SOMLINK somTP_info_somIsInstanceOf(info *somSelf,
  165.         SOMClass* aClassObj);
  166. typedef somTP_info_somIsInstanceOf *somTD_info_somIsInstanceOf;
  167. typedef boolean   SOMLINK somTP_info_somRespondsTo(info *somSelf,
  168.         somId mId);
  169. typedef somTP_info_somRespondsTo *somTD_info_somRespondsTo;
  170. typedef boolean   SOMLINK somTP_info_somDispatch(info *somSelf,
  171.         somToken* retValue,
  172.         somId methodId,
  173.         va_list ap);
  174. typedef somTP_info_somDispatch *somTD_info_somDispatch;
  175. typedef boolean   SOMLINK somTP_info_somClassDispatch(info *somSelf,
  176.         SOMClass* clsObj,
  177.         somToken* retValue,
  178.         somId methodId,
  179.         va_list ap);
  180. typedef somTP_info_somClassDispatch *somTD_info_somClassDispatch;
  181. typedef boolean   SOMLINK somTP_info_somCastObj(info *somSelf,
  182.         SOMClass* cls);
  183. typedef somTP_info_somCastObj *somTD_info_somCastObj;
  184. typedef boolean   SOMLINK somTP_info_somResetObj(info *somSelf);
  185. typedef somTP_info_somResetObj *somTD_info_somResetObj;
  186. typedef SOMObject*   SOMLINK somTP_info_somPrintSelf(info *somSelf);
  187. typedef somTP_info_somPrintSelf *somTD_info_somPrintSelf;
  188. typedef void   SOMLINK somTP_info_somDumpSelf(info *somSelf,
  189.         long level);
  190. typedef somTP_info_somDumpSelf *somTD_info_somDumpSelf;
  191. typedef void   SOMLINK somTP_info_somDumpSelfInt(info *somSelf,
  192.         long level);
  193. typedef somTP_info_somDumpSelfInt *somTD_info_somDumpSelfInt;
  194. }
  195.  
  196. #endif /* info_API */
  197.  
  198.  
  199. /*
  200.  * -- This emitter believes that method thunks are unavailable,
  201.  * -- so somResolve will be called.
  202.  */
  203. #undef somresolve_
  204. #define somresolve_(obj,mToken) (somResolve(obj,mToken))
  205.  
  206. /*
  207.  * -- The C++ Wrapper Class for info
  208.  */
  209. class info : public SOMObject
  210. {
  211. public:
  212.  
  213. // info::new creates the class object if necessary, and then uses somNewNoInit
  214. // to allocate memory and create the object. Initialization is in ctors.
  215. void *operator new(size_t)
  216. {
  217.    if (!_info) infoNewClass(info_MajorVersion,info_MinorVersion);
  218.    return (void*)
  219.       SOM_Resolve(_info,SOMClass,somNewNoInit)
  220.          ((SOMClass *)((void*)_info));
  221. }
  222.  
  223. // info::delete uses somDestruct.
  224. void operator delete(void * obj)
  225. {
  226.    if (obj && *(void**)obj) {
  227.       SOM_Resolve(obj,SOMObject,somDestruct)
  228.          ((SOMObject*)obj, 1, 0);
  229.    }
  230. }
  231.  
  232. info()
  233. {
  234.    if (*(void**)this != 
  235.        ((somParentMtabStructPtr)
  236.         (infoCClassData.parentMtab))->mtab)
  237.       return;
  238.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  239. }
  240.  
  241. info(info* fromObj)
  242. {
  243.    if (*(void**)this != 
  244.        ((somParentMtabStructPtr)
  245.         (infoCClassData.parentMtab))->mtab)
  246.       return;
  247.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  248. }
  249.  
  250. info(const info* fromObj)
  251. {
  252.    if (*(void**)this != 
  253.        ((somParentMtabStructPtr)
  254.         (infoCClassData.parentMtab))->mtab)
  255.       return;
  256.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  257. }
  258.  
  259.  
  260. /* method: _get_x */
  261. short   _get_x(Environment *ev)
  262. {
  263.    return SOM_ResolveD(this,info,info,_get_x)
  264.     (this, ev);
  265. }
  266.  
  267.  
  268. /* method: _set_x */
  269. void   _set_x(Environment *ev,
  270.         short x)
  271. {
  272.    SOM_ResolveD(this,info,info,_set_x)
  273.     (this, ev,x);
  274. }
  275.  
  276.  
  277. /* method: _get_y */
  278. char   _get_y(Environment *ev)
  279. {
  280.    return SOM_ResolveD(this,info,info,_get_y)
  281.     (this, ev);
  282. }
  283.  
  284.  
  285. /* method: _set_y */
  286. void   _set_y(Environment *ev,
  287.         char y)
  288. {
  289.    SOM_ResolveD(this,info,info,_set_y)
  290.     (this, ev,y);
  291. }
  292.  
  293.  
  294. /*
  295.  * Reintroduce inherited methods
  296.  */
  297.  
  298. /* initializer method: somDefaultInit */
  299. void   somDefaultInit(somInitCtrl* ctrl)
  300. {
  301.    SOM_ResolveD(this,info,SOMObject,somDefaultInit)
  302.     (this,ctrl);
  303. }
  304.  
  305.  
  306. /* method: somDestruct */
  307. void   somDestruct(octet doFree,
  308.         somDestructCtrl* ctrl)
  309. {
  310.    SOM_ResolveD(this,info,SOMObject,somDestruct)
  311.     (this,doFree,ctrl);
  312. }
  313.  
  314.  
  315. /* initializer method: somDefaultCopyInit */
  316. void   somDefaultCopyInit(somInitCtrl* ctrl,
  317.         SOMObject* fromObj)
  318. {
  319.    SOM_ResolveD(this,info,SOMObject,somDefaultCopyInit)
  320.     (this,ctrl,fromObj);
  321. }
  322.  
  323.  
  324. /* method: somDefaultAssign */
  325. info*  somDefaultAssign(somAssignCtrl* ctrl,
  326.         SOMObject* fromObj)
  327. {
  328.    return SOM_ResolveD(this,info,SOMObject,somDefaultAssign)
  329.     (this,ctrl,fromObj);
  330. }
  331.  
  332.  
  333. /* initializer method: somDefaultConstCopyInit */
  334. void   somDefaultConstCopyInit(somInitCtrl* ctrl,
  335.         SOMObject* fromObj)
  336. {
  337.    SOM_ResolveD(this,info,SOMObject,somDefaultConstCopyInit)
  338.     (this,ctrl,fromObj);
  339. }
  340.  
  341.  
  342. /* initializer method: somDefaultVCopyInit */
  343. void   somDefaultVCopyInit(somInitCtrl* ctrl,
  344.         SOMObject* fromObj)
  345. {
  346.    SOM_ResolveD(this,info,SOMObject,somDefaultVCopyInit)
  347.     (this,ctrl,fromObj);
  348. }
  349.  
  350.  
  351. /* initializer method: somDefaultConstVCopyInit */
  352. void   somDefaultConstVCopyInit(somInitCtrl* ctrl,
  353.         SOMObject* fromObj)
  354. {
  355.    SOM_ResolveD(this,info,SOMObject,somDefaultConstVCopyInit)
  356.     (this,ctrl,fromObj);
  357. }
  358.  
  359.  
  360. /* method: somDefaultConstAssign */
  361. info*  somDefaultConstAssign(somAssignCtrl* ctrl,
  362.         SOMObject* fromObj)
  363. {
  364.    return SOM_ResolveD(this,info,SOMObject,somDefaultConstAssign)
  365.     (this,ctrl,fromObj);
  366. }
  367.  
  368.  
  369. /* method: somDefaultVAssign */
  370. info*  somDefaultVAssign(somAssignCtrl* ctrl,
  371.         SOMObject* fromObj)
  372. {
  373.    return SOM_ResolveD(this,info,SOMObject,somDefaultVAssign)
  374.     (this,ctrl,fromObj);
  375. }
  376.  
  377.  
  378. /* method: somDefaultConstVAssign */
  379. info*  somDefaultConstVAssign(somAssignCtrl* ctrl,
  380.         SOMObject* fromObj)
  381. {
  382.    return SOM_ResolveD(this,info,SOMObject,somDefaultConstVAssign)
  383.     (this,ctrl,fromObj);
  384. }
  385.  
  386.  
  387. /* method: somInit */
  388. void   somInit()
  389. {
  390.    SOM_ResolveD(this,info,SOMObject,somInit)
  391.     (this);
  392. }
  393.  
  394.  
  395. /* method: somFree */
  396. void   somFree()
  397. {
  398.    SOM_ResolveD(this,info,SOMObject,somFree)
  399.     (this);
  400. }
  401.  
  402.  
  403. /* method: somUninit */
  404. void   somUninit()
  405. {
  406.    SOM_ResolveD(this,info,SOMObject,somUninit)
  407.     (this);
  408. }
  409.  
  410.  
  411. /* method: somGetClass */
  412. SOMClass*   somGetClass()
  413. {
  414.    return SOM_ResolveD(this,info,SOMObject,somGetClass)
  415.     (this);
  416. }
  417.  
  418.  
  419. /* method: somGetClassName */
  420. string   somGetClassName()
  421. {
  422.    return SOM_ResolveD(this,info,SOMObject,somGetClassName)
  423.     (this);
  424. }
  425.  
  426.  
  427. /* method: somGetSize */
  428. long   somGetSize()
  429. {
  430.    return SOM_ResolveD(this,info,SOMObject,somGetSize)
  431.     (this);
  432. }
  433.  
  434.  
  435. /* method: somIsA */
  436. boolean   somIsA(SOMClass* aClassObj)
  437. {
  438.    return SOM_ResolveD(this,info,SOMObject,somIsA)
  439.     (this,aClassObj);
  440. }
  441.  
  442.  
  443. /* method: somIsInstanceOf */
  444. boolean   somIsInstanceOf(SOMClass* aClassObj)
  445. {
  446.    return SOM_ResolveD(this,info,SOMObject,somIsInstanceOf)
  447.     (this,aClassObj);
  448. }
  449.  
  450.  
  451. /* method: somRespondsTo */
  452. boolean   somRespondsTo(somId mId)
  453. {
  454.    return SOM_ResolveD(this,info,SOMObject,somRespondsTo)
  455.     (this,mId);
  456. }
  457.  
  458.  
  459. /* va_list method: somDispatch */
  460. /* the va_list invocation form */
  461. boolean   info_somDispatch(somToken* retValue,
  462.         somId methodId,
  463.         va_list ap)
  464. {
  465. return SOM_ResolveD(this,info,SOMObject,somDispatch)
  466.     (this,retValue,methodId,ap);
  467. }
  468.  
  469. /* the varargs invocation form */
  470. boolean   somDispatch(somToken* retValue,
  471.         somId methodId,
  472.         ...)
  473. {
  474.    va_list ap;
  475.    va_start(ap, methodId);
  476.    boolean __somResult = 
  477.       SOM_ResolveD(this,info,SOMObject,somDispatch)
  478.     (this,retValue,methodId,ap);
  479.    va_end(ap);
  480.    return __somResult;
  481. }
  482.  
  483.  
  484. /* va_list method: somClassDispatch */
  485. /* the va_list invocation form */
  486. boolean   info_somClassDispatch(SOMClass* clsObj,
  487.         somToken* retValue,
  488.         somId methodId,
  489.         va_list ap)
  490. {
  491. return SOM_ResolveD(this,info,SOMObject,somClassDispatch)
  492.     (this,clsObj,retValue,methodId,ap);
  493. }
  494.  
  495. /* the varargs invocation form */
  496. boolean   somClassDispatch(SOMClass* clsObj,
  497.         somToken* retValue,
  498.         somId methodId,
  499.         ...)
  500. {
  501.    va_list ap;
  502.    va_start(ap, methodId);
  503.    boolean __somResult = 
  504.       SOM_ResolveD(this,info,SOMObject,somClassDispatch)
  505.     (this,clsObj,retValue,methodId,ap);
  506.    va_end(ap);
  507.    return __somResult;
  508. }
  509.  
  510.  
  511. /* method: somCastObj */
  512. boolean   somCastObj(SOMClass* cls)
  513. {
  514.    return SOM_ResolveD(this,info,SOMObject,somCastObj)
  515.     (this,cls);
  516. }
  517.  
  518.  
  519. /* method: somResetObj */
  520. boolean   somResetObj()
  521. {
  522.    return SOM_ResolveD(this,info,SOMObject,somResetObj)
  523.     (this);
  524. }
  525.  
  526.  
  527. /* method: somPrintSelf */
  528. SOMObject*   somPrintSelf()
  529. {
  530.    return SOM_ResolveD(this,info,SOMObject,somPrintSelf)
  531.     (this);
  532. }
  533.  
  534.  
  535. /* method: somDumpSelf */
  536. void   somDumpSelf(long level)
  537. {
  538.    SOM_ResolveD(this,info,SOMObject,somDumpSelf)
  539.     (this,level);
  540. }
  541.  
  542.  
  543. /* method: somDumpSelfInt */
  544. void   somDumpSelfInt(long level)
  545. {
  546.    SOM_ResolveD(this,info,SOMObject,somDumpSelfInt)
  547.     (this,level);
  548. }
  549.  
  550.  
  551.  
  552. };   /* info */
  553.  
  554.  
  555.  
  556. #endif       /* SOM_info_xh */
  557.