home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / warptlk3.zip / TOOLKIT / SOM / INCLUDE / SNGLICLS.H < prev    next >
C/C++ Source or Header  |  1995-08-24  |  11KB  |  237 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: E:\u\otp\include\snglicls.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.2
  7.  *     SOM Emitter emith: 2.41
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *    COMPONENT_NAME: somu
  13.  * 
  14.  *    ORIGINS: 27
  15.  * 
  16.  * 
  17.  *    10H9767, 10H9769  (C) COPYRIGHT International Business Machines Corp. 1992,1994
  18.  *    All Rights Reserved
  19.  *    Licensed Materials - Property of IBM
  20.  *    US Government Users Restricted Rights - Use, duplication or
  21.  *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  22.  * 
  23.  */
  24.  
  25.  
  26. #ifndef SOM_SOMMSingleInstance_h
  27. #define SOM_SOMMSingleInstance_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 SOMMSingleInstance
  43. #define SOMMSingleInstance SOMObject
  44. #endif
  45. #include <somcls.h>
  46.  
  47. /*
  48.  * Start of user-defined types:
  49.  */
  50. #ifndef SOMClass
  51.     #define SOMClass SOMObject
  52. #endif /* SOMClass */
  53.  
  54. /*
  55.  * End of user-defined types.
  56.  */
  57.  
  58. #define SOMMSingleInstance_MajorVersion 2
  59. #define SOMMSingleInstance_MinorVersion 1
  60.  
  61. /*
  62.  * External name shortening if required
  63.  */
  64. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  65. #define SOMMSingleInstanceNewClass c
  66. #pragma linkage(c, system)
  67. #define SOMMSingleInstanceClassData d
  68. #define SOMMSingleInstanceCClassData x
  69. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  70. /*--------------Migration------------*/
  71. #define SOMMSingleInstance_classObj SOMMSingleInstanceClassData.classObject
  72. #define _SOMMSingleInstance SOMMSingleInstance_classObj
  73.  
  74. /*
  75.  * Declare the class creation procedure
  76.  */
  77. SOMEXTERN SOMClass * SOMLINK SOMMSingleInstanceNewClass(integer4 somtmajorVersion,
  78.         integer4 somtminorVersion);
  79. #pragma linkage(SOMMSingleInstanceNewClass, system)
  80.  
  81. /*
  82.  * Declare the class data structure
  83.  */
  84. SOMEXTERN struct SOMMSingleInstanceClassDataStructure {
  85.     SOMAny *classObject;
  86.     somMToken sommGetSingleInstance;
  87.     somMToken sommFreeSingleInstance;
  88. } SOMDLINK SOMMSingleInstanceClassData;
  89.  
  90. /*
  91.  * Declare the C specific class data structure
  92.  */
  93. SOMEXTERN struct SOMMSingleInstanceCClassDataStructure {
  94.     somMethodTabs parentMtab;
  95.     somDToken instanceDataToken;
  96. } SOMDLINK SOMMSingleInstanceCClassData;
  97.  
  98. /*
  99.  * New and Renew macros for SOMMSingleInstance
  100.  */
  101. #define SOMMSingleInstanceNew() \
  102.    (_somNew(_SOMMSingleInstance ? _SOMMSingleInstance : SOMMSingleInstanceNewClass(SOMMSingleInstance_MajorVersion, SOMMSingleInstance_MinorVersion)))
  103. #define SOMMSingleInstanceRenew(buf) \
  104.    (_somRenew(_SOMMSingleInstance ? _SOMMSingleInstance : SOMMSingleInstanceNewClass(SOMMSingleInstance_MajorVersion, SOMMSingleInstance_MinorVersion), buf))
  105.  
  106. /*
  107.  * New Method: sommGetSingleInstance
  108.  */
  109. typedef SOMObject*   SOMLINK somTP_SOMMSingleInstance_sommGetSingleInstance(SOMMSingleInstance *somSelf, Environment *ev);
  110. #pragma linkage(somTP_SOMMSingleInstance_sommGetSingleInstance, system)
  111. typedef somTP_SOMMSingleInstance_sommGetSingleInstance *somTD_SOMMSingleInstance_sommGetSingleInstance;
  112. #define somMD_SOMMSingleInstance_sommGetSingleInstance "::SOMMSingleInstance::sommGetSingleInstance"
  113. #define SOMMSingleInstance_sommGetSingleInstance(somSelf,ev) \
  114.     (SOM_Resolve(somSelf, SOMMSingleInstance, sommGetSingleInstance) \
  115.     (somSelf,ev))
  116. #ifndef SOMGD_sommGetSingleInstance
  117.     #if (defined(_sommGetSingleInstance) || defined(__sommGetSingleInstance))
  118.         #undef _sommGetSingleInstance
  119.         #undef __sommGetSingleInstance
  120.         #define SOMGD_sommGetSingleInstance 1
  121.     #else
  122.         #define _sommGetSingleInstance SOMMSingleInstance_sommGetSingleInstance
  123.     #endif /* _sommGetSingleInstance */
  124. #endif /* SOMGD_sommGetSingleInstance */
  125.  
  126. /*
  127.  * New Method: sommFreeSingleInstance
  128.  */
  129. typedef void   SOMLINK somTP_SOMMSingleInstance_sommFreeSingleInstance(SOMMSingleInstance *somSelf, Environment *ev);
  130. #pragma linkage(somTP_SOMMSingleInstance_sommFreeSingleInstance, system)
  131. typedef somTP_SOMMSingleInstance_sommFreeSingleInstance *somTD_SOMMSingleInstance_sommFreeSingleInstance;
  132. #define somMD_SOMMSingleInstance_sommFreeSingleInstance "::SOMMSingleInstance::sommFreeSingleInstance"
  133. #define SOMMSingleInstance_sommFreeSingleInstance(somSelf,ev) \
  134.     (SOM_Resolve(somSelf, SOMMSingleInstance, sommFreeSingleInstance) \
  135.     (somSelf,ev))
  136. #ifndef SOMGD_sommFreeSingleInstance
  137.     #if (defined(_sommFreeSingleInstance) || defined(__sommFreeSingleInstance))
  138.         #undef _sommFreeSingleInstance
  139.         #undef __sommFreeSingleInstance
  140.         #define SOMGD_sommFreeSingleInstance 1
  141.     #else
  142.         #define _sommFreeSingleInstance SOMMSingleInstance_sommFreeSingleInstance
  143.     #endif /* _sommFreeSingleInstance */
  144. #endif /* SOMGD_sommFreeSingleInstance */
  145. #ifndef SOM_DONT_USE_INHERITED_MACROS
  146. #define SOMMSingleInstance__get_somDataAlignment SOMClass__get_somDataAlignment
  147. #define SOMMSingleInstance__get_somInstanceDataOffsets SOMClass__get_somInstanceDataOffsets
  148. #define SOMMSingleInstance__get_somDirectInitClasses SOMClass__get_somDirectInitClasses
  149. #define SOMMSingleInstance__set_somDirectInitClasses SOMClass__set_somDirectInitClasses
  150. #define SOMMSingleInstance_somNew SOMClass_somNew
  151. #define SOMMSingleInstance_somNewNoInit SOMClass_somNewNoInit
  152. #define SOMMSingleInstance_somRenew SOMClass_somRenew
  153. #define SOMMSingleInstance_somRenewNoInit SOMClass_somRenewNoInit
  154. #define SOMMSingleInstance_somRenewNoZero SOMClass_somRenewNoZero
  155. #define SOMMSingleInstance_somRenewNoInitNoZero SOMClass_somRenewNoInitNoZero
  156. #define SOMMSingleInstance_somAllocate SOMClass_somAllocate
  157. #define SOMMSingleInstance_somDeallocate SOMClass_somDeallocate
  158. #define SOMMSingleInstance__get_somClassAllocate SOMClass__get_somClassAllocate
  159. #define SOMMSingleInstance__get_somClassDeallocate SOMClass__get_somClassDeallocate
  160. #define SOMMSingleInstance_somGetInstanceInitMask SOMClass_somGetInstanceInitMask
  161. #define SOMMSingleInstance_somGetInstanceDestructionMask SOMClass_somGetInstanceDestructionMask
  162. #define SOMMSingleInstance_somGetInstanceAssignmentMask SOMClass_somGetInstanceAssignmentMask
  163. #define SOMMSingleInstance_somInitClass SOMClass_somInitClass
  164. #define SOMMSingleInstance_somInitMIClass SOMClass_somInitMIClass
  165. #define SOMMSingleInstance_somAddStaticMethod SOMClass_somAddStaticMethod
  166. #define SOMMSingleInstance_somAddDynamicMethod SOMClass_somAddDynamicMethod
  167. #define SOMMSingleInstance_somOverrideSMethod SOMClass_somOverrideSMethod
  168. #define SOMMSingleInstance_somClassReady SOMClass_somClassReady
  169. #define SOMMSingleInstance_somGetApplyStub SOMClass_somGetApplyStub
  170. #define SOMMSingleInstance_somGetClassData SOMClass_somGetClassData
  171. #define SOMMSingleInstance_somSetClassData SOMClass_somSetClassData
  172. #define SOMMSingleInstance_somGetClassMtab SOMClass_somGetClassMtab
  173. #define SOMMSingleInstance_somGetInstanceOffset SOMClass_somGetInstanceOffset
  174. #define SOMMSingleInstance_somGetInstancePartSize SOMClass_somGetInstancePartSize
  175. #define SOMMSingleInstance_somGetInstanceSize SOMClass_somGetInstanceSize
  176. #define SOMMSingleInstance_somGetInstanceToken SOMClass_somGetInstanceToken
  177. #define SOMMSingleInstance_somGetMemberToken SOMClass_somGetMemberToken
  178. #define SOMMSingleInstance_somGetMethodData SOMClass_somGetMethodData
  179. #define SOMMSingleInstance_somGetRdStub SOMClass_somGetRdStub
  180. #define SOMMSingleInstance_somGetMethodDescriptor SOMClass_somGetMethodDescriptor
  181. #define SOMMSingleInstance_somGetMethodIndex SOMClass_somGetMethodIndex
  182. #define SOMMSingleInstance_somGetMethodToken SOMClass_somGetMethodToken
  183. #define SOMMSingleInstance_somGetName SOMClass_somGetName
  184. #define SOMMSingleInstance_somGetNthMethodData SOMClass_somGetNthMethodData
  185. #define SOMMSingleInstance_somGetNthMethodInfo SOMClass_somGetNthMethodInfo
  186. #define SOMMSingleInstance_somGetNumMethods SOMClass_somGetNumMethods
  187. #define SOMMSingleInstance_somGetNumStaticMethods SOMClass_somGetNumStaticMethods
  188. #define SOMMSingleInstance_somGetParent SOMClass_somGetParent
  189. #define SOMMSingleInstance_somGetParents SOMClass_somGetParents
  190. #define SOMMSingleInstance_somGetPClsMtab SOMClass_somGetPClsMtab
  191. #define SOMMSingleInstance_somGetPClsMtabs SOMClass_somGetPClsMtabs
  192. #define SOMMSingleInstance_somGetVersionNumbers SOMClass_somGetVersionNumbers
  193. #define SOMMSingleInstance_somSetMethodDescriptor SOMClass_somSetMethodDescriptor
  194. #define SOMMSingleInstance_somFindMethod SOMClass_somFindMethod
  195. #define SOMMSingleInstance_somFindMethodOk SOMClass_somFindMethodOk
  196. #define SOMMSingleInstance_somFindSMethod SOMClass_somFindSMethod
  197. #define SOMMSingleInstance_somFindSMethodOk SOMClass_somFindSMethodOk
  198. #define SOMMSingleInstance_somLookupMethod SOMClass_somLookupMethod
  199. #define SOMMSingleInstance_somCheckVersion SOMClass_somCheckVersion
  200. #define SOMMSingleInstance_somDescendedFrom SOMClass_somDescendedFrom
  201. #define SOMMSingleInstance_somSupportsMethod SOMClass_somSupportsMethod
  202. #define SOMMSingleInstance_somDefinedMethod SOMClass_somDefinedMethod
  203. #define SOMMSingleInstance_somOverrideMtab SOMClass_somOverrideMtab
  204. #define SOMMSingleInstance_somDefaultInit SOMObject_somDefaultInit
  205. #define SOMMSingleInstance_somDestruct SOMObject_somDestruct
  206. #define SOMMSingleInstance_somDefaultCopyInit SOMObject_somDefaultCopyInit
  207. #define SOMMSingleInstance_somDefaultAssign SOMObject_somDefaultAssign
  208. #define SOMMSingleInstance_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  209. #define SOMMSingleInstance_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
  210. #define SOMMSingleInstance_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
  211. #define SOMMSingleInstance_somDefaultConstAssign SOMObject_somDefaultConstAssign
  212. #define SOMMSingleInstance_somDefaultVAssign SOMObject_somDefaultVAssign
  213. #define SOMMSingleInstance_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
  214. #define SOMMSingleInstance_somInit SOMObject_somInit
  215. #define SOMMSingleInstance_somFree SOMObject_somFree
  216. #define SOMMSingleInstance_somUninit SOMObject_somUninit
  217. #define SOMMSingleInstance_somGetClass SOMObject_somGetClass
  218. #define SOMMSingleInstance_somGetClassName SOMObject_somGetClassName
  219. #define SOMMSingleInstance_somGetSize SOMObject_somGetSize
  220. #define SOMMSingleInstance_somIsA SOMObject_somIsA
  221. #define SOMMSingleInstance_somIsInstanceOf SOMObject_somIsInstanceOf
  222. #define SOMMSingleInstance_somRespondsTo SOMObject_somRespondsTo
  223. #define SOMMSingleInstance_somDispatch SOMObject_somDispatch
  224. #define SOMMSingleInstance_somClassDispatch SOMObject_somClassDispatch
  225. #define SOMMSingleInstance_somCastObj SOMObject_somCastObj
  226. #define SOMMSingleInstance_somResetObj SOMObject_somResetObj
  227. #define SOMMSingleInstance_somDispatchV SOMObject_somDispatchV
  228. #define SOMMSingleInstance_somDispatchL SOMObject_somDispatchL
  229. #define SOMMSingleInstance_somDispatchA SOMObject_somDispatchA
  230. #define SOMMSingleInstance_somDispatchD SOMObject_somDispatchD
  231. #define SOMMSingleInstance_somPrintSelf SOMObject_somPrintSelf
  232. #define SOMMSingleInstance_somDumpSelf SOMObject_somDumpSelf
  233. #define SOMMSingleInstance_somDumpSelfInt SOMObject_somDumpSelfInt
  234. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  235.  
  236. #endif       /* SOM_SOMMSingleInstance_h */
  237.