home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / intfacdf.xh < prev    next >
Encoding:
Text File  |  1996-02-22  |  25.4 KB  |  823 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: h:\somnt\include\intfacdf.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: Development
  7.  *     SOM Emitter emitxh.dll: Development
  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.  *   InterfaceDef: CORBA Interface for interface definitions
  24.  *   See CORBA 7.5.4, p.134
  25.  */
  26.  
  27.  
  28. #ifndef SOM_InterfaceDef_xh
  29. #define SOM_InterfaceDef_xh
  30.  
  31. class InterfaceDef;
  32.  
  33. #define InterfaceDef_MajorVersion 2
  34. #define InterfaceDef_MinorVersion 1
  35.  
  36. /*
  37.  * Passthru lines: File: "C.xh", "before"
  38.  */
  39.  
  40.     #include <somtcnst.xh>
  41.     #include <somir.xh>
  42.     #include <operatdf.xh>
  43.     #include <attribdf.xh>
  44.  
  45.  
  46. /* C++ SOM defs */
  47. #include <somcls.xh>
  48. #include <somcm.xh>
  49.  
  50. /* C++ parent defs */
  51. #ifndef SOM_Contained_xh
  52. #include <containd.xh>
  53. #endif
  54. #ifndef SOM_Container_xh
  55. #include <containr.xh>
  56. #endif
  57.  
  58. #ifndef InterfaceDef_API
  59. #define InterfaceDef_API
  60. /*
  61.  * -- The Class API
  62.  */
  63.  
  64. /*
  65.  * Start of user-defined types:
  66.  */
  67. class SOMClass;
  68. class SOMObject;
  69. class Container;
  70. struct OperationDef_OperationDescription;
  71. #ifndef _IDL_SEQUENCE_OperationDef_OperationDescription_defined
  72. #define _IDL_SEQUENCE_OperationDef_OperationDescription_defined
  73. typedef struct {
  74.     unsigned long _maximum;
  75.     unsigned long _length;
  76.     struct OperationDef_OperationDescription *_buffer;
  77. } _IDL_SEQUENCE_OperationDef_OperationDescription;
  78. #endif /* _IDL_SEQUENCE_OperationDef_OperationDescription_defined */ 
  79. struct AttributeDef_AttributeDescription;
  80. #ifndef _IDL_SEQUENCE_AttributeDef_AttributeDescription_defined
  81. #define _IDL_SEQUENCE_AttributeDef_AttributeDescription_defined
  82. typedef struct {
  83.     unsigned long _maximum;
  84.     unsigned long _length;
  85.     struct AttributeDef_AttributeDescription *_buffer;
  86. } _IDL_SEQUENCE_AttributeDef_AttributeDescription;
  87. #endif /* _IDL_SEQUENCE_AttributeDef_AttributeDescription_defined */ 
  88. typedef
  89. struct InterfaceDef_FullInterfaceDescription {
  90. Identifier name;
  91. RepositoryId id;
  92. RepositoryId defined_in;
  93. _IDL_SEQUENCE_OperationDef_OperationDescription operation;
  94. _IDL_SEQUENCE_AttributeDef_AttributeDescription attributes;
  95. } InterfaceDef_FullInterfaceDescription;
  96. typedef
  97. struct InterfaceDef_InterfaceDescription {
  98. Identifier name;
  99. RepositoryId id;
  100. RepositoryId defined_in;
  101. } InterfaceDef_InterfaceDescription;
  102.  
  103. /*
  104.  *  The inherited describe method returns an instance of this
  105.  *  (InterfaceDescription) structure in the "value" member of the
  106.  *  Description structure defined in the Contained interface.
  107.  *  The inherited describe_contents method in the Container
  108.  *  interface returns a sequence of these Description structures
  109.  *  each carrying a reference to an InterfaceDescription structure
  110.  *  in its "value" member.
  111.  */
  112.  
  113. #ifndef SOM_DONT_USE_SHORT_NAMES
  114. #ifndef SOMTGD__IDL_SEQUENCE_OperationDescription
  115.     #ifdef _IDL_SEQUENCE_OperationDescription
  116.         #undef _IDL_SEQUENCE_OperationDescription
  117.         #define SOMTGD__IDL_SEQUENCE_OperationDescription 1
  118.     #else
  119.         #define _IDL_SEQUENCE_OperationDescription _IDL_SEQUENCE_OperationDef_OperationDescription
  120.     #endif /* _IDL_SEQUENCE_OperationDescription */
  121. #endif /* SOMTGD__IDL_SEQUENCE_OperationDescription */
  122. #ifndef SOMTGD__IDL_SEQUENCE_AttributeDescription
  123.     #ifdef _IDL_SEQUENCE_AttributeDescription
  124.         #undef _IDL_SEQUENCE_AttributeDescription
  125.         #define SOMTGD__IDL_SEQUENCE_AttributeDescription 1
  126.     #else
  127.         #define _IDL_SEQUENCE_AttributeDescription _IDL_SEQUENCE_AttributeDef_AttributeDescription
  128.     #endif /* _IDL_SEQUENCE_AttributeDescription */
  129. #endif /* SOMTGD__IDL_SEQUENCE_AttributeDescription */
  130. #ifndef SOMTGD_FullInterfaceDescription
  131.     #ifdef FullInterfaceDescription
  132.         #undef FullInterfaceDescription
  133.         #define SOMTGD_FullInterfaceDescription 1
  134.     #else
  135.         #define FullInterfaceDescription InterfaceDef_FullInterfaceDescription
  136.     #endif /* FullInterfaceDescription */
  137. #endif /* SOMTGD_FullInterfaceDescription */
  138. #ifndef SOMTGD_InterfaceDescription
  139.     #ifdef InterfaceDescription
  140.         #undef InterfaceDescription
  141.         #define SOMTGD_InterfaceDescription 1
  142.     #else
  143.         #define InterfaceDescription InterfaceDef_InterfaceDescription
  144.     #endif /* InterfaceDescription */
  145. #endif /* SOMTGD_InterfaceDescription */
  146. #endif /* SOM_DONT_USE_SHORT_NAMES */
  147.  
  148. /*
  149.  * End of user-defined types.
  150.  */
  151.  
  152. /* A procedure to create the InterfaceDef Class */
  153. SOMEXTERN
  154. #if (defined(SOM_Module_intfacdf_Source) || defined(InterfaceDef_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_InterfaceDef))
  155. WIN32_DLLEXPORT
  156. #else
  157. WIN32_DLLIMPORT
  158. #endif
  159. SOMClass * SOMLINK InterfaceDefNewClass(
  160.         integer4,
  161.         integer4 );
  162.  
  163. /* The API to the InterfaceDef class object, and the methods it introduces. */
  164. SOMEXTERN struct InterfaceDefClassDataStructure {
  165.     SOMClass *classObject;
  166.     somMToken describe_interface;
  167.     somMToken _get_base_interfaces;
  168.     somMToken _set_base_interfaces;
  169.     somMToken _get_instanceData;
  170.     somMToken _set_instanceData;
  171. }
  172. #if !(defined(SOM_Module_intfacdf_Source) || defined(InterfaceDef_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_InterfaceDef))
  173. WIN32_DLLIMPORT
  174. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  175. WIN32_DLLEXPORT
  176. #endif
  177. SOMDLINK InterfaceDefClassData;
  178. #define _InterfaceDef InterfaceDefClassData.classObject
  179.  
  180. /* The API to parentMtabs for InterfaceDef, and the instance data it introduces. */
  181. SOMEXTERN struct InterfaceDefCClassDataStructure {
  182.     somMethodTabs parentMtab;
  183.     somDToken              instanceDataToken;
  184. }
  185. #if !(defined(SOM_Module_intfacdf_Source) || defined(InterfaceDef_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_InterfaceDef))
  186. WIN32_DLLIMPORT
  187. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  188. WIN32_DLLEXPORT
  189. #endif
  190. SOMDLINK InterfaceDefCClassData;
  191.  
  192. /*
  193.  * -- Typedefs for InterfaceDef Method Procedures
  194.  */
  195. extern "C" {
  196. typedef _IDL_SEQUENCE_string   SOMLINK somTP_InterfaceDef__get_base_interfaces(InterfaceDef *somSelf, Environment *ev);
  197. typedef somTP_InterfaceDef__get_base_interfaces *somTD_InterfaceDef__get_base_interfaces;
  198. typedef void   SOMLINK somTP_InterfaceDef__set_base_interfaces(InterfaceDef *somSelf, Environment *ev,
  199.         _IDL_SEQUENCE_string* base_interfaces);
  200. typedef somTP_InterfaceDef__set_base_interfaces *somTD_InterfaceDef__set_base_interfaces;
  201. typedef InterfaceDef_FullInterfaceDescription   SOMLINK somTP_InterfaceDef_describe_interface(InterfaceDef *somSelf, Environment *ev);
  202. typedef somTP_InterfaceDef_describe_interface *somTD_InterfaceDef_describe_interface;
  203. typedef TypeCode   SOMLINK somTP_InterfaceDef__get_instanceData(InterfaceDef *somSelf, Environment *ev);
  204. typedef somTP_InterfaceDef__get_instanceData *somTD_InterfaceDef__get_instanceData;
  205. typedef void   SOMLINK somTP_InterfaceDef__set_instanceData(InterfaceDef *somSelf, Environment *ev,
  206.         TypeCode instanceData);
  207. typedef somTP_InterfaceDef__set_instanceData *somTD_InterfaceDef__set_instanceData;
  208.  
  209. /*
  210.  * -- Typedefs for Reintroduced Wrapper Methods
  211.  */
  212. typedef Identifier   SOMLINK somTP_InterfaceDef__get_name(InterfaceDef *somSelf, Environment *ev);
  213. typedef somTP_InterfaceDef__get_name *somTD_InterfaceDef__get_name;
  214. typedef void   SOMLINK somTP_InterfaceDef__set_name(InterfaceDef *somSelf, Environment *ev,
  215.         Identifier name);
  216. typedef somTP_InterfaceDef__set_name *somTD_InterfaceDef__set_name;
  217. typedef RepositoryId   SOMLINK somTP_InterfaceDef__get_id(InterfaceDef *somSelf, Environment *ev);
  218. typedef somTP_InterfaceDef__get_id *somTD_InterfaceDef__get_id;
  219. typedef void   SOMLINK somTP_InterfaceDef__set_id(InterfaceDef *somSelf, Environment *ev,
  220.         RepositoryId id);
  221. typedef somTP_InterfaceDef__set_id *somTD_InterfaceDef__set_id;
  222. typedef RepositoryId   SOMLINK somTP_InterfaceDef__get_defined_in(InterfaceDef *somSelf, Environment *ev);
  223. typedef somTP_InterfaceDef__get_defined_in *somTD_InterfaceDef__get_defined_in;
  224. typedef void   SOMLINK somTP_InterfaceDef__set_defined_in(InterfaceDef *somSelf, Environment *ev,
  225.         RepositoryId defined_in);
  226. typedef somTP_InterfaceDef__set_defined_in *somTD_InterfaceDef__set_defined_in;
  227. typedef _IDL_SEQUENCE_somModifier   SOMLINK somTP_InterfaceDef__get_somModifiers(InterfaceDef *somSelf, Environment *ev);
  228. typedef somTP_InterfaceDef__get_somModifiers *somTD_InterfaceDef__get_somModifiers;
  229. typedef void   SOMLINK somTP_InterfaceDef__set_somModifiers(InterfaceDef *somSelf, Environment *ev,
  230.         _IDL_SEQUENCE_somModifier* somModifiers);
  231. typedef somTP_InterfaceDef__set_somModifiers *somTD_InterfaceDef__set_somModifiers;
  232. typedef _IDL_SEQUENCE_Container   SOMLINK somTP_InterfaceDef_within(InterfaceDef *somSelf, Environment *ev);
  233. typedef somTP_InterfaceDef_within *somTD_InterfaceDef_within;
  234. typedef Contained_Description   SOMLINK somTP_InterfaceDef_describe(InterfaceDef *somSelf, Environment *ev);
  235. typedef somTP_InterfaceDef_describe *somTD_InterfaceDef_describe;
  236. typedef void   SOMLINK somTP_InterfaceDef_somFree(InterfaceDef *somSelf);
  237. typedef somTP_InterfaceDef_somFree *somTD_InterfaceDef_somFree;
  238. typedef void   SOMLINK somTP_InterfaceDef_somInit(InterfaceDef *somSelf);
  239. typedef somTP_InterfaceDef_somInit *somTD_InterfaceDef_somInit;
  240. typedef void   SOMLINK somTP_InterfaceDef_somUninit(InterfaceDef *somSelf);
  241. typedef somTP_InterfaceDef_somUninit *somTD_InterfaceDef_somUninit;
  242. typedef void   SOMLINK somTP_InterfaceDef_somDumpSelf(InterfaceDef *somSelf,
  243.         long level);
  244. typedef somTP_InterfaceDef_somDumpSelf *somTD_InterfaceDef_somDumpSelf;
  245. typedef void   SOMLINK somTP_InterfaceDef_somDumpSelfInt(InterfaceDef *somSelf,
  246.         long level);
  247. typedef somTP_InterfaceDef_somDumpSelfInt *somTD_InterfaceDef_somDumpSelfInt;
  248. typedef void   SOMLINK somTP_InterfaceDef_somDefaultInit(InterfaceDef *somSelf,
  249.         somInitCtrl* ctrl);
  250. typedef somTP_InterfaceDef_somDefaultInit *somTD_InterfaceDef_somDefaultInit;
  251. typedef void   SOMLINK somTP_InterfaceDef_somDestruct(InterfaceDef *somSelf,
  252.         octet doFree,
  253.         somDestructCtrl* ctrl);
  254. typedef somTP_InterfaceDef_somDestruct *somTD_InterfaceDef_somDestruct;
  255. typedef void   SOMLINK somTP_InterfaceDef_somDefaultCopyInit(InterfaceDef *somSelf,
  256.         somInitCtrl* ctrl,
  257.         SOMObject* fromObj);
  258. typedef somTP_InterfaceDef_somDefaultCopyInit *somTD_InterfaceDef_somDefaultCopyInit;
  259. typedef InterfaceDef*   SOMLINK somTP_InterfaceDef_somDefaultAssign(InterfaceDef *somSelf,
  260.         somAssignCtrl* ctrl,
  261.         SOMObject* fromObj);
  262. typedef somTP_InterfaceDef_somDefaultAssign *somTD_InterfaceDef_somDefaultAssign;
  263. typedef void   SOMLINK somTP_InterfaceDef_somDefaultConstCopyInit(InterfaceDef *somSelf,
  264.         somInitCtrl* ctrl,
  265.         SOMObject* fromObj);
  266. typedef somTP_InterfaceDef_somDefaultConstCopyInit *somTD_InterfaceDef_somDefaultConstCopyInit;
  267. typedef void   SOMLINK somTP_InterfaceDef_somDefaultVCopyInit(InterfaceDef *somSelf,
  268.         somInitCtrl* ctrl,
  269.         SOMObject* fromObj);
  270. typedef somTP_InterfaceDef_somDefaultVCopyInit *somTD_InterfaceDef_somDefaultVCopyInit;
  271. typedef void   SOMLINK somTP_InterfaceDef_somDefaultConstVCopyInit(InterfaceDef *somSelf,
  272.         somInitCtrl* ctrl,
  273.         SOMObject* fromObj);
  274. typedef somTP_InterfaceDef_somDefaultConstVCopyInit *somTD_InterfaceDef_somDefaultConstVCopyInit;
  275. typedef InterfaceDef*   SOMLINK somTP_InterfaceDef_somDefaultConstAssign(InterfaceDef *somSelf,
  276.         somAssignCtrl* ctrl,
  277.         SOMObject* fromObj);
  278. typedef somTP_InterfaceDef_somDefaultConstAssign *somTD_InterfaceDef_somDefaultConstAssign;
  279. typedef InterfaceDef*   SOMLINK somTP_InterfaceDef_somDefaultVAssign(InterfaceDef *somSelf,
  280.         somAssignCtrl* ctrl,
  281.         SOMObject* fromObj);
  282. typedef somTP_InterfaceDef_somDefaultVAssign *somTD_InterfaceDef_somDefaultVAssign;
  283. typedef InterfaceDef*   SOMLINK somTP_InterfaceDef_somDefaultConstVAssign(InterfaceDef *somSelf,
  284.         somAssignCtrl* ctrl,
  285.         SOMObject* fromObj);
  286. typedef somTP_InterfaceDef_somDefaultConstVAssign *somTD_InterfaceDef_somDefaultConstVAssign;
  287. typedef SOMClass*   SOMLINK somTP_InterfaceDef_somGetClass(InterfaceDef *somSelf);
  288. typedef somTP_InterfaceDef_somGetClass *somTD_InterfaceDef_somGetClass;
  289. typedef string   SOMLINK somTP_InterfaceDef_somGetClassName(InterfaceDef *somSelf);
  290. typedef somTP_InterfaceDef_somGetClassName *somTD_InterfaceDef_somGetClassName;
  291. typedef long   SOMLINK somTP_InterfaceDef_somGetSize(InterfaceDef *somSelf);
  292. typedef somTP_InterfaceDef_somGetSize *somTD_InterfaceDef_somGetSize;
  293. typedef boolean   SOMLINK somTP_InterfaceDef_somIsA(InterfaceDef *somSelf,
  294.         SOMClass* aClassObj);
  295. typedef somTP_InterfaceDef_somIsA *somTD_InterfaceDef_somIsA;
  296. typedef boolean   SOMLINK somTP_InterfaceDef_somIsInstanceOf(InterfaceDef *somSelf,
  297.         SOMClass* aClassObj);
  298. typedef somTP_InterfaceDef_somIsInstanceOf *somTD_InterfaceDef_somIsInstanceOf;
  299. typedef boolean   SOMLINK somTP_InterfaceDef_somRespondsTo(InterfaceDef *somSelf,
  300.         somId mId);
  301. typedef somTP_InterfaceDef_somRespondsTo *somTD_InterfaceDef_somRespondsTo;
  302. typedef boolean   SOMLINK somTP_InterfaceDef_somDispatch(InterfaceDef *somSelf,
  303.         somToken* retValue,
  304.         somId methodId,
  305.         va_list ap);
  306. typedef somTP_InterfaceDef_somDispatch *somTD_InterfaceDef_somDispatch;
  307. typedef boolean   SOMLINK somTP_InterfaceDef_somClassDispatch(InterfaceDef *somSelf,
  308.         SOMClass* clsObj,
  309.         somToken* retValue,
  310.         somId methodId,
  311.         va_list ap);
  312. typedef somTP_InterfaceDef_somClassDispatch *somTD_InterfaceDef_somClassDispatch;
  313. typedef boolean   SOMLINK somTP_InterfaceDef_somCastObj(InterfaceDef *somSelf,
  314.         SOMClass* cls);
  315. typedef somTP_InterfaceDef_somCastObj *somTD_InterfaceDef_somCastObj;
  316. typedef boolean   SOMLINK somTP_InterfaceDef_somResetObj(InterfaceDef *somSelf);
  317. typedef somTP_InterfaceDef_somResetObj *somTD_InterfaceDef_somResetObj;
  318. typedef SOMObject*   SOMLINK somTP_InterfaceDef_somPrintSelf(InterfaceDef *somSelf);
  319. typedef somTP_InterfaceDef_somPrintSelf *somTD_InterfaceDef_somPrintSelf;
  320. typedef _IDL_SEQUENCE_Contained   SOMLINK somTP_InterfaceDef_contents(InterfaceDef *somSelf, Environment *ev,
  321.         Container_InterfaceName limit_type,
  322.         boolean exclude_inherited);
  323. typedef somTP_InterfaceDef_contents *somTD_InterfaceDef_contents;
  324. typedef _IDL_SEQUENCE_Contained   SOMLINK somTP_InterfaceDef_lookup_name(InterfaceDef *somSelf, Environment *ev,
  325.         Identifier search_name,
  326.         long levels_to_search,
  327.         Container_InterfaceName limit_type,
  328.         boolean exclude_inherited);
  329. typedef somTP_InterfaceDef_lookup_name *somTD_InterfaceDef_lookup_name;
  330. typedef _IDL_SEQUENCE_Container_ContainerDescription   SOMLINK somTP_InterfaceDef_describe_contents(InterfaceDef *somSelf, Environment *ev,
  331.         Container_InterfaceName limit_type,
  332.         boolean exclude_inherited,
  333.         long max_returned_objs);
  334. typedef somTP_InterfaceDef_describe_contents *somTD_InterfaceDef_describe_contents;
  335. }
  336.  
  337. #endif /* InterfaceDef_API */
  338.  
  339.  
  340. /*
  341.  * -- This emitter believes that method thunks are unavailable,
  342.  * -- so somResolve will be called.
  343.  */
  344. #undef somresolve_
  345. #define somresolve_(obj,mToken) (somResolve(obj,mToken))
  346.  
  347. /*
  348.  * -- The C++ Wrapper Class for InterfaceDef
  349.  */
  350. class InterfaceDef : public Contained, public Container
  351. {
  352. public:
  353.  
  354. // InterfaceDef::new creates the class object if necessary, and then uses somNewNoInit
  355. // to allocate memory and create the object. Initialization is in ctors.
  356. void *operator new(size_t)
  357. {
  358.    if (!_InterfaceDef) InterfaceDefNewClass(InterfaceDef_MajorVersion,InterfaceDef_MinorVersion);
  359.    return (void*)
  360.       SOM_Resolve(_InterfaceDef,SOMClass,somNewNoInit)
  361.          ((SOMClass *)((void*)_InterfaceDef));
  362. }
  363.  
  364. // InterfaceDef::delete uses somDestruct.
  365. void operator delete(void * obj)
  366. {
  367.    if (obj && *(void**)obj) {
  368.       SOM_Resolve(obj,SOMObject,somDestruct)
  369.          ((SOMObject*)obj, 1, 0);
  370.    }
  371. }
  372.  
  373. InterfaceDef()
  374. {
  375.    if (*(void**)this != 
  376.        ((somParentMtabStructPtr)
  377.         (InterfaceDefCClassData.parentMtab))->mtab)
  378.       return;
  379.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  380. }
  381.  
  382. InterfaceDef(InterfaceDef* fromObj)
  383. {
  384.    if (*(void**)this != 
  385.        ((somParentMtabStructPtr)
  386.         (InterfaceDefCClassData.parentMtab))->mtab)
  387.       return;
  388.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  389. }
  390.  
  391. InterfaceDef(const InterfaceDef* fromObj)
  392. {
  393.    if (*(void**)this != 
  394.        ((somParentMtabStructPtr)
  395.         (InterfaceDefCClassData.parentMtab))->mtab)
  396.       return;
  397.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  398. }
  399.  
  400.  
  401. /* method: _get_base_interfaces */
  402. _IDL_SEQUENCE_string   _get_base_interfaces(Environment *ev)
  403. {
  404.    return SOM_ResolveD(this,InterfaceDef,InterfaceDef,_get_base_interfaces)
  405.     (this, ev);
  406. }
  407.  
  408.  
  409. /* method: _set_base_interfaces */
  410. void   _set_base_interfaces(Environment *ev,
  411.         _IDL_SEQUENCE_string* base_interfaces)
  412. {
  413.    SOM_ResolveD(this,InterfaceDef,InterfaceDef,_set_base_interfaces)
  414.     (this, ev,base_interfaces);
  415. }
  416.  
  417.  
  418. /* method: describe_interface */
  419. InterfaceDef_FullInterfaceDescription   describe_interface(Environment *ev)
  420. {
  421.    return SOM_ResolveD(this,InterfaceDef,InterfaceDef,describe_interface)
  422.     (this, ev);
  423. }
  424.  
  425.  
  426. /* method: _get_instanceData */
  427. TypeCode   _get_instanceData(Environment *ev)
  428. {
  429.    return SOM_ResolveD(this,InterfaceDef,InterfaceDef,_get_instanceData)
  430.     (this, ev);
  431. }
  432.  
  433.  
  434. /* method: _set_instanceData */
  435. void   _set_instanceData(Environment *ev,
  436.         TypeCode instanceData)
  437. {
  438.    SOM_ResolveD(this,InterfaceDef,InterfaceDef,_set_instanceData)
  439.     (this, ev,instanceData);
  440. }
  441.  
  442.  
  443. /*
  444.  * Reintroduce inherited methods
  445.  */
  446.  
  447. /* method: _get_name */
  448. Identifier   _get_name(Environment *ev)
  449. {
  450.    return SOM_ResolveD(this,InterfaceDef,Contained,_get_name)
  451.     (this, ev);
  452. }
  453.  
  454.  
  455. /* method: _set_name */
  456. void   _set_name(Environment *ev,
  457.         Identifier name)
  458. {
  459.    SOM_ResolveD(this,InterfaceDef,Contained,_set_name)
  460.     (this, ev,name);
  461. }
  462.  
  463.  
  464. /* method: _get_id */
  465. RepositoryId   _get_id(Environment *ev)
  466. {
  467.    return SOM_ResolveD(this,InterfaceDef,Contained,_get_id)
  468.     (this, ev);
  469. }
  470.  
  471.  
  472. /* method: _set_id */
  473. void   _set_id(Environment *ev,
  474.         RepositoryId id)
  475. {
  476.    SOM_ResolveD(this,InterfaceDef,Contained,_set_id)
  477.     (this, ev,id);
  478. }
  479.  
  480.  
  481. /* method: _get_defined_in */
  482. RepositoryId   _get_defined_in(Environment *ev)
  483. {
  484.    return SOM_ResolveD(this,InterfaceDef,Contained,_get_defined_in)
  485.     (this, ev);
  486. }
  487.  
  488.  
  489. /* method: _set_defined_in */
  490. void   _set_defined_in(Environment *ev,
  491.         RepositoryId defined_in)
  492. {
  493.    SOM_ResolveD(this,InterfaceDef,Contained,_set_defined_in)
  494.     (this, ev,defined_in);
  495. }
  496.  
  497.  
  498. /* method: _get_somModifiers */
  499. _IDL_SEQUENCE_somModifier   _get_somModifiers(Environment *ev)
  500. {
  501.    return SOM_ResolveD(this,InterfaceDef,Contained,_get_somModifiers)
  502.     (this, ev);
  503. }
  504.  
  505.  
  506. /* method: _set_somModifiers */
  507. void   _set_somModifiers(Environment *ev,
  508.         _IDL_SEQUENCE_somModifier* somModifiers)
  509. {
  510.    SOM_ResolveD(this,InterfaceDef,Contained,_set_somModifiers)
  511.     (this, ev,somModifiers);
  512. }
  513.  
  514.  
  515. /* method: within */
  516. _IDL_SEQUENCE_Container   within(Environment *ev)
  517. {
  518.    return SOM_ResolveD(this,InterfaceDef,Contained,within)
  519.     (this, ev);
  520. }
  521.  
  522.  
  523. /* method: describe */
  524. Contained_Description   describe(Environment *ev)
  525. {
  526.    return SOM_ResolveD(this,InterfaceDef,Contained,describe)
  527.     (this, ev);
  528. }
  529.  
  530.  
  531. /* method: somFree */
  532. void   somFree()
  533. {
  534.    SOM_ResolveD(this,InterfaceDef,SOMObject,somFree)
  535.     (this);
  536. }
  537.  
  538.  
  539. /* method: somInit */
  540. void   somInit()
  541. {
  542.    SOM_ResolveD(this,InterfaceDef,SOMObject,somInit)
  543.     (this);
  544. }
  545.  
  546.  
  547. /* method: somUninit */
  548. void   somUninit()
  549. {
  550.    SOM_ResolveD(this,InterfaceDef,SOMObject,somUninit)
  551.     (this);
  552. }
  553.  
  554.  
  555. /* method: somDumpSelf */
  556. void   somDumpSelf(long level)
  557. {
  558.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDumpSelf)
  559.     (this,level);
  560. }
  561.  
  562.  
  563. /* method: somDumpSelfInt */
  564. void   somDumpSelfInt(long level)
  565. {
  566.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDumpSelfInt)
  567.     (this,level);
  568. }
  569.  
  570.  
  571. /* initializer method: somDefaultInit */
  572. void   somDefaultInit(somInitCtrl* ctrl)
  573. {
  574.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultInit)
  575.     (this,ctrl);
  576. }
  577.  
  578.  
  579. /* method: somDestruct */
  580. void   somDestruct(octet doFree,
  581.         somDestructCtrl* ctrl)
  582. {
  583.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDestruct)
  584.     (this,doFree,ctrl);
  585. }
  586.  
  587.  
  588. /* initializer method: somDefaultCopyInit */
  589. void   somDefaultCopyInit(somInitCtrl* ctrl,
  590.         SOMObject* fromObj)
  591. {
  592.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultCopyInit)
  593.     (this,ctrl,fromObj);
  594. }
  595.  
  596.  
  597. /* method: somDefaultAssign */
  598. InterfaceDef*  somDefaultAssign(somAssignCtrl* ctrl,
  599.         SOMObject* fromObj)
  600. {
  601.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultAssign)
  602.     (this,ctrl,fromObj);
  603. }
  604.  
  605.  
  606. /* initializer method: somDefaultConstCopyInit */
  607. void   somDefaultConstCopyInit(somInitCtrl* ctrl,
  608.         SOMObject* fromObj)
  609. {
  610.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultConstCopyInit)
  611.     (this,ctrl,fromObj);
  612. }
  613.  
  614.  
  615. /* initializer method: somDefaultVCopyInit */
  616. void   somDefaultVCopyInit(somInitCtrl* ctrl,
  617.         SOMObject* fromObj)
  618. {
  619.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultVCopyInit)
  620.     (this,ctrl,fromObj);
  621. }
  622.  
  623.  
  624. /* initializer method: somDefaultConstVCopyInit */
  625. void   somDefaultConstVCopyInit(somInitCtrl* ctrl,
  626.         SOMObject* fromObj)
  627. {
  628.    SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultConstVCopyInit)
  629.     (this,ctrl,fromObj);
  630. }
  631.  
  632.  
  633. /* method: somDefaultConstAssign */
  634. InterfaceDef*  somDefaultConstAssign(somAssignCtrl* ctrl,
  635.         SOMObject* fromObj)
  636. {
  637.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultConstAssign)
  638.     (this,ctrl,fromObj);
  639. }
  640.  
  641.  
  642. /* method: somDefaultVAssign */
  643. InterfaceDef*  somDefaultVAssign(somAssignCtrl* ctrl,
  644.         SOMObject* fromObj)
  645. {
  646.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultVAssign)
  647.     (this,ctrl,fromObj);
  648. }
  649.  
  650.  
  651. /* method: somDefaultConstVAssign */
  652. InterfaceDef*  somDefaultConstVAssign(somAssignCtrl* ctrl,
  653.         SOMObject* fromObj)
  654. {
  655.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somDefaultConstVAssign)
  656.     (this,ctrl,fromObj);
  657. }
  658.  
  659.  
  660. /* method: somGetClass */
  661. SOMClass*   somGetClass()
  662. {
  663.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somGetClass)
  664.     (this);
  665. }
  666.  
  667.  
  668. /* method: somGetClassName */
  669. string   somGetClassName()
  670. {
  671.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somGetClassName)
  672.     (this);
  673. }
  674.  
  675.  
  676. /* method: somGetSize */
  677. long   somGetSize()
  678. {
  679.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somGetSize)
  680.     (this);
  681. }
  682.  
  683.  
  684. /* method: somIsA */
  685. boolean   somIsA(SOMClass* aClassObj)
  686. {
  687.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somIsA)
  688.     (this,aClassObj);
  689. }
  690.  
  691.  
  692. /* method: somIsInstanceOf */
  693. boolean   somIsInstanceOf(SOMClass* aClassObj)
  694. {
  695.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somIsInstanceOf)
  696.     (this,aClassObj);
  697. }
  698.  
  699.  
  700. /* method: somRespondsTo */
  701. boolean   somRespondsTo(somId mId)
  702. {
  703.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somRespondsTo)
  704.     (this,mId);
  705. }
  706.  
  707.  
  708. /* va_list method: somDispatch */
  709. /* the va_list invocation form */
  710. boolean   InterfaceDef_somDispatch(somToken* retValue,
  711.         somId methodId,
  712.         va_list ap)
  713. {
  714. return SOM_ResolveD(this,InterfaceDef,SOMObject,somDispatch)
  715.     (this,retValue,methodId,ap);
  716. }
  717.  
  718. /* the varargs invocation form */
  719. boolean   somDispatch(somToken* retValue,
  720.         somId methodId,
  721.         ...)
  722. {
  723.    va_list ap;
  724.    va_start(ap, methodId);
  725.    boolean __somResult = 
  726.       SOM_ResolveD(this,InterfaceDef,SOMObject,somDispatch)
  727.     (this,retValue,methodId,ap);
  728.    va_end(ap);
  729.    return __somResult;
  730. }
  731.  
  732.  
  733. /* va_list method: somClassDispatch */
  734. /* the va_list invocation form */
  735. boolean   InterfaceDef_somClassDispatch(SOMClass* clsObj,
  736.         somToken* retValue,
  737.         somId methodId,
  738.         va_list ap)
  739. {
  740. return SOM_ResolveD(this,InterfaceDef,SOMObject,somClassDispatch)
  741.     (this,clsObj,retValue,methodId,ap);
  742. }
  743.  
  744. /* the varargs invocation form */
  745. boolean   somClassDispatch(SOMClass* clsObj,
  746.         somToken* retValue,
  747.         somId methodId,
  748.         ...)
  749. {
  750.    va_list ap;
  751.    va_start(ap, methodId);
  752.    boolean __somResult = 
  753.       SOM_ResolveD(this,InterfaceDef,SOMObject,somClassDispatch)
  754.     (this,clsObj,retValue,methodId,ap);
  755.    va_end(ap);
  756.    return __somResult;
  757. }
  758.  
  759.  
  760. /* method: somCastObj */
  761. boolean   somCastObj(SOMClass* cls)
  762. {
  763.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somCastObj)
  764.     (this,cls);
  765. }
  766.  
  767.  
  768. /* method: somResetObj */
  769. boolean   somResetObj()
  770. {
  771.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somResetObj)
  772.     (this);
  773. }
  774.  
  775.  
  776. /* method: somPrintSelf */
  777. SOMObject*   somPrintSelf()
  778. {
  779.    return SOM_ResolveD(this,InterfaceDef,SOMObject,somPrintSelf)
  780.     (this);
  781. }
  782.  
  783.  
  784. /* method: contents */
  785. _IDL_SEQUENCE_Contained   contents(Environment *ev,
  786.         Container_InterfaceName limit_type,
  787.         boolean exclude_inherited)
  788. {
  789.    return SOM_ResolveD(this,InterfaceDef,Container,contents)
  790.     (this, ev,limit_type,exclude_inherited);
  791. }
  792.  
  793.  
  794. /* method: lookup_name */
  795. _IDL_SEQUENCE_Contained   lookup_name(Environment *ev,
  796.         Identifier search_name,
  797.         long levels_to_search,
  798.         Container_InterfaceName limit_type,
  799.         boolean exclude_inherited)
  800. {
  801.    return SOM_ResolveD(this,InterfaceDef,Container,lookup_name)
  802.     (this, ev,search_name,levels_to_search,limit_type,exclude_inherited);
  803. }
  804.  
  805.  
  806. /* method: describe_contents */
  807. _IDL_SEQUENCE_Container_ContainerDescription   describe_contents(Environment *ev,
  808.         Container_InterfaceName limit_type,
  809.         boolean exclude_inherited,
  810.         long max_returned_objs)
  811. {
  812.    return SOM_ResolveD(this,InterfaceDef,Container,describe_contents)
  813.     (this, ev,limit_type,exclude_inherited,max_returned_objs);
  814. }
  815.  
  816.  
  817.  
  818. };   /* InterfaceDef */
  819.  
  820.  
  821.  
  822. #endif       /* SOM_InterfaceDef_xh */
  823.