home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: h:\somnt\include\somobj.xh.
- * Generated using:
- * SOM Precompiler somipc: Development
- * SOM Emitter emitxh.dll: Development
- */
-
- /*
- *
- * COMPONENT_NAME: somk
- *
- * 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.
- *
- * SOMObject: System Object Model root class
- */
-
-
- #ifndef SOM_SOMObject_xh
- #define SOM_SOMObject_xh
-
- class SOMObject;
-
- /*
- * This is the SOM root class, all SOM classes must be descended from
- * <SOMObject>. <SOMObject> has no instance data so there is no
- * per-instance cost to to being descended from it.
- */
-
- #define SOMObject_MajorVersion 1
- #define SOMObject_MinorVersion 4
-
- /* C++ SOM defs */
- #include <som.xh>
-
- #ifndef SOMObject_API
- #define SOMObject_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
- #ifndef _IDL_SEQUENCE_SOMObject_defined
- #define _IDL_SEQUENCE_SOMObject_defined
- typedef struct {
- unsigned long _maximum;
- unsigned long _length;
- SOMObject **_buffer;
- } _IDL_SEQUENCE_SOMObject;
- #endif /* _IDL_SEQUENCE_SOMObject_defined */
- typedef
- _IDL_SEQUENCE_SOMObject SOMObject_SOMObjectSequence;
-
- /*
- * a sequence of booleans.
- */
- #ifndef _IDL_SEQUENCE_octet_defined
- #define _IDL_SEQUENCE_octet_defined
- typedef struct {
- unsigned long _maximum;
- unsigned long _length;
- octet *_buffer;
- } _IDL_SEQUENCE_octet;
- #endif /* _IDL_SEQUENCE_octet_defined */
- typedef
- _IDL_SEQUENCE_octet SOMObject_BooleanSequence;
-
- /*
- * a structure to describe an object-related offset, and
- * a sequence of class-related offsets
- */
- typedef
- struct SOMObject_somObjectOffset {
- SOMObject* obj;
- long offset;
- } SOMObject_somObjectOffset;
- struct SOMObject_somObjectOffset;
- #ifndef _IDL_SEQUENCE_SOMObject_somObjectOffset_defined
- #define _IDL_SEQUENCE_SOMObject_somObjectOffset_defined
- typedef struct {
- unsigned long _maximum;
- unsigned long _length;
- struct SOMObject_somObjectOffset *_buffer;
- } _IDL_SEQUENCE_SOMObject_somObjectOffset;
- #endif /* _IDL_SEQUENCE_SOMObject_somObjectOffset_defined */
- typedef
- _IDL_SEQUENCE_SOMObject_somObjectOffset SOMObject_somObjectOffsets;
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
- #ifndef SOMTGD_SOMObjectSequence
- #ifdef SOMObjectSequence
- #undef SOMObjectSequence
- #define SOMTGD_SOMObjectSequence 1
- #else
- #define SOMObjectSequence SOMObject_SOMObjectSequence
- #endif /* SOMObjectSequence */
- #endif /* SOMTGD_SOMObjectSequence */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
- #ifndef SOMTGD_BooleanSequence
- #ifdef BooleanSequence
- #undef BooleanSequence
- #define SOMTGD_BooleanSequence 1
- #else
- #define BooleanSequence SOMObject_BooleanSequence
- #endif /* BooleanSequence */
- #endif /* SOMTGD_BooleanSequence */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
- #ifndef SOMTGD_somObjectOffset
- #ifdef somObjectOffset
- #undef somObjectOffset
- #define SOMTGD_somObjectOffset 1
- #else
- #define somObjectOffset SOMObject_somObjectOffset
- #endif /* somObjectOffset */
- #endif /* SOMTGD_somObjectOffset */
- #ifndef SOMTGD__IDL_SEQUENCE_somObjectOffset
- #ifdef _IDL_SEQUENCE_somObjectOffset
- #undef _IDL_SEQUENCE_somObjectOffset
- #define SOMTGD__IDL_SEQUENCE_somObjectOffset 1
- #else
- #define _IDL_SEQUENCE_somObjectOffset _IDL_SEQUENCE_SOMObject_somObjectOffset
- #endif /* _IDL_SEQUENCE_somObjectOffset */
- #endif /* SOMTGD__IDL_SEQUENCE_somObjectOffset */
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
- #ifndef SOMTGD_somObjectOffsets
- #ifdef somObjectOffsets
- #undef somObjectOffsets
- #define SOMTGD_somObjectOffsets 1
- #else
- #define somObjectOffsets SOMObject_somObjectOffsets
- #endif /* somObjectOffsets */
- #endif /* SOMTGD_somObjectOffsets */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
-
- /*
- * End of user-defined types.
- */
-
- /* A procedure to create the SOMObject Class */
- SOMEXTERN
- #if (defined(SOM_Module_somobj_Source) || defined(SOMObject_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_SOMObject))
- WIN32_DLLEXPORT
- #else
- WIN32_DLLIMPORT
- #endif
- SOMClass * SOMLINK SOMObjectNewClass(
- integer4,
- integer4 );
-
- /* The API to the SOMObject class object, and the methods it introduces. */
- SOMEXTERN struct SOMObjectClassDataStructure {
- SOMClass *classObject;
- somMToken somInit;
- somMToken somUninit;
- somMToken somFree;
- somMToken somDefaultVCopyInit;
- somMToken somGetClassName;
- somMToken somGetClass;
- somMToken somIsA;
- somMToken somRespondsTo;
- somMToken somIsInstanceOf;
- somMToken somGetSize;
- somMToken somDumpSelf;
- somMToken somDumpSelfInt;
- somMToken somPrintSelf;
- somMToken somDefaultConstVCopyInit;
- somMToken somDispatchV;
- somMToken somDispatchL;
- somMToken somDispatchA;
- somMToken somDispatchD;
- somMToken somDispatch;
- somMToken somClassDispatch;
- somMToken somCastObj;
- somMToken somResetObj;
- somMToken somDefaultInit;
- somMToken somDestruct;
- somMToken somPrivate1;
- somMToken somPrivate2;
- somMToken somDefaultCopyInit;
- somMToken somDefaultConstCopyInit;
- somMToken somDefaultAssign;
- somMToken somDefaultConstAssign;
- somMToken somDefaultVAssign;
- somMToken somDefaultConstVAssign;
- }
- #if !(defined(SOM_Module_somobj_Source) || defined(SOMObject_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_SOMObject))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK SOMObjectClassData;
- #define _SOMObject SOMObjectClassData.classObject
-
- /* The API to parentMtabs for SOMObject, and the instance data it introduces. */
- SOMEXTERN struct SOMObjectCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- }
- #if !(defined(SOM_Module_somobj_Source) || defined(SOMObject_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_SOMObject))
- WIN32_DLLIMPORT
- #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
- WIN32_DLLEXPORT
- #endif
- SOMDLINK SOMObjectCClassData;
-
- /*
- * -- Typedefs for SOMObject Method Procedures
- */
- extern "C" {
- typedef void SOMLINK somTP_SOMObject_somDefaultInit(SOMObject *somSelf,
- somInitCtrl* ctrl);
- typedef somTP_SOMObject_somDefaultInit *somTD_SOMObject_somDefaultInit;
- typedef void SOMLINK somTP_SOMObject_somDestruct(SOMObject *somSelf,
- octet doFree,
- somDestructCtrl* ctrl);
- typedef somTP_SOMObject_somDestruct *somTD_SOMObject_somDestruct;
- typedef void SOMLINK somTP_SOMObject_somDefaultCopyInit(SOMObject *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultCopyInit *somTD_SOMObject_somDefaultCopyInit;
- typedef SOMObject* SOMLINK somTP_SOMObject_somDefaultAssign(SOMObject *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultAssign *somTD_SOMObject_somDefaultAssign;
- typedef void SOMLINK somTP_SOMObject_somDefaultConstCopyInit(SOMObject *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultConstCopyInit *somTD_SOMObject_somDefaultConstCopyInit;
- typedef void SOMLINK somTP_SOMObject_somDefaultVCopyInit(SOMObject *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultVCopyInit *somTD_SOMObject_somDefaultVCopyInit;
- typedef void SOMLINK somTP_SOMObject_somDefaultConstVCopyInit(SOMObject *somSelf,
- somInitCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultConstVCopyInit *somTD_SOMObject_somDefaultConstVCopyInit;
- typedef SOMObject* SOMLINK somTP_SOMObject_somDefaultConstAssign(SOMObject *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultConstAssign *somTD_SOMObject_somDefaultConstAssign;
- typedef SOMObject* SOMLINK somTP_SOMObject_somDefaultVAssign(SOMObject *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultVAssign *somTD_SOMObject_somDefaultVAssign;
- typedef SOMObject* SOMLINK somTP_SOMObject_somDefaultConstVAssign(SOMObject *somSelf,
- somAssignCtrl* ctrl,
- SOMObject* fromObj);
- typedef somTP_SOMObject_somDefaultConstVAssign *somTD_SOMObject_somDefaultConstVAssign;
- typedef void SOMLINK somTP_SOMObject_somInit(SOMObject *somSelf);
- typedef somTP_SOMObject_somInit *somTD_SOMObject_somInit;
- typedef void SOMLINK somTP_SOMObject_somFree(SOMObject *somSelf);
- typedef somTP_SOMObject_somFree *somTD_SOMObject_somFree;
- typedef void SOMLINK somTP_SOMObject_somUninit(SOMObject *somSelf);
- typedef somTP_SOMObject_somUninit *somTD_SOMObject_somUninit;
- typedef SOMClass* SOMLINK somTP_SOMObject_somGetClass(SOMObject *somSelf);
- typedef somTP_SOMObject_somGetClass *somTD_SOMObject_somGetClass;
- typedef string SOMLINK somTP_SOMObject_somGetClassName(SOMObject *somSelf);
- typedef somTP_SOMObject_somGetClassName *somTD_SOMObject_somGetClassName;
- typedef long SOMLINK somTP_SOMObject_somGetSize(SOMObject *somSelf);
- typedef somTP_SOMObject_somGetSize *somTD_SOMObject_somGetSize;
- typedef boolean SOMLINK somTP_SOMObject_somIsA(SOMObject *somSelf,
- SOMClass* aClassObj);
- typedef somTP_SOMObject_somIsA *somTD_SOMObject_somIsA;
- typedef boolean SOMLINK somTP_SOMObject_somIsInstanceOf(SOMObject *somSelf,
- SOMClass* aClassObj);
- typedef somTP_SOMObject_somIsInstanceOf *somTD_SOMObject_somIsInstanceOf;
- typedef boolean SOMLINK somTP_SOMObject_somRespondsTo(SOMObject *somSelf,
- somId mId);
- typedef somTP_SOMObject_somRespondsTo *somTD_SOMObject_somRespondsTo;
- typedef boolean SOMLINK somTP_SOMObject_somDispatch(SOMObject *somSelf,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_SOMObject_somDispatch *somTD_SOMObject_somDispatch;
- typedef boolean SOMLINK somTP_SOMObject_somClassDispatch(SOMObject *somSelf,
- SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap);
- typedef somTP_SOMObject_somClassDispatch *somTD_SOMObject_somClassDispatch;
- typedef boolean SOMLINK somTP_SOMObject_somCastObj(SOMObject *somSelf,
- SOMClass* cls);
- typedef somTP_SOMObject_somCastObj *somTD_SOMObject_somCastObj;
- typedef boolean SOMLINK somTP_SOMObject_somResetObj(SOMObject *somSelf);
- typedef somTP_SOMObject_somResetObj *somTD_SOMObject_somResetObj;
- typedef SOMObject* SOMLINK somTP_SOMObject_somPrintSelf(SOMObject *somSelf);
- typedef somTP_SOMObject_somPrintSelf *somTD_SOMObject_somPrintSelf;
- typedef void SOMLINK somTP_SOMObject_somDumpSelf(SOMObject *somSelf,
- long level);
- typedef somTP_SOMObject_somDumpSelf *somTD_SOMObject_somDumpSelf;
- typedef void SOMLINK somTP_SOMObject_somDumpSelfInt(SOMObject *somSelf,
- long level);
- typedef somTP_SOMObject_somDumpSelfInt *somTD_SOMObject_somDumpSelfInt;
- }
-
- #endif /* SOMObject_API */
-
-
- /*
- * -- This emitter believes that method thunks are unavailable,
- * -- so somResolve will be called.
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) (somResolve(obj,mToken))
- // special somclass api for use in SOMObject.xh
- #include <somcls.api>
-
- /*
- * -- The C++ Wrapper Class for SOMObject
- */
-
- class SOMObject
- {
- public:
-
- // SOMObject::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 (!_SOMObject) SOMObjectNewClass(SOMObject_MajorVersion,SOMObject_MinorVersion);
- return (void*)
- SOM_Resolve(_SOMObject,SOMClass,somNewNoInit)
- ((SOMClass *)((void*)_SOMObject));
- }
-
- // SOMObject::delete uses somDestruct.
- void operator delete(void * obj)
- {
- if (obj && *(void**)obj) {
- SOM_Resolve(obj,SOMObject,somDestruct)
- ((SOMObject*)obj, 1, 0);
- }
- }
-
- SOMObject()
- {
- }
-
- SOMObject(SOMObject* fromObj)
- {
- }
-
- SOMObject(const SOMObject* fromObj)
- {
- }
-
-
- /* initializer method: somDefaultInit */
- void somDefaultInit(somInitCtrl* ctrl)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDefaultInit)
- (this,ctrl);
- }
-
-
- /* method: somDestruct */
- void somDestruct(octet doFree,
- somDestructCtrl* ctrl)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDestruct)
- (this,doFree,ctrl);
- }
-
-
- /* initializer method: somDefaultCopyInit */
- void somDefaultCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDefaultCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultAssign */
- SOMObject* somDefaultAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somDefaultAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstCopyInit */
- void somDefaultConstCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDefaultConstCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultVCopyInit */
- void somDefaultVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDefaultVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* initializer method: somDefaultConstVCopyInit */
- void somDefaultConstVCopyInit(somInitCtrl* ctrl,
- SOMObject* fromObj)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDefaultConstVCopyInit)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstAssign */
- SOMObject* somDefaultConstAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somDefaultConstAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultVAssign */
- SOMObject* somDefaultVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somDefaultVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somDefaultConstVAssign */
- SOMObject* somDefaultConstVAssign(somAssignCtrl* ctrl,
- SOMObject* fromObj)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somDefaultConstVAssign)
- (this,ctrl,fromObj);
- }
-
-
- /* method: somInit */
- void somInit()
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somInit)
- (this);
- }
-
-
- /* method: somFree */
- void somFree()
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somFree)
- (this);
- }
-
-
- /* method: somUninit */
- void somUninit()
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somUninit)
- (this);
- }
-
-
- /* method: somGetClass */
- SOMClass* somGetClass()
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somGetClass)
- (this);
- }
-
-
- /* method: somGetClassName */
- string somGetClassName()
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somGetClassName)
- (this);
- }
-
-
- /* method: somGetSize */
- long somGetSize()
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somGetSize)
- (this);
- }
-
-
- /* method: somIsA */
- boolean somIsA(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somIsA)
- (this,aClassObj);
- }
-
-
- /* method: somIsInstanceOf */
- boolean somIsInstanceOf(SOMClass* aClassObj)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somIsInstanceOf)
- (this,aClassObj);
- }
-
-
- /* method: somRespondsTo */
- boolean somRespondsTo(somId mId)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somRespondsTo)
- (this,mId);
- }
-
-
- /* va_list method: somDispatch */
- /* the va_list invocation form */
- boolean SOMObject_somDispatch(somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,SOMObject,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,SOMObject,SOMObject,somDispatch)
- (this,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* va_list method: somClassDispatch */
- /* the va_list invocation form */
- boolean SOMObject_somClassDispatch(SOMClass* clsObj,
- somToken* retValue,
- somId methodId,
- va_list ap)
- {
- return SOM_ResolveD(this,SOMObject,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,SOMObject,SOMObject,somClassDispatch)
- (this,clsObj,retValue,methodId,ap);
- va_end(ap);
- return __somResult;
- }
-
-
- /* method: somCastObj */
- boolean somCastObj(SOMClass* cls)
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somCastObj)
- (this,cls);
- }
-
-
- /* method: somResetObj */
- boolean somResetObj()
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somResetObj)
- (this);
- }
-
-
- /* method: somPrintSelf */
- SOMObject* somPrintSelf()
- {
- return SOM_ResolveD(this,SOMObject,SOMObject,somPrintSelf)
- (this);
- }
-
-
- /* method: somDumpSelf */
- void somDumpSelf(long level)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDumpSelf)
- (this,level);
- }
-
-
- /* method: somDumpSelfInt */
- void somDumpSelfInt(long level)
- {
- SOM_ResolveD(this,SOMObject,SOMObject,somDumpSelfInt)
- (this,level);
- }
-
-
-
- }; /* SOMObject */
-
-
-
- #endif /* SOM_SOMObject_xh */
-