home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: h:\somnt\include\BOA.xh.
- * Generated using:
- * SOM Precompiler somipc: Development
- * SOM Emitter emitxh.dll: Development
- */
-
- /*
- *
- * COMPONENT_NAME: somd
- *
- * 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.
- *
- * IDL interface spec for CORBA Basic Object Adapter.
- *
- * This is an abstract class which defines the CORBA-defined interface
- * for a Basic Object Adapter.
- *
- * The SOM Object Adapter interface is derived from this one.
- * SOMOA provides the actual implementation in DSOM.
- */
-
-
- #ifndef SOM_BOA_xh
- #define SOM_BOA_xh
-
- class BOA;
-
- #define BOA_MajorVersion 2
- #define BOA_MinorVersion 1
-
- /* C++ SOM defs */
- #include <somcls.xh>
- #include <somcm.xh>
-
- /* C++ parent defs */
- #ifndef SOM_SOMObject_xh
- #include <somobj.xh>
- #endif
-
- /*
- * C++ metaclass def
- */
- #include <snglicls.xh>
-
- #ifndef BOA_API
- #define BOA_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
- class Container;
- class SOMDObject;
- class Principal;
- class ImplementationDef;
- class InterfaceDef;
- class Context;
-
- /*
- * End of user-defined types.
- */
-
- /* A procedure to create the BOA Class */
- class SOMMSingleInstance;
- SOMEXTERN
- #if (defined(SOM_Module_BOA_Source) || defined(BOA_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_BOA))
- WIN32_DLLEXPORT
- #else
- WIN32_DLLIMPORT
- #endif
- SOMMSingleInstance * SOMLINK BOANewClass(
- integer4,
- integer4 );
-
- /* The API to the BOA class object, and the methods it introduces. */
- SOMEXTERN struct BOAClassDataStructure {
- SOMMSingleInstance *classObject;
- somMToken create;
- somMToken dispose;
- somMToken get_id;
- somMToken change_implementation;
- somMToken get_principal;
- somMToken set_exception;
- somMToken impl_is_ready;
- somMToken deactivate_impl;
- somMToken obj_is_ready;
- somMToken deactivate_obj;
- somMToken activate_impl;
- somMToken activate_obj;
- }
- #if !(defined(SOM_Module_BOA_Source) || defined(BOA_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_BOA))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK BOAClassData;
- #define _BOA BOAClassData.classObject
-
- /* The API to parentMtabs for BOA, and the instance data it introduces. */
- SOMEXTERN struct BOACClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- }
- #if !(defined(SOM_Module_BOA_Source) || defined(BOA_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_BOA))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK BOACClassData;
-
- /*
- * -- Typedefs for BOA Method Procedures
- */
- extern "C" {
- typedef SOMDObject* SOMLINK somTP_BOA_create(BOA *somSelf, Environment *ev,
- ReferenceData* id,
- InterfaceDef* intf,
- ImplementationDef* impl);
- typedef somTP_BOA_create *somTD_BOA_create;
- typedef void SOMLINK somTP_BOA_dispose(BOA *somSelf, Environment *ev,
- SOMDObject* obj);
- typedef somTP_BOA_dispose *somTD_BOA_dispose;
- typedef ReferenceData SOMLINK somTP_BOA_get_id(BOA *somSelf, Environment *ev,
- SOMDObject* obj);
- typedef somTP_BOA_get_id *somTD_BOA_get_id;
- typedef Principal* SOMLINK somTP_BOA_get_principal(BOA *somSelf, Environment *ev,
- SOMDObject* obj,
- Environment* req_ev);
- typedef somTP_BOA_get_principal *somTD_BOA_get_principal;
- typedef void SOMLINK somTP_BOA_set_exception(BOA *somSelf, Environment *ev,
- exception_type major,
- string userid,
- void* param);
- typedef somTP_BOA_set_exception *somTD_BOA_set_exception;
- typedef void SOMLINK somTP_BOA_impl_is_ready(BOA *somSelf, Environment *ev,
- ImplementationDef* impl);
- typedef somTP_BOA_impl_is_ready *somTD_BOA_impl_is_ready;
- typedef void SOMLINK somTP_BOA_deactivate_impl(BOA *somSelf, Environment *ev,
- ImplementationDef* impl);
- typedef somTP_BOA_deactivate_impl *somTD_BOA_deactivate_impl;
- typedef void SOMLINK somTP_BOA_change_implementation(BOA *somSelf, Environment *ev,
- SOMDObject* obj,
- ImplementationDef* impl);
- typedef somTP_BOA_change_implementation *somTD_BOA_change_implementation;
- typedef void SOMLINK somTP_BOA_obj_is_ready(BOA *somSelf, Environment *ev,
- SOMDObject* obj,
- ImplementationDef* impl);
- typedef somTP_BOA_obj_is_ready *somTD_BOA_obj_is_ready;
- typedef void SOMLINK somTP_BOA_deactivate_obj(BOA *somSelf, Environment *ev,
- SOMDObject* obj);
- typedef somTP_BOA_deactivate_obj *somTD_BOA_deactivate_obj;
-
- /*
- * -- Typedefs for Reintroduced Wrapper Methods
- */
- typedef void SOMLINK somTP_BOA_somDefaultInit(BOA *somSelf,
- somInitCtrl* ctrl);
- typedef somTP_BOA_somDefaultInit *somTD_BOA_somDefaultInit;
- typedef void SOMLINK somTP_BOA_somDestruct(BOA *somSelf,
- octet doFree,
- somDestructCtrl* ctrl);
- typedef somTP_BOA_somDestruct *somTD_BOA_somDestruct;
- typedef void SOMLINK somTP_BOA_somDefaultCopyInit(BOA *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultCopyInit *somTD_BOA_somDefaultCopyInit;
- typedef BOA* SOMLINK somTP_BOA_somDefaultAssign(BOA *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultAssign *somTD_BOA_somDefaultAssign;
- typedef void SOMLINK somTP_BOA_somDefaultConstCopyInit(BOA *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultConstCopyInit *somTD_BOA_somDefaultConstCopyInit;
- typedef void SOMLINK somTP_BOA_somDefaultVCopyInit(BOA *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultVCopyInit *somTD_BOA_somDefaultVCopyInit;
- typedef void SOMLINK somTP_BOA_somDefaultConstVCopyInit(BOA *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultConstVCopyInit *somTD_BOA_somDefaultConstVCopyInit;
- typedef BOA* SOMLINK somTP_BOA_somDefaultConstAssign(BOA *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultConstAssign *somTD_BOA_somDefaultConstAssign;
- typedef BOA* SOMLINK somTP_BOA_somDefaultVAssign(BOA *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultVAssign *somTD_BOA_somDefaultVAssign;
- typedef BOA* SOMLINK somTP_BOA_somDefaultConstVAssign(BOA *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_BOA_somDefaultConstVAssign *somTD_BOA_somDefaultConstVAssign;
- typedef void SOMLINK somTP_BOA_somInit(BOA *somSelf);
- typedef somTP_BOA_somInit *somTD_BOA_somInit;
- typedef void SOMLINK somTP_BOA_somFree(BOA *somSelf);
- typedef somTP_BOA_somFree *somTD_BOA_somFree;
- typedef void SOMLINK somTP_BOA_somUninit(BOA *somSelf);
- typedef somTP_BOA_somUninit *somTD_BOA_somUninit;
- typedef SOMMSingleInstance* SOMLINK somTP_BOA_somGetClass(BOA *somSelf);
- typedef somTP_BOA_somGetClass *somTD_BOA_somGetClass;
- typedef string SOMLINK somTP_BOA_somGetClassName(BOA *somSelf);
- typedef somTP_BOA_somGetClassName *somTD_BOA_somGetClassName;
- typedef long SOMLINK somTP_BOA_somGetSize(BOA *somSelf);
- typedef somTP_BOA_somGetSize *somTD_BOA_somGetSize;
- typedef boolean SOMLINK somTP_BOA_somIsA(BOA *somSelf,
- SOMClass* aClassObj);
- typedef somTP_BOA_somIsA *somTD_BOA_somIsA;
- typedef boolean SOMLINK somTP_BOA_somIsInstanceOf(BOA *somSelf,
- SOMClass* aClassObj);
- typedef somTP_BOA_somIsInstanceOf *somTD_BOA_somIsInstanceOf;
- typedef boolean SOMLINK somTP_BOA_somRespondsTo(BOA *somSelf,
- somId mId);
- typedef somTP_BOA_somRespondsTo *somTD_BOA_somRespondsTo;
- typedef boolean SOMLINK somTP_BOA_somDispatch(BOA *somSelf,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_BOA_somDispatch *somTD_BOA_somDispatch;
- typedef boolean SOMLINK somTP_BOA_somClassDispatch(BOA *somSelf,
- SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_BOA_somClassDispatch *somTD_BOA_somClassDispatch;
- typedef boolean SOMLINK somTP_BOA_somCastObj(BOA *somSelf,
- SOMClass* cls);
- typedef somTP_BOA_somCastObj *somTD_BOA_somCastObj;
- typedef boolean SOMLINK somTP_BOA_somResetObj(BOA *somSelf);
- typedef somTP_BOA_somResetObj *somTD_BOA_somResetObj;
- typedef SOMObject* SOMLINK somTP_BOA_somPrintSelf(BOA *somSelf);
- typedef somTP_BOA_somPrintSelf *somTD_BOA_somPrintSelf;
- typedef void SOMLINK somTP_BOA_somDumpSelf(BOA *somSelf,
- long level);
- typedef somTP_BOA_somDumpSelf *somTD_BOA_somDumpSelf;
- typedef void SOMLINK somTP_BOA_somDumpSelfInt(BOA *somSelf,
- long level);
- typedef somTP_BOA_somDumpSelfInt *somTD_BOA_somDumpSelfInt;
- }
-
- #endif /* BOA_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 BOA
- */
- class BOA : public SOMObject
- {
- public:
-
- // BOA::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 (!_BOA) BOANewClass(BOA_MajorVersion,BOA_MinorVersion);
- return (void*)
- SOM_Resolve(_BOA,SOMClass,somNewNoInit)
- ((SOMClass *)((void*)_BOA));
- }
-
- // BOA::delete uses somDestruct.
- void operator delete(void * obj)
- {
- if (obj && *(void**)obj) {
- SOM_Resolve(obj,SOMObject,somDestruct)
- ((SOMObject*)obj, 1, 0);
- }
- }
-
- BOA()
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (BOACClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultInit(0);
- }
-
- BOA(BOA* fromObj)
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (BOACClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
- }
-
- BOA(const BOA* fromObj)
- {
- if (*(void**)this !=
- ((somParentMtabStructPtr)
- (BOACClassData.parentMtab))->mtab)
- return;
- ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
- }
-
-
- /* method: create */
- SOMDObject* create(Environment *ev,
- ReferenceData* id,
- InterfaceDef* intf,
- ImplementationDef* impl)
- {
- return SOM_ResolveD(this,BOA,BOA,create)
- (this, ev,id,intf,impl);
- }
-
-
- /* method: dispose */
- void dispose(Environment *ev,
- SOMDObject* obj)
- {
- SOM_ResolveD(this,BOA,BOA,dispose)
- (this, ev,obj);
- }
-
-
- /* method: get_id */
- ReferenceData get_id(Environment *ev,
- SOMDObject* obj)
- {
- return SOM_ResolveD(this,BOA,BOA,get_id)
- (this, ev,obj);
- }
-
-
- /* method: get_principal */
- Principal* get_principal(Environment *ev,
- SOMDObject* obj,
- Environment* req_ev)
- {
- return SOM_ResolveD(this,BOA,BOA,get_principal)
- (this, ev,obj,req_ev);
- }
-
-
- /* method: set_exception */
- void set_exception(Environment *ev,
- exception_type major,
- string userid,
- void* param)
- {
- SOM_ResolveD(this,BOA,BOA,set_exception)
- (this, ev,major,userid,param);
- }
-
-
- /* method: impl_is_ready */
- void impl_is_ready(Environment *ev,
- ImplementationDef* impl)
- {
- SOM_ResolveD(this,BOA,BOA,impl_is_ready)
- (this, ev,impl);
- }
-
-
- /* method: deactivate_impl */
- void deactivate_impl(Environment *ev,
- ImplementationDef* impl)
- {
- SOM_ResolveD(this,BOA,BOA,deactivate_impl)
- (this, ev,impl);
- }
-
-
- /* method: change_implementation */
- void change_implementation(Environment *ev,
- SOMDObject* obj,
- ImplementationDef* impl)
- {
- SOM_ResolveD(this,BOA,BOA,change_implementation)
- (this, ev,obj,impl);
- }
-
-
- /* method: obj_is_ready */
- void obj_is_ready(Environment *ev,
- SOMDObject* obj,
- ImplementationDef* impl)
- {
- SOM_ResolveD(this,BOA,BOA,obj_is_ready)
- (this, ev,obj,impl);
- }
-
-
- /* method: deactivate_obj */
- void deactivate_obj(Environment *ev,
- SOMDObject* obj)
- {
- SOM_ResolveD(this,BOA,BOA,deactivate_obj)
- (this, ev,obj);
- }
-
-
- /*
- * Reintroduce inherited methods
- */
-
- /* initializer method: somDefaultInit */
- void somDefaultInit(somInitCtrl* ctrl)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDefaultInit)
- (this,ctrl);
- }
-
-
- /* method: somDestruct */
- void somDestruct(octet doFree,
- somDestructCtrl* ctrl)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDestruct)
- (this,doFree,ctrl);
- }
-
-
- /* initializer method: somDefaultCopyInit */
- void somDefaultCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDefaultCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultAssign */
- BOA* somDefaultAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somDefaultAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstCopyInit */
- void somDefaultConstCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDefaultConstCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultVCopyInit */
- void somDefaultVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDefaultVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstVCopyInit */
- void somDefaultConstVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDefaultConstVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstAssign */
- BOA* somDefaultConstAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somDefaultConstAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultVAssign */
- BOA* somDefaultVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somDefaultVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstVAssign */
- BOA* somDefaultConstVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somDefaultConstVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somInit */
- void somInit()
- {
- SOM_ResolveD(this,BOA,SOMObject,somInit)
- (this);
- }
-
-
- /* method: somFree */
- void somFree()
- {
- SOM_ResolveD(this,BOA,SOMObject,somFree)
- (this);
- }
-
-
- /* method: somUninit */
- void somUninit()
- {
- SOM_ResolveD(this,BOA,SOMObject,somUninit)
- (this);
- }
-
-
- /* method: somGetClass */
- SOMMSingleInstance* somGetClass()
- {
- return SOM_ResolveD(this,BOA,SOMObject,somGetClass)
- (this);
- }
-
-
- /* method: somGetClassName */
- string somGetClassName()
- {
- return SOM_ResolveD(this,BOA,SOMObject,somGetClassName)
- (this);
- }
-
-
- /* method: somGetSize */
- long somGetSize()
- {
- return SOM_ResolveD(this,BOA,SOMObject,somGetSize)
- (this);
- }
-
-
- /* method: somIsA */
- boolean somIsA(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somIsA)
- (this,aClassObj);
- }
-
-
- /* method: somIsInstanceOf */
- boolean somIsInstanceOf(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somIsInstanceOf)
- (this,aClassObj);
- }
-
-
- /* method: somRespondsTo */
- boolean somRespondsTo(somId mId)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somRespondsTo)
- (this,mId);
- }
-
-
- /* va_list method: somDispatch */
- /* the va_list invocation form */
- boolean BOA_somDispatch(somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,BOA,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,BOA,SOMObject,somDispatch)
- (this,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* va_list method: somClassDispatch */
- /* the va_list invocation form */
- boolean BOA_somClassDispatch(SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,BOA,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,BOA,SOMObject,somClassDispatch)
- (this,clsObj,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* method: somCastObj */
- boolean somCastObj(SOMClass* cls)
- {
- return SOM_ResolveD(this,BOA,SOMObject,somCastObj)
- (this,cls);
- }
-
-
- /* method: somResetObj */
- boolean somResetObj()
- {
- return SOM_ResolveD(this,BOA,SOMObject,somResetObj)
- (this);
- }
-
-
- /* method: somPrintSelf */
- SOMObject* somPrintSelf()
- {
- return SOM_ResolveD(this,BOA,SOMObject,somPrintSelf)
- (this);
- }
-
-
- /* method: somDumpSelf */
- void somDumpSelf(long level)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDumpSelf)
- (this,level);
- }
-
-
- /* method: somDumpSelfInt */
- void somDumpSelfInt(long level)
- {
- SOM_ResolveD(this,BOA,SOMObject,somDumpSelfInt)
- (this,level);
- }
-
-
-
- }; /* BOA */
-
-
-
- #endif /* SOM_BOA_xh */
-