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

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: scmeta.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emith: 2.47
  8.  */
  9.  
  10. /*
  11.  *   COMPONENT_NAME: some
  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.  *  @(#) somc/sctypes.h 2.7 12/26/95 16:26:17 [7/30/96 14:46:04]
  22.  * 
  23.  */
  24.  
  25.  
  26. #ifndef SOM_SOMTMetaClassEntryC_h
  27. #define SOM_SOMTMetaClassEntryC_h
  28.  
  29.  
  30. #include <som.h>
  31.  
  32. /*
  33.  * -- This emitter treats Method Tokens as Thunks by default.
  34.  * -- Use the sc modifier "nothunks" to change this default
  35.  */
  36. #undef somresolve_
  37. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  38.  
  39. /*
  40.  * Define the class name as an object type
  41.  */
  42. #ifndef SOMTMetaClassEntryC
  43. #define SOMTMetaClassEntryC SOMObject
  44. #endif
  45. #include <scentry.h>
  46.  
  47. /*
  48.  * Start of bindings for IDL types
  49.  */
  50.  
  51. #ifndef SOMClass
  52.     #define SOMClass SOMObject
  53. #endif /* SOMClass */
  54. #ifndef SOMTEntryC
  55.     #define SOMTEntryC SOMObject
  56. #endif /* SOMTEntryC */
  57. #ifndef SOMTEmitC
  58.     #define SOMTEmitC SOMObject
  59. #endif /* SOMTEmitC */
  60. #ifndef SOMTMetaClassEntryC
  61.     #define SOMTMetaClassEntryC SOMObject
  62. #endif /* SOMTMetaClassEntryC */
  63. #ifndef SOMTAttributeEntryC
  64.     #define SOMTAttributeEntryC SOMObject
  65. #endif /* SOMTAttributeEntryC */
  66. #ifndef SOMTTypedefEntryC
  67.     #define SOMTTypedefEntryC SOMObject
  68. #endif /* SOMTTypedefEntryC */
  69. #ifndef SOMTBaseClassEntryC
  70.     #define SOMTBaseClassEntryC SOMObject
  71. #endif /* SOMTBaseClassEntryC */
  72. #ifndef SOMTPassthruEntryC
  73.     #define SOMTPassthruEntryC SOMObject
  74. #endif /* SOMTPassthruEntryC */
  75. #ifndef SOMTDataEntryC
  76.     #define SOMTDataEntryC SOMObject
  77. #endif /* SOMTDataEntryC */
  78. #ifndef SOMTMethodEntryC
  79.     #define SOMTMethodEntryC SOMObject
  80. #endif /* SOMTMethodEntryC */
  81. #ifndef SOMTClassEntryC
  82.     #define SOMTClassEntryC SOMObject
  83. #endif /* SOMTClassEntryC */
  84. #ifndef SOMTModuleEntryC
  85.     #define SOMTModuleEntryC SOMObject
  86. #endif /* SOMTModuleEntryC */
  87. #ifndef SOMTParameterEntryC
  88.     #define SOMTParameterEntryC SOMObject
  89. #endif /* SOMTParameterEntryC */
  90. #ifndef SOMTStructEntryC
  91.     #define SOMTStructEntryC SOMObject
  92. #endif /* SOMTStructEntryC */
  93. #ifndef SOMTUnionEntryC
  94.     #define SOMTUnionEntryC SOMObject
  95. #endif /* SOMTUnionEntryC */
  96. #ifndef SOMTEnumEntryC
  97.     #define SOMTEnumEntryC SOMObject
  98. #endif /* SOMTEnumEntryC */
  99. #ifndef SOMTConstEntryC
  100.     #define SOMTConstEntryC SOMObject
  101. #endif /* SOMTConstEntryC */
  102. #ifndef SOMTSequenceEntryC
  103.     #define SOMTSequenceEntryC SOMObject
  104. #endif /* SOMTSequenceEntryC */
  105. #ifndef SOMTStringEntryC
  106.     #define SOMTStringEntryC SOMObject
  107. #endif /* SOMTStringEntryC */
  108. #ifndef SOMTEnumNameEntryC
  109.     #define SOMTEnumNameEntryC SOMObject
  110. #endif /* SOMTEnumNameEntryC */
  111. #ifndef SOMTCommonEntryC
  112.     #define SOMTCommonEntryC SOMObject
  113. #endif /* SOMTCommonEntryC */
  114. #ifndef SOMTUserDefinedTypeEntryC
  115.     #define SOMTUserDefinedTypeEntryC SOMObject
  116. #endif /* SOMTUserDefinedTypeEntryC */
  117.  
  118. /*
  119.  * End of bindings for IDL types.
  120.  */
  121.  
  122. #define SOMTMetaClassEntryC_MajorVersion 2
  123. #define SOMTMetaClassEntryC_MinorVersion 1
  124.  
  125. /*
  126.  * External name shortening if required
  127.  */
  128. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  129. #define SOMTMetaClassEntryCNewClass c
  130. #pragma linkage(c, system)
  131. #define SOMTMetaClassEntryCClassData d
  132. #define SOMTMetaClassEntryCCClassData x
  133. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  134. /*--------------Migration------------*/
  135. #define SOMTMetaClassEntryC_classObj SOMTMetaClassEntryCClassData.classObject
  136. #define _SOMTMetaClassEntryC SOMTMetaClassEntryC_classObj
  137.  
  138. /*
  139.  * Declare the class creation procedure
  140.  */
  141. SOMEXTERN SOMClass * SOMLINK SOMTMetaClassEntryCNewClass(integer4 somtmajorVersion,
  142.         integer4 somtminorVersion);
  143. #pragma linkage(SOMTMetaClassEntryCNewClass, system)
  144.  
  145. /*
  146.  * Declare the class data structure
  147.  */
  148. SOMEXTERN struct SOMTMetaClassEntryCClassDataStructure {
  149.     SOMClass *classObject;
  150.     somMToken _get_somtMetaFile;
  151.     somMToken _get_somtMetaClassDef;
  152. } SOMDLINK SOMTMetaClassEntryCClassData;
  153.  
  154. /*
  155.  * Declare the C specific class data structure
  156.  */
  157. SOMEXTERN struct SOMTMetaClassEntryCCClassDataStructure {
  158.     somMethodTabs parentMtab;
  159.     somDToken instanceDataToken;
  160. } SOMDLINK SOMTMetaClassEntryCCClassData;
  161.  
  162. /*
  163.  * New and Renew macros for SOMTMetaClassEntryC
  164.  */
  165. #define SOMTMetaClassEntryCNew() \
  166.    ( _SOMTMetaClassEntryC ? \
  167.     _somNew(_SOMTMetaClassEntryC) \
  168.     : ( SOMTMetaClassEntryCNewClass(\
  169.         SOMTMetaClassEntryC_MajorVersion, \
  170.         SOMTMetaClassEntryC_MinorVersion),\
  171.        _somNew(_SOMTMetaClassEntryC)))
  172. #define SOMTMetaClassEntryCRenew(buf) \
  173.    ( _SOMTMetaClassEntryC ? \
  174.     _somRenew(_SOMTMetaClassEntryC, buf) \
  175.     : ( SOMTMetaClassEntryCNewClass(\
  176.         SOMTMetaClassEntryC_MajorVersion, \
  177.         SOMTMetaClassEntryC_MinorVersion),\
  178.        _somRenew(_SOMTMetaClassEntryC, buf)))
  179.  
  180. /*
  181.  * Override method: somtSetSymbolsOnEntry
  182.  */
  183. #define SOMTMetaClassEntryC_somtSetSymbolsOnEntry(somSelf,emitter,prefix) \
  184.     SOMTEntryC_somtSetSymbolsOnEntry(somSelf,emitter,prefix)
  185.  
  186. /*
  187.  * Override method: somDumpSelfInt
  188.  */
  189. #define SOMTMetaClassEntryC_somDumpSelfInt(somSelf,level) \
  190.     SOMObject_somDumpSelfInt(somSelf,level)
  191.  
  192. /*
  193.  * New Method: _get_somtMetaFile
  194.  */
  195. typedef string   SOMLINK somTP_SOMTMetaClassEntryC__get_somtMetaFile(SOMTMetaClassEntryC *somSelf);
  196. #pragma linkage(somTP_SOMTMetaClassEntryC__get_somtMetaFile, system)
  197. typedef somTP_SOMTMetaClassEntryC__get_somtMetaFile *somTD_SOMTMetaClassEntryC__get_somtMetaFile;
  198. /*
  199.  *  Returns the name of the file containing the definition of the
  200.  *  meta class named in this entry.
  201.  */
  202. #define somMD_SOMTMetaClassEntryC__get_somtMetaFile "::SOMTMetaClassEntryC::_get_somtMetaFile"
  203. #define SOMTMetaClassEntryC__get_somtMetaFile(somSelf) \
  204.     (SOM_Resolve(somSelf, SOMTMetaClassEntryC, _get_somtMetaFile) \
  205.     (somSelf))
  206. #ifndef SOMGD_get_somtMetaFile
  207.     #if (defined(_get_somtMetaFile) || defined(__get_somtMetaFile))
  208.         #undef _get_somtMetaFile
  209.         #undef __get_somtMetaFile
  210.         #define SOMGD_get_somtMetaFile 1
  211.     #else
  212.         #define __get_somtMetaFile SOMTMetaClassEntryC__get_somtMetaFile
  213.     #endif /* __get_somtMetaFile */
  214. #endif /* SOMGD_get_somtMetaFile */
  215.  
  216. /*
  217.  * New Method: _get_somtMetaClassDef
  218.  */
  219. typedef SOMTClassEntryC*   SOMLINK somTP_SOMTMetaClassEntryC__get_somtMetaClassDef(SOMTMetaClassEntryC *somSelf);
  220. #pragma linkage(somTP_SOMTMetaClassEntryC__get_somtMetaClassDef, system)
  221. typedef somTP_SOMTMetaClassEntryC__get_somtMetaClassDef *somTD_SOMTMetaClassEntryC__get_somtMetaClassDef;
  222. /*
  223.  *  Returns the class definition entry for the meta class named in
  224.  *  this entry.
  225.  */
  226. #define somMD_SOMTMetaClassEntryC__get_somtMetaClassDef "::SOMTMetaClassEntryC::_get_somtMetaClassDef"
  227. #define SOMTMetaClassEntryC__get_somtMetaClassDef(somSelf) \
  228.     (SOM_Resolve(somSelf, SOMTMetaClassEntryC, _get_somtMetaClassDef) \
  229.     (somSelf))
  230. #ifndef SOMGD_get_somtMetaClassDef
  231.     #if (defined(_get_somtMetaClassDef) || defined(__get_somtMetaClassDef))
  232.         #undef _get_somtMetaClassDef
  233.         #undef __get_somtMetaClassDef
  234.         #define SOMGD_get_somtMetaClassDef 1
  235.     #else
  236.         #define __get_somtMetaClassDef SOMTMetaClassEntryC__get_somtMetaClassDef
  237.     #endif /* __get_somtMetaClassDef */
  238. #endif /* SOMGD_get_somtMetaClassDef */
  239. #ifndef SOM_DONT_USE_INHERITED_MACROS
  240. #define SOMTMetaClassEntryC__get_somtEntryName SOMTEntryC__get_somtEntryName
  241. #define SOMTMetaClassEntryC__set_somtEntryName SOMTEntryC__set_somtEntryName
  242. #define SOMTMetaClassEntryC__get_somtElementType SOMTEntryC__get_somtElementType
  243. #define SOMTMetaClassEntryC__set_somtElementType SOMTEntryC__set_somtElementType
  244. #define SOMTMetaClassEntryC__get_somtElementTypeName SOMTEntryC__get_somtElementTypeName
  245. #define SOMTMetaClassEntryC__get_somtEntryComment SOMTEntryC__get_somtEntryComment
  246. #define SOMTMetaClassEntryC__get_somtSourceLineNumber SOMTEntryC__get_somtSourceLineNumber
  247. #define SOMTMetaClassEntryC__get_somtTypeCode SOMTEntryC__get_somtTypeCode
  248. #define SOMTMetaClassEntryC__get_somtIsReference SOMTEntryC__get_somtIsReference
  249. #define SOMTMetaClassEntryC__get_somtIDLScopedName SOMTEntryC__get_somtIDLScopedName
  250. #define SOMTMetaClassEntryC__get_somtCScopedName SOMTEntryC__get_somtCScopedName
  251. #define SOMTMetaClassEntryC_somtGetModifierValue SOMTEntryC_somtGetModifierValue
  252. #define SOMTMetaClassEntryC_somtGetFirstModifier SOMTEntryC_somtGetFirstModifier
  253. #define SOMTMetaClassEntryC_somtGetNextModifier SOMTEntryC_somtGetNextModifier
  254. #define SOMTMetaClassEntryC_somtFormatModifier SOMTEntryC_somtFormatModifier
  255. #define SOMTMetaClassEntryC_somtGetModifierList SOMTEntryC_somtGetModifierList
  256. #define SOMTMetaClassEntryC_somtSetEntryStruct SOMTEntryC_somtSetEntryStruct
  257. #define SOMTMetaClassEntryC_somInit SOMObject_somInit
  258. #define SOMTMetaClassEntryC_somUninit SOMObject_somUninit
  259. #define SOMTMetaClassEntryC_somPrintSelf SOMObject_somPrintSelf
  260. #define SOMTMetaClassEntryC_somDumpSelf SOMObject_somDumpSelf
  261. #define SOMTMetaClassEntryC_somDefaultInit SOMObject_somDefaultInit
  262. #define SOMTMetaClassEntryC_somDestruct SOMObject_somDestruct
  263. #define SOMTMetaClassEntryC_somDefaultCopyInit SOMObject_somDefaultCopyInit
  264. #define SOMTMetaClassEntryC_somDefaultAssign SOMObject_somDefaultAssign
  265. #define SOMTMetaClassEntryC_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  266. #define SOMTMetaClassEntryC_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
  267. #define SOMTMetaClassEntryC_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
  268. #define SOMTMetaClassEntryC_somDefaultConstAssign SOMObject_somDefaultConstAssign
  269. #define SOMTMetaClassEntryC_somDefaultVAssign SOMObject_somDefaultVAssign
  270. #define SOMTMetaClassEntryC_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
  271. #define SOMTMetaClassEntryC_somFree SOMObject_somFree
  272. #define SOMTMetaClassEntryC_somGetClass SOMObject_somGetClass
  273. #define SOMTMetaClassEntryC_somGetClassName SOMObject_somGetClassName
  274. #define SOMTMetaClassEntryC_somGetSize SOMObject_somGetSize
  275. #define SOMTMetaClassEntryC_somIsA SOMObject_somIsA
  276. #define SOMTMetaClassEntryC_somIsInstanceOf SOMObject_somIsInstanceOf
  277. #define SOMTMetaClassEntryC_somRespondsTo SOMObject_somRespondsTo
  278. #define SOMTMetaClassEntryC_somDispatch SOMObject_somDispatch
  279. #define SOMTMetaClassEntryC_somClassDispatch SOMObject_somClassDispatch
  280. #define SOMTMetaClassEntryC_somCastObj SOMObject_somCastObj
  281. #define SOMTMetaClassEntryC_somResetObj SOMObject_somResetObj
  282. #define SOMTMetaClassEntryC_somDispatchV SOMObject_somDispatchV
  283. #define SOMTMetaClassEntryC_somDispatchL SOMObject_somDispatchL
  284. #define SOMTMetaClassEntryC_somDispatchA SOMObject_somDispatchA
  285. #define SOMTMetaClassEntryC_somDispatchD SOMObject_somDispatchD
  286. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  287.  
  288. #endif       /* SOM_SOMTMetaClassEntryC_h */
  289.