home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / tolkit45.zip / os2tk45 / som / include / poida.h < prev    next >
C/C++ Source or Header  |  1999-02-22  |  7KB  |  186 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: poida.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emith: 2.47
  8.  */
  9.  
  10. /*
  11.  *    COMPONENT_NAME: somp
  12.  * 
  13.  *    ORIGINS: 27
  14.  * 
  15.  * 
  16.  *     25H7912  (C)  COPYRIGHT International Business Machines Corp. 1992,1994,1996
  17.  *    All Rights Reserved
  18.  *    Licensed Materials - Property of IBM
  19.  *    US Government Users Restricted Rights - Use, duplication or
  20.  *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  21.  * 
  22.  */
  23.  
  24.  
  25. #ifndef SOM_SOMPIdAssignerAbstract_h
  26. #define SOM_SOMPIdAssignerAbstract_h
  27.  
  28.  
  29. #include <som.h>
  30.  
  31. /*
  32.  * -- This emitter treats Method Tokens as Thunks by default.
  33.  * -- Use the sc modifier "nothunks" to change this default
  34.  */
  35. #undef somresolve_
  36. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  37.  
  38. /*
  39.  * Define the class name as an object type
  40.  */
  41. #ifndef SOMPIdAssignerAbstract
  42. #define SOMPIdAssignerAbstract SOMObject
  43. #endif
  44. /*
  45.  *  This is the abstract contract for an ID Assigner. The ID in
  46.  *  this case is an ID for a persistent object. An ID Assigner is
  47.  *  used at the time a persistent object is initialized.
  48.  */
  49. #include <somobj.h>
  50.  
  51. /*
  52.  * Start of bindings for IDL types
  53.  */
  54.  
  55. #ifndef SOMClass
  56.     #define SOMClass SOMObject
  57. #endif /* SOMClass */
  58. #ifndef SOMPPersistentId
  59.     #define SOMPPersistentId SOMObject
  60. #endif /* SOMPPersistentId */
  61.  
  62. /*
  63.  * End of bindings for IDL types.
  64.  */
  65.  
  66. #define SOMPIdAssignerAbstract_MajorVersion 2
  67. #define SOMPIdAssignerAbstract_MinorVersion 1
  68.  
  69. /*
  70.  * External name shortening if required
  71.  */
  72. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  73. #define SOMPIdAssignerAbstractNewClass c
  74. #pragma linkage(c, system)
  75. #define SOMPIdAssignerAbstractClassData d
  76. #define SOMPIdAssignerAbstractCClassData x
  77. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  78. /*--------------Migration------------*/
  79. #define SOMPIdAssignerAbstract_classObj SOMPIdAssignerAbstractClassData.classObject
  80. #define _SOMPIdAssignerAbstract SOMPIdAssignerAbstract_classObj
  81.  
  82. /*
  83.  * Declare the class creation procedure
  84.  */
  85. SOMEXTERN SOMClass * SOMLINK SOMPIdAssignerAbstractNewClass(integer4 somtmajorVersion,
  86.         integer4 somtminorVersion);
  87. #pragma linkage(SOMPIdAssignerAbstractNewClass, system)
  88.  
  89. /*
  90.  * Declare the class data structure
  91.  */
  92. SOMEXTERN struct SOMPIdAssignerAbstractClassDataStructure {
  93.     SOMClass *classObject;
  94.     somMToken sompGetSystemAssignedId;
  95. } SOMDLINK SOMPIdAssignerAbstractClassData;
  96.  
  97. /*
  98.  * Declare the C specific class data structure
  99.  */
  100. SOMEXTERN struct SOMPIdAssignerAbstractCClassDataStructure {
  101.     somMethodTabs parentMtab;
  102.     somDToken instanceDataToken;
  103. } SOMDLINK SOMPIdAssignerAbstractCClassData;
  104.  
  105. /*
  106.  * New and Renew macros for SOMPIdAssignerAbstract
  107.  */
  108. #define SOMPIdAssignerAbstractNew() \
  109.    ( _SOMPIdAssignerAbstract ? \
  110.     _somNew(_SOMPIdAssignerAbstract) \
  111.     : ( SOMPIdAssignerAbstractNewClass(\
  112.         SOMPIdAssignerAbstract_MajorVersion, \
  113.         SOMPIdAssignerAbstract_MinorVersion),\
  114.        _somNew(_SOMPIdAssignerAbstract)))
  115. #define SOMPIdAssignerAbstractRenew(buf) \
  116.    ( _SOMPIdAssignerAbstract ? \
  117.     _somRenew(_SOMPIdAssignerAbstract, buf) \
  118.     : ( SOMPIdAssignerAbstractNewClass(\
  119.         SOMPIdAssignerAbstract_MajorVersion, \
  120.         SOMPIdAssignerAbstract_MinorVersion),\
  121.        _somRenew(_SOMPIdAssignerAbstract, buf)))
  122.  
  123. /*
  124.  * New Method: sompGetSystemAssignedId
  125.  */
  126. typedef void   SOMLINK somTP_SOMPIdAssignerAbstract_sompGetSystemAssignedId(SOMPIdAssignerAbstract *somSelf, Environment *ev, 
  127.         SOMPPersistentId** id);
  128. #pragma linkage(somTP_SOMPIdAssignerAbstract_sompGetSystemAssignedId, system)
  129. typedef somTP_SOMPIdAssignerAbstract_sompGetSystemAssignedId *somTD_SOMPIdAssignerAbstract_sompGetSystemAssignedId;
  130. /*
  131.  *  Assign a system ID.
  132.  *  Input: Pointer to persistent ID object
  133.  *  Output: Returns nonzero error if ID could not be assigned,
  134.  *          otherwise, returns 0.
  135.  *          This method allocates the ID object.
  136.  *          Freeing the storage space is the
  137.  *          responsibility of the persistent object (po.c) at uninit.
  138.  */
  139. #define somMD_SOMPIdAssignerAbstract_sompGetSystemAssignedId "::SOMPIdAssignerAbstract::sompGetSystemAssignedId"
  140. #define SOMPIdAssignerAbstract_sompGetSystemAssignedId(somSelf,ev,id) \
  141.     (SOM_Resolve(somSelf, SOMPIdAssignerAbstract, sompGetSystemAssignedId) \
  142.     (somSelf,ev,id))
  143. #ifndef SOMGD_sompGetSystemAssignedId
  144.     #if (defined(_sompGetSystemAssignedId) || defined(__sompGetSystemAssignedId))
  145.         #undef _sompGetSystemAssignedId
  146.         #undef __sompGetSystemAssignedId
  147.         #define SOMGD_sompGetSystemAssignedId 1
  148.     #else
  149.         #define _sompGetSystemAssignedId SOMPIdAssignerAbstract_sompGetSystemAssignedId
  150.     #endif /* _sompGetSystemAssignedId */
  151. #endif /* SOMGD_sompGetSystemAssignedId */
  152. #ifndef SOM_DONT_USE_INHERITED_MACROS
  153. #define SOMPIdAssignerAbstract_somDefaultInit SOMObject_somDefaultInit
  154. #define SOMPIdAssignerAbstract_somDestruct SOMObject_somDestruct
  155. #define SOMPIdAssignerAbstract_somDefaultCopyInit SOMObject_somDefaultCopyInit
  156. #define SOMPIdAssignerAbstract_somDefaultAssign SOMObject_somDefaultAssign
  157. #define SOMPIdAssignerAbstract_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  158. #define SOMPIdAssignerAbstract_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
  159. #define SOMPIdAssignerAbstract_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
  160. #define SOMPIdAssignerAbstract_somDefaultConstAssign SOMObject_somDefaultConstAssign
  161. #define SOMPIdAssignerAbstract_somDefaultVAssign SOMObject_somDefaultVAssign
  162. #define SOMPIdAssignerAbstract_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
  163. #define SOMPIdAssignerAbstract_somInit SOMObject_somInit
  164. #define SOMPIdAssignerAbstract_somFree SOMObject_somFree
  165. #define SOMPIdAssignerAbstract_somUninit SOMObject_somUninit
  166. #define SOMPIdAssignerAbstract_somGetClass SOMObject_somGetClass
  167. #define SOMPIdAssignerAbstract_somGetClassName SOMObject_somGetClassName
  168. #define SOMPIdAssignerAbstract_somGetSize SOMObject_somGetSize
  169. #define SOMPIdAssignerAbstract_somIsA SOMObject_somIsA
  170. #define SOMPIdAssignerAbstract_somIsInstanceOf SOMObject_somIsInstanceOf
  171. #define SOMPIdAssignerAbstract_somRespondsTo SOMObject_somRespondsTo
  172. #define SOMPIdAssignerAbstract_somDispatch SOMObject_somDispatch
  173. #define SOMPIdAssignerAbstract_somClassDispatch SOMObject_somClassDispatch
  174. #define SOMPIdAssignerAbstract_somCastObj SOMObject_somCastObj
  175. #define SOMPIdAssignerAbstract_somResetObj SOMObject_somResetObj
  176. #define SOMPIdAssignerAbstract_somDispatchV SOMObject_somDispatchV
  177. #define SOMPIdAssignerAbstract_somDispatchL SOMObject_somDispatchL
  178. #define SOMPIdAssignerAbstract_somDispatchA SOMObject_somDispatchA
  179. #define SOMPIdAssignerAbstract_somDispatchD SOMObject_somDispatchD
  180. #define SOMPIdAssignerAbstract_somPrintSelf SOMObject_somPrintSelf
  181. #define SOMPIdAssignerAbstract_somDumpSelf SOMObject_somDumpSelf
  182. #define SOMPIdAssignerAbstract_somDumpSelfInt SOMObject_somDumpSelfInt
  183. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  184.  
  185. #endif       /* SOM_SOMPIdAssignerAbstract_h */
  186.