home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: h:\somnt\include\containr.xh.
- * Generated using:
- * SOM Precompiler somipc: Development
- * SOM Emitter emitxh.dll: Development
- */
-
- /*
- *
- * COMPONENT_NAME: somi
- *
- * ORIGINS: 27
- *
- *
- * 10H9767, 10H9769 (C) COPYRIGHT International Business Machines Corp. 1992,1994
- * All Rights Reserved
- * Licensed Materials - Property of IBM
- * US Government Users Restricted Rights - Use, duplication or
- * disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- *
- * Container: CORBA Interface for container objects
- */
-
-
- #ifndef SOM_Container_xh
- #define SOM_Container_xh
-
- class Container;
-
- #define Container_MajorVersion 2
- #define Container_MinorVersion 1
-
- /*
- * Passthru lines: File: "C.xh", "before"
- */
-
- #include <somtcnst.xh>
- #include <stdio.h>
- #include <somir.xh>
- #include <containd.xh>
-
-
- /* C++ SOM defs */
- #include <somcls.xh>
- #include <somcm.xh>
-
- /* C++ parent defs */
- #ifndef SOM_SOMObject_xh
- #include <somobj.xh>
- #endif
-
- #ifndef Container_API
- #define Container_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
- class Contained;
- typedef
- string Container_InterfaceName;
-
- /*
- *
- * Valid values for InterfaceName are limited to the following set:
- * {"AttributeDef", "ConstantDef", "ExceptionDef", "InterfaceDef",
- * "ModuleDef", "ParameterDef", "OperationDef", "TypeDef", "all"}
- */
- typedef
- struct Container_ContainerDescription {
- Contained* contained_object;
- Identifier name;
- any value;
- } Container_ContainerDescription;
- #ifndef _IDL_SEQUENCE_Contained_defined
- #define _IDL_SEQUENCE_Contained_defined
- typedef struct {
- unsigned long _maximum;
- unsigned long _length;
- Contained **_buffer;
- } _IDL_SEQUENCE_Contained;
- #endif /* _IDL_SEQUENCE_Contained_defined */
- struct Container_ContainerDescription;
- #ifndef _IDL_SEQUENCE_Container_ContainerDescription_defined
- #define _IDL_SEQUENCE_Container_ContainerDescription_defined
- typedef struct {
- unsigned long _maximum;
- unsigned long _length;
- struct Container_ContainerDescription *_buffer;
- } _IDL_SEQUENCE_Container_ContainerDescription;
- #endif /* _IDL_SEQUENCE_Container_ContainerDescription_defined */
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
- #ifndef SOMTGD_InterfaceName
- #ifdef InterfaceName
- #undef InterfaceName
- #define SOMTGD_InterfaceName 1
- #else
- #define InterfaceName Container_InterfaceName
- #endif /* InterfaceName */
- #endif /* SOMTGD_InterfaceName */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
- #ifndef SOMTGD_ContainerDescription
- #ifdef ContainerDescription
- #undef ContainerDescription
- #define SOMTGD_ContainerDescription 1
- #else
- #define ContainerDescription Container_ContainerDescription
- #endif /* ContainerDescription */
- #endif /* SOMTGD_ContainerDescription */
- #ifndef SOMTGD__IDL_SEQUENCE_ContainerDescription
- #ifdef _IDL_SEQUENCE_ContainerDescription
- #undef _IDL_SEQUENCE_ContainerDescription
- #define SOMTGD__IDL_SEQUENCE_ContainerDescription 1
- #else
- #define _IDL_SEQUENCE_ContainerDescription _IDL_SEQUENCE_Container_ContainerDescription
- #endif /* _IDL_SEQUENCE_ContainerDescription */
- #endif /* SOMTGD__IDL_SEQUENCE_ContainerDescription */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
-
- /*
- * End of user-defined types.
- */
-
- /* A procedure to create the Container Class */
- SOMEXTERN
- #if (defined(SOM_Module_containr_Source) || defined(Container_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Container))
- WIN32_DLLEXPORT
- #else
- WIN32_DLLIMPORT
- #endif
- SOMClass * SOMLINK ContainerNewClass(
- integer4,
- integer4 );
-
- /* The API to the Container class object, and the methods it introduces. */
- SOMEXTERN struct ContainerClassDataStructure {
- SOMClass *classObject;
- somMToken contents;
- somMToken lookup_name;
- somMToken describe_contents;
- }
- #if !(defined(SOM_Module_containr_Source) || defined(Container_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Container))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK ContainerClassData;
- #define _Container ContainerClassData.classObject
-
- /* The API to parentMtabs for Container, and the instance data it introduces. */
- SOMEXTERN struct ContainerCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- }
- #if !(defined(SOM_Module_containr_Source) || defined(Container_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Container))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK ContainerCClassData;
-
- /*
- * -- Typedefs for Container Method Procedures
- */
- extern "C" {
- typedef _IDL_SEQUENCE_Contained SOMLINK somTP_Container_contents(Container *somSelf, Environment *ev,
- Container_InterfaceName limit_type,
- boolean exclude_inherited);
- typedef somTP_Container_contents *somTD_Container_contents;
- typedef _IDL_SEQUENCE_Contained SOMLINK somTP_Container_lookup_name(Container *somSelf, Environment *ev,
- Identifier search_name,
- long levels_to_search,
- Container_InterfaceName limit_type,
- boolean exclude_inherited);
- typedef somTP_Container_lookup_name *somTD_Container_lookup_name;
- typedef _IDL_SEQUENCE_Container_ContainerDescription SOMLINK somTP_Container_describe_contents(Container *somSelf, Environment *ev,
- Container_InterfaceName limit_type,
- boolean exclude_inherited,
- long max_returned_objs);
- typedef somTP_Container_describe_contents *somTD_Container_describe_contents;
-
- /*
- * -- Typedefs for Reintroduced Wrapper Methods
- */
- typedef void SOMLINK somTP_Container_somDefaultInit(Container *somSelf,
- somInitCtrl* ctrl);
- typedef somTP_Container_somDefaultInit *somTD_Container_somDefaultInit;
- typedef void SOMLINK somTP_Container_somDestruct(Container *somSelf,
- octet doFree,
- somDestructCtrl* ctrl);
- typedef somTP_Container_somDestruct *somTD_Container_somDestruct;
- typedef void SOMLINK somTP_Container_somDefaultCopyInit(Container *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultCopyInit *somTD_Container_somDefaultCopyInit;
- typedef Container* SOMLINK somTP_Container_somDefaultAssign(Container *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultAssign *somTD_Container_somDefaultAssign;
- typedef void SOMLINK somTP_Container_somDefaultConstCopyInit(Container *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultConstCopyInit *somTD_Container_somDefaultConstCopyInit;
- typedef void SOMLINK somTP_Container_somDefaultVCopyInit(Container *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultVCopyInit *somTD_Container_somDefaultVCopyInit;
- typedef void SOMLINK somTP_Container_somDefaultConstVCopyInit(Container *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultConstVCopyInit *somTD_Container_somDefaultConstVCopyInit;
- typedef Container* SOMLINK somTP_Container_somDefaultConstAssign(Container *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultConstAssign *somTD_Container_somDefaultConstAssign;
- typedef Container* SOMLINK somTP_Container_somDefaultVAssign(Container *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultVAssign *somTD_Container_somDefaultVAssign;
- typedef Container* SOMLINK somTP_Container_somDefaultConstVAssign(Container *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_Container_somDefaultConstVAssign *somTD_Container_somDefaultConstVAssign;
- typedef void SOMLINK somTP_Container_somInit(Container *somSelf);
- typedef somTP_Container_somInit *somTD_Container_somInit;
- typedef void SOMLINK somTP_Container_somFree(Container *somSelf);
- typedef somTP_Container_somFree *somTD_Container_somFree;
- typedef void SOMLINK somTP_Container_somUninit(Container *somSelf);
- typedef somTP_Container_somUninit *somTD_Container_somUninit;
- typedef SOMClass* SOMLINK somTP_Container_somGetClass(Container *somSelf);
- typedef somTP_Container_somGetClass *somTD_Container_somGetClass;
- typedef string SOMLINK somTP_Container_somGetClassName(Container *somSelf);
- typedef somTP_Container_somGetClassName *somTD_Container_somGetClassName;
- typedef long SOMLINK somTP_Container_somGetSize(Container *somSelf);
- typedef somTP_Container_somGetSize *somTD_Container_somGetSize;
- typedef boolean SOMLINK somTP_Container_somIsA(Container *somSelf,
- SOMClass* aClassObj);
- typedef somTP_Container_somIsA *somTD_Container_somIsA;
- typedef boolean SOMLINK somTP_Container_somIsInstanceOf(Container *somSelf,
- SOMClass* aClassObj);
- typedef somTP_Container_somIsInstanceOf *somTD_Container_somIsInstanceOf;
- typedef boolean SOMLINK somTP_Container_somRespondsTo(Container *somSelf,
- somId mId);
- typedef somTP_Container_somRespondsTo *somTD_Container_somRespondsTo;
- typedef boolean SOMLINK somTP_Container_somDispatch(Container *somSelf,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_Container_somDispatch *somTD_Container_somDispatch;
- typedef boolean SOMLINK somTP_Container_somClassDispatch(Container *somSelf,
- SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_Container_somClassDispatch *somTD_Container_somClassDispatch;
- typedef boolean SOMLINK somTP_Container_somCastObj(Container *somSelf,
- SOMClass* cls);
- typedef somTP_Container_somCastObj *somTD_Container_somCastObj;
- typedef boolean SOMLINK somTP_Container_somResetObj(Container *somSelf);
- typedef somTP_Container_somResetObj *somTD_Container_somResetObj;
- typedef SOMObject* SOMLINK somTP_Container_somPrintSelf(Container *somSelf);
- typedef somTP_Container_somPrintSelf *somTD_Container_somPrintSelf;
- typedef void SOMLINK somTP_Container_somDumpSelf(Container *somSelf,
- long level);
- typedef somTP_Container_somDumpSelf *somTD_Container_somDumpSelf;
- typedef void SOMLINK somTP_Container_somDumpSelfInt(Container *somSelf,
- long level);
- typedef somTP_Container_somDumpSelfInt *somTD_Container_somDumpSelfInt;
- }
-
- #endif /* Container_API */
-
-
- /*
- * -- This emitter believes that method thunks are unavailable,
- * -- so somResolve will be called.
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) (somResolve(obj,mToken))
-
- /*
- * -- The C++ Wrapper Class for Container
- */
- class Container : public SOMObject
- {
- public:
-
- // Container::new creates the class object if necessary, and then uses somNewNoInit
- // to allocate memory and create the object. Initialization is in ctors.
- void *operator new(size_t)
- {
- if (!_Container) ContainerNewClass(Container_MajorVersion,Container_MinorVersion);
- return (void*)
- SOM_Resolve(_Container,SOMClass,somNewNoInit)
- ((SOMClass *)((void*)_Container));
- }
-
- // Container::delete uses somDestruct.
- void operator delete(void * obj)
- {
- if (obj && *(void**)obj) {
- SOM_Resolve(obj,SOMObject,somDestruct)
- ((SOMObject*)obj, 1, 0);
- }
- }
-
- Container()
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (ContainerCClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultInit(0);
- }
-
- Container(Container* fromObj)
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (ContainerCClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
- }
-
- Container(const Container* fromObj)
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (ContainerCClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
- }
-
-
- /* method: contents */
- _IDL_SEQUENCE_Contained contents(Environment *ev,
- Container_InterfaceName limit_type,
- boolean exclude_inherited)
- {
- return SOM_ResolveD(this,Container,Container,contents)
- (this, ev,limit_type,exclude_inherited);
- }
-
-
- /* method: lookup_name */
- _IDL_SEQUENCE_Contained lookup_name(Environment *ev,
- Identifier search_name,
- long levels_to_search,
- Container_InterfaceName limit_type,
- boolean exclude_inherited)
- {
- return SOM_ResolveD(this,Container,Container,lookup_name)
- (this, ev,search_name,levels_to_search,limit_type,exclude_inherited);
- }
-
-
- /* method: describe_contents */
- _IDL_SEQUENCE_Container_ContainerDescription describe_contents(Environment *ev,
- Container_InterfaceName limit_type,
- boolean exclude_inherited,
- long max_returned_objs)
- {
- return SOM_ResolveD(this,Container,Container,describe_contents)
- (this, ev,limit_type,exclude_inherited,max_returned_objs);
- }
-
-
- /*
- * Reintroduce inherited methods
- */
-
- /* initializer method: somDefaultInit */
- void somDefaultInit(somInitCtrl* ctrl)
- {
- SOM_ResolveD(this,Container,SOMObject,somDefaultInit)
- (this,ctrl);
- }
-
-
- /* method: somDestruct */
- void somDestruct(octet doFree,
- somDestructCtrl* ctrl)
- {
- SOM_ResolveD(this,Container,SOMObject,somDestruct)
- (this,doFree,ctrl);
- }
-
-
- /* initializer method: somDefaultCopyInit */
- void somDefaultCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Container,SOMObject,somDefaultCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultAssign */
- Container* somDefaultAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Container,SOMObject,somDefaultAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstCopyInit */
- void somDefaultConstCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Container,SOMObject,somDefaultConstCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultVCopyInit */
- void somDefaultVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Container,SOMObject,somDefaultVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstVCopyInit */
- void somDefaultConstVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,Container,SOMObject,somDefaultConstVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstAssign */
- Container* somDefaultConstAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Container,SOMObject,somDefaultConstAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultVAssign */
- Container* somDefaultVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Container,SOMObject,somDefaultVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstVAssign */
- Container* somDefaultConstVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,Container,SOMObject,somDefaultConstVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somInit */
- void somInit()
- {
- SOM_ResolveD(this,Container,SOMObject,somInit)
- (this);
- }
-
-
- /* method: somFree */
- void somFree()
- {
- SOM_ResolveD(this,Container,SOMObject,somFree)
- (this);
- }
-
-
- /* method: somUninit */
- void somUninit()
- {
- SOM_ResolveD(this,Container,SOMObject,somUninit)
- (this);
- }
-
-
- /* method: somGetClass */
- SOMClass* somGetClass()
- {
- return SOM_ResolveD(this,Container,SOMObject,somGetClass)
- (this);
- }
-
-
- /* method: somGetClassName */
- string somGetClassName()
- {
- return SOM_ResolveD(this,Container,SOMObject,somGetClassName)
- (this);
- }
-
-
- /* method: somGetSize */
- long somGetSize()
- {
- return SOM_ResolveD(this,Container,SOMObject,somGetSize)
- (this);
- }
-
-
- /* method: somIsA */
- boolean somIsA(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,Container,SOMObject,somIsA)
- (this,aClassObj);
- }
-
-
- /* method: somIsInstanceOf */
- boolean somIsInstanceOf(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,Container,SOMObject,somIsInstanceOf)
- (this,aClassObj);
- }
-
-
- /* method: somRespondsTo */
- boolean somRespondsTo(somId mId)
- {
- return SOM_ResolveD(this,Container,SOMObject,somRespondsTo)
- (this,mId);
- }
-
-
- /* va_list method: somDispatch */
- /* the va_list invocation form */
- boolean Container_somDispatch(somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,Container,SOMObject,somDispatch)
- (this,retValue,methodId,ap);
- }
-
- /* the varargs invocation form */
- boolean somDispatch(somToken* retValue,
- somId methodId,
- ...)
- {
- va_list ap;
- va_start(ap, methodId);
- boolean __somResult =
- SOM_ResolveD(this,Container,SOMObject,somDispatch)
- (this,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* va_list method: somClassDispatch */
- /* the va_list invocation form */
- boolean Container_somClassDispatch(SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,Container,SOMObject,somClassDispatch)
- (this,clsObj,retValue,methodId,ap);
- }
-
- /* the varargs invocation form */
- boolean somClassDispatch(SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- ...)
- {
- va_list ap;
- va_start(ap, methodId);
- boolean __somResult =
- SOM_ResolveD(this,Container,SOMObject,somClassDispatch)
- (this,clsObj,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* method: somCastObj */
- boolean somCastObj(SOMClass* cls)
- {
- return SOM_ResolveD(this,Container,SOMObject,somCastObj)
- (this,cls);
- }
-
-
- /* method: somResetObj */
- boolean somResetObj()
- {
- return SOM_ResolveD(this,Container,SOMObject,somResetObj)
- (this);
- }
-
-
- /* method: somPrintSelf */
- SOMObject* somPrintSelf()
- {
- return SOM_ResolveD(this,Container,SOMObject,somPrintSelf)
- (this);
- }
-
-
- /* method: somDumpSelf */
- void somDumpSelf(long level)
- {
- SOM_ResolveD(this,Container,SOMObject,somDumpSelf)
- (this,level);
- }
-
-
- /* method: somDumpSelfInt */
- void somDumpSelfInt(long level)
- {
- SOM_ResolveD(this,Container,SOMObject,somDumpSelfInt)
- (this,level);
- }
-
-
-
- }; /* Container */
-
-
-
- #endif /* SOM_Container_xh */
-