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

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: attribdf.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: somi
  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.  *   AttributeDef: CORBA Interface for attributed definitions
  24.  *   See CORBA 7.5.5, p.135
  25.  */
  26.  
  27.  
  28. #ifndef SOM_AttributeDef_h
  29. #define SOM_AttributeDef_h
  30.  
  31.  
  32. /*
  33.  * Passthru lines: File: "C.h", "before"
  34.  */
  35.  
  36.     #include <somtcnst.h>
  37.     #include <somir.h>
  38.     #include <containd.h>
  39.  
  40.  
  41. #include <som.h>
  42.  
  43. /*
  44.  * -- This emitter treats Method Tokens as Thunks by default.
  45.  * -- Use the sc modifier "nothunks" to change this default
  46.  */
  47. #undef somresolve_
  48. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  49.  
  50. /*
  51.  * Define the class name as an object type
  52.  */
  53. #ifndef AttributeDef
  54. #define AttributeDef SOMObject
  55. #endif
  56. #include <containd.h>
  57.  
  58. /*
  59.  * Start of user-defined types:
  60.  */
  61. #ifndef SOMClass
  62.     #define SOMClass SOMObject
  63. #endif /* SOMClass */
  64. #ifndef Container
  65.     #define Container SOMObject
  66. #endif /* Container */
  67. typedef unsigned long AttributeDef_AttributeMode;
  68. #define AttributeDef_NORMAL 1UL
  69. #define AttributeDef_READONLY 2UL
  70. typedef
  71. struct AttributeDef_AttributeDescription {
  72. Identifier name;
  73. RepositoryId id;
  74. RepositoryId defined_in;
  75. TypeCode type;
  76. AttributeDef_AttributeMode mode;
  77. } AttributeDef_AttributeDescription;
  78.  
  79. /*
  80.  *  The inherited describe method returns an instance of this
  81.  *  (AttributeDescription) structure in the "value" member of the
  82.  *  Description structure defined in the Contained interface.
  83.  */
  84.  
  85. #ifndef SOM_DONT_USE_SHORT_NAMES
  86. #ifndef SOMTGD_AttributeMode
  87.     #ifdef AttributeMode
  88.         #undef AttributeMode
  89.         #define SOMTGD_AttributeMode 1
  90.     #else
  91.         #define AttributeMode AttributeDef_AttributeMode
  92.     #endif /* AttributeMode */
  93. #endif /* SOMTGD_AttributeMode */
  94. #ifndef SOMTGD_AttributeDescription
  95.     #ifdef AttributeDescription
  96.         #undef AttributeDescription
  97.         #define SOMTGD_AttributeDescription 1
  98.     #else
  99.         #define AttributeDescription AttributeDef_AttributeDescription
  100.     #endif /* AttributeDescription */
  101. #endif /* SOMTGD_AttributeDescription */
  102. #endif /* SOM_DONT_USE_SHORT_NAMES */
  103.  
  104. /*
  105.  * End of user-defined types.
  106.  */
  107.  
  108. #define AttributeDef_MajorVersion 2
  109. #define AttributeDef_MinorVersion 1
  110.  
  111. /*
  112.  * External name shortening if required
  113.  */
  114. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  115. #define AttributeDefNewClass c
  116. #pragma linkage(c, system)
  117. #define AttributeDefClassData d
  118. #define AttributeDefCClassData x
  119. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  120. /*--------------Migration------------*/
  121. #define AttributeDef_classObj AttributeDefClassData.classObject
  122. #define _AttributeDef AttributeDef_classObj
  123.  
  124. /*
  125.  * Declare the class creation procedure
  126.  */
  127. SOMEXTERN SOMClass * SOMLINK AttributeDefNewClass(integer4 somtmajorVersion,
  128.         integer4 somtminorVersion);
  129. #pragma linkage(AttributeDefNewClass, system)
  130.  
  131. /*
  132.  * Declare the class data structure
  133.  */
  134. SOMEXTERN struct AttributeDefClassDataStructure {
  135.     SOMClass *classObject;
  136.     somMToken _get_type;
  137.     somMToken _set_type;
  138.     somMToken _get_mode;
  139.     somMToken _set_mode;
  140. } SOMDLINK AttributeDefClassData;
  141.  
  142. /*
  143.  * Declare the C specific class data structure
  144.  */
  145. SOMEXTERN struct AttributeDefCClassDataStructure {
  146.     somMethodTabs parentMtab;
  147.     somDToken instanceDataToken;
  148. } SOMDLINK AttributeDefCClassData;
  149.  
  150. /*
  151.  * New and Renew macros for AttributeDef
  152.  */
  153. #define AttributeDefNew() \
  154.    (_somNew(_AttributeDef ? _AttributeDef : AttributeDefNewClass(AttributeDef_MajorVersion, AttributeDef_MinorVersion)))
  155. #define AttributeDefRenew(buf) \
  156.    (_somRenew(_AttributeDef ? _AttributeDef : AttributeDefNewClass(AttributeDef_MajorVersion, AttributeDef_MinorVersion), buf))
  157.  
  158. /*
  159.  * Override method: somInit
  160.  */
  161. #define AttributeDef_somInit(somSelf) \
  162.     SOMObject_somInit(somSelf)
  163.  
  164. /*
  165.  * Override method: somUninit
  166.  */
  167. #define AttributeDef_somUninit(somSelf) \
  168.     SOMObject_somUninit(somSelf)
  169.  
  170. /*
  171.  * Override method: somDumpSelf
  172.  */
  173. #define AttributeDef_somDumpSelf(somSelf,level) \
  174.     SOMObject_somDumpSelf(somSelf,level)
  175.  
  176. /*
  177.  * Override method: somDumpSelfInt
  178.  */
  179. #define AttributeDef_somDumpSelfInt(somSelf,level) \
  180.     SOMObject_somDumpSelfInt(somSelf,level)
  181.  
  182. /*
  183.  * Override method: describe
  184.  */
  185. #define AttributeDef_describe(somSelf,ev) \
  186.     Contained_describe(somSelf,ev)
  187.  
  188. /*
  189.  * New Method: _get_type
  190.  */
  191. typedef TypeCode   SOMLINK somTP_AttributeDef__get_type(AttributeDef *somSelf, Environment *ev);
  192. #pragma linkage(somTP_AttributeDef__get_type, system)
  193. typedef somTP_AttributeDef__get_type *somTD_AttributeDef__get_type;
  194. #define somMD_AttributeDef__get_type "::AttributeDef::type"
  195. #define AttributeDef__get_type(somSelf,ev) \
  196.     (SOM_Resolve(somSelf, AttributeDef, _get_type) \
  197.     (somSelf,ev))
  198. #ifndef SOMGD_get_type
  199.     #if (defined(_get_type) || defined(__get_type))
  200.         #undef _get_type
  201.         #undef __get_type
  202.         #define SOMGD_get_type 1
  203.     #else
  204.         #define __get_type AttributeDef__get_type
  205.     #endif /* __get_type */
  206. #endif /* SOMGD_get_type */
  207.  
  208. /*
  209.  * New Method: _set_type
  210.  */
  211. typedef void   SOMLINK somTP_AttributeDef__set_type(AttributeDef *somSelf, Environment *ev,
  212.         TypeCode type);
  213. #pragma linkage(somTP_AttributeDef__set_type, system)
  214. typedef somTP_AttributeDef__set_type *somTD_AttributeDef__set_type;
  215. #define somMD_AttributeDef__set_type "::AttributeDef::type"
  216. #define AttributeDef__set_type(somSelf,ev,type) \
  217.     (SOM_Resolve(somSelf, AttributeDef, _set_type) \
  218.     (somSelf,ev,type))
  219. #ifndef SOMGD_set_type
  220.     #if (defined(_set_type) || defined(__set_type))
  221.         #undef _set_type
  222.         #undef __set_type
  223.         #define SOMGD_set_type 1
  224.     #else
  225.         #define __set_type AttributeDef__set_type
  226.     #endif /* __set_type */
  227. #endif /* SOMGD_set_type */
  228.  
  229. /*
  230.  * New Method: _get_mode
  231.  */
  232. typedef AttributeDef_AttributeMode   SOMLINK somTP_AttributeDef__get_mode(AttributeDef *somSelf, Environment *ev);
  233. #pragma linkage(somTP_AttributeDef__get_mode, system)
  234. typedef somTP_AttributeDef__get_mode *somTD_AttributeDef__get_mode;
  235. #define somMD_AttributeDef__get_mode "::AttributeDef::mode"
  236. #define AttributeDef__get_mode(somSelf,ev) \
  237.     (SOM_Resolve(somSelf, AttributeDef, _get_mode) \
  238.     (somSelf,ev))
  239. #ifndef SOMGD_get_mode
  240.     #if (defined(_get_mode) || defined(__get_mode))
  241.         #undef _get_mode
  242.         #undef __get_mode
  243.         #define SOMGD_get_mode 1
  244.     #else
  245.         #define __get_mode AttributeDef__get_mode
  246.     #endif /* __get_mode */
  247. #endif /* SOMGD_get_mode */
  248.  
  249. /*
  250.  * New Method: _set_mode
  251.  */
  252. typedef void   SOMLINK somTP_AttributeDef__set_mode(AttributeDef *somSelf, Environment *ev,
  253.         AttributeDef_AttributeMode mode);
  254. #pragma linkage(somTP_AttributeDef__set_mode, system)
  255. typedef somTP_AttributeDef__set_mode *somTD_AttributeDef__set_mode;
  256. #define somMD_AttributeDef__set_mode "::AttributeDef::mode"
  257. #define AttributeDef__set_mode(somSelf,ev,mode) \
  258.     (SOM_Resolve(somSelf, AttributeDef, _set_mode) \
  259.     (somSelf,ev,mode))
  260. #ifndef SOMGD_set_mode
  261.     #if (defined(_set_mode) || defined(__set_mode))
  262.         #undef _set_mode
  263.         #undef __set_mode
  264.         #define SOMGD_set_mode 1
  265.     #else
  266.         #define __set_mode AttributeDef__set_mode
  267.     #endif /* __set_mode */
  268. #endif /* SOMGD_set_mode */
  269. #ifndef SOM_DONT_USE_INHERITED_MACROS
  270. #define AttributeDef__get_name Contained__get_name
  271. #define AttributeDef__set_name Contained__set_name
  272. #define AttributeDef__get_id Contained__get_id
  273. #define AttributeDef__set_id Contained__set_id
  274. #define AttributeDef__get_defined_in Contained__get_defined_in
  275. #define AttributeDef__set_defined_in Contained__set_defined_in
  276. #define AttributeDef__get_somModifiers Contained__get_somModifiers
  277. #define AttributeDef__set_somModifiers Contained__set_somModifiers
  278. #define AttributeDef_within Contained_within
  279. #define AttributeDef_somDefaultInit SOMObject_somDefaultInit
  280. #define AttributeDef_somDestruct SOMObject_somDestruct
  281. #define AttributeDef_somDefaultCopyInit SOMObject_somDefaultCopyInit
  282. #define AttributeDef_somDefaultAssign SOMObject_somDefaultAssign
  283. #define AttributeDef_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  284. #define AttributeDef_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
  285. #define AttributeDef_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
  286. #define AttributeDef_somDefaultConstAssign SOMObject_somDefaultConstAssign
  287. #define AttributeDef_somDefaultVAssign SOMObject_somDefaultVAssign
  288. #define AttributeDef_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
  289. #define AttributeDef_somFree SOMObject_somFree
  290. #define AttributeDef_somGetClass SOMObject_somGetClass
  291. #define AttributeDef_somGetClassName SOMObject_somGetClassName
  292. #define AttributeDef_somGetSize SOMObject_somGetSize
  293. #define AttributeDef_somIsA SOMObject_somIsA
  294. #define AttributeDef_somIsInstanceOf SOMObject_somIsInstanceOf
  295. #define AttributeDef_somRespondsTo SOMObject_somRespondsTo
  296. #define AttributeDef_somDispatch SOMObject_somDispatch
  297. #define AttributeDef_somClassDispatch SOMObject_somClassDispatch
  298. #define AttributeDef_somCastObj SOMObject_somCastObj
  299. #define AttributeDef_somResetObj SOMObject_somResetObj
  300. #define AttributeDef_somDispatchV SOMObject_somDispatchV
  301. #define AttributeDef_somDispatchL SOMObject_somDispatchL
  302. #define AttributeDef_somDispatchA SOMObject_somDispatchA
  303. #define AttributeDef_somDispatchD SOMObject_somDispatchD
  304. #define AttributeDef_somPrintSelf SOMObject_somPrintSelf
  305. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  306.  
  307. #endif       /* SOM_AttributeDef_h */
  308.