home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: h:\somnt\include\OM.h.
- * Generated using:
- * SOM Precompiler somipc: Development
- * SOM Emitter emith.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 generic Object Manager.
- *
- * The Object Manager (abstract) class provides a uniform abstraction
- * for various sorts of object managers. Object Request Brokers, persistent
- * storage managers, and OODBMSs are examples of object managers.
- *
- * This is an abstract base class, which defines the "core" interface for
- * an object manager. The basic groups of methods are:
- *
- * - object creation (basic)
- * - object identification & location/activation
- * - object release & destruction
- *
- * If a desired object cannot be mapped into the client's address space, the
- * object manager is responsible for building a local "proxy" for the remote
- * object. The client invokes methods on the proxy, and the proxy should
- * redispatch the requests to the remote object in an appropriate and
- * transparent way.
- *
- * NOTE: Since this is only intended to be an abstract base class, there
- * is no underlying implementation, and ObjectMgr objects should not actually
- * be instantiated.
- *
- */
-
-
- #ifndef SOM_ObjectMgr_h
- #define SOM_ObjectMgr_h
-
-
- #include <som.h>
-
- /*
- * -- This emitter treats Method Tokens as Thunks by default.
- * -- Use the sc modifier "nothunks" to change this default
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * Define the class name as an object type
- */
- #ifndef ObjectMgr
- #define ObjectMgr SOMObject
- #endif
- #include <somobj.h>
-
- /*
- * Start of user-defined types:
- */
- #ifndef SOMClass
- #define SOMClass SOMObject
- #endif /* SOMClass */
- #ifndef Container
- #define Container SOMObject
- #endif /* Container */
-
- /*
- * End of user-defined types.
- */
-
- #define ObjectMgr_MajorVersion 2
- #define ObjectMgr_MinorVersion 1
-
- /*
- * External name shortening if required
- */
- #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
- #define ObjectMgrNewClass c
- #define ObjectMgrClassData d
- #define ObjectMgrCClassData x
- #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
-
- /*
- * Include the meta class file
- */
- #include <snglicls.h>
- /*--------------Migration------------*/
- #define ObjectMgr_classObj ObjectMgrClassData.classObject
- #define _ObjectMgr ObjectMgr_classObj
-
- /*
- * Declare the class creation procedure
- */
- SOMEXTERN
- #if (defined(SOM_Module_OM_Source) || defined(ObjectMgr_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_ObjectMgr))
- WIN32_DLLEXPORT
- #else
- WIN32_DLLIMPORT
- #endif
- SOMClass * SOMLINK ObjectMgrNewClass(integer4 somntmajorVersion,
- integer4 somntminorVersion);
-
- /*
- * Declare the class data structure
- */
- SOMEXTERN struct ObjectMgrClassDataStructure {
- SOMClass *classObject;
- somMToken somdNewObject;
- somMToken somdGetIdFromObject;
- somMToken somdGetObjectFromId;
- somMToken somdReleaseObject;
- somMToken somdDestroyObject;
- #if (defined(SOM_Module_OM_Source) || defined(ObjectMgr_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_ObjectMgr))
- } WIN32_DLLEXPORT SOMDLINK ObjectMgrClassData;
- #else
- } WIN32_DLLIMPORT SOMDLINK ObjectMgrClassData;
- #endif
-
- /*
- * Declare the C specific class data structure
- */
- SOMEXTERN struct ObjectMgrCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- #if (defined(SOM_Module_OM_Source) || defined(ObjectMgr_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_ObjectMgr))
- } WIN32_DLLEXPORT SOMDLINK ObjectMgrCClassData;
- #else
- } WIN32_DLLIMPORT SOMDLINK ObjectMgrCClassData;
- #endif
-
- /*
- * New and Renew macros for ObjectMgr
- */
- #define ObjectMgrNew() \
- (_somNew(_ObjectMgr ? _ObjectMgr : ObjectMgrNewClass(ObjectMgr_MajorVersion, ObjectMgr_MinorVersion)))
- #define ObjectMgrRenew(buf) \
- (_somRenew(_ObjectMgr ? _ObjectMgr : ObjectMgrNewClass(ObjectMgr_MajorVersion, ObjectMgr_MinorVersion), buf))
-
- /*
- * New Method: somdNewObject
- */
- typedef SOMObject* SOMLINK somTP_ObjectMgr_somdNewObject(ObjectMgr *somSelf, Environment *ev,
- Identifier objclass,
- string hints);
- typedef somTP_ObjectMgr_somdNewObject *somTD_ObjectMgr_somdNewObject;
- #define somMD_ObjectMgr_somdNewObject "::ObjectMgr::somdNewObject"
- #define ObjectMgr_somdNewObject(somSelf,ev,objclass,hints) \
- (SOM_Resolve(somSelf, ObjectMgr, somdNewObject) \
- (somSelf,ev,objclass,hints))
- #ifndef SOMGD_somdNewObject
- #if (defined(_somdNewObject) || defined(__somdNewObject))
- #undef _somdNewObject
- #undef __somdNewObject
- #define SOMGD_somdNewObject 1
- #else
- #define _somdNewObject ObjectMgr_somdNewObject
- #endif /* _somdNewObject */
- #endif /* SOMGD_somdNewObject */
-
- /*
- * New Method: somdGetIdFromObject
- */
- typedef string SOMLINK somTP_ObjectMgr_somdGetIdFromObject(ObjectMgr *somSelf, Environment *ev,
- SOMObject* obj);
- typedef somTP_ObjectMgr_somdGetIdFromObject *somTD_ObjectMgr_somdGetIdFromObject;
- #define somMD_ObjectMgr_somdGetIdFromObject "::ObjectMgr::somdGetIdFromObject"
- #define ObjectMgr_somdGetIdFromObject(somSelf,ev,obj) \
- (SOM_Resolve(somSelf, ObjectMgr, somdGetIdFromObject) \
- (somSelf,ev,obj))
- #ifndef SOMGD_somdGetIdFromObject
- #if (defined(_somdGetIdFromObject) || defined(__somdGetIdFromObject))
- #undef _somdGetIdFromObject
- #undef __somdGetIdFromObject
- #define SOMGD_somdGetIdFromObject 1
- #else
- #define _somdGetIdFromObject ObjectMgr_somdGetIdFromObject
- #endif /* _somdGetIdFromObject */
- #endif /* SOMGD_somdGetIdFromObject */
-
- /*
- * New Method: somdGetObjectFromId
- */
- typedef SOMObject* SOMLINK somTP_ObjectMgr_somdGetObjectFromId(ObjectMgr *somSelf, Environment *ev,
- string id);
- typedef somTP_ObjectMgr_somdGetObjectFromId *somTD_ObjectMgr_somdGetObjectFromId;
- #define somMD_ObjectMgr_somdGetObjectFromId "::ObjectMgr::somdGetObjectFromId"
- #define ObjectMgr_somdGetObjectFromId(somSelf,ev,id) \
- (SOM_Resolve(somSelf, ObjectMgr, somdGetObjectFromId) \
- (somSelf,ev,id))
- #ifndef SOMGD_somdGetObjectFromId
- #if (defined(_somdGetObjectFromId) || defined(__somdGetObjectFromId))
- #undef _somdGetObjectFromId
- #undef __somdGetObjectFromId
- #define SOMGD_somdGetObjectFromId 1
- #else
- #define _somdGetObjectFromId ObjectMgr_somdGetObjectFromId
- #endif /* _somdGetObjectFromId */
- #endif /* SOMGD_somdGetObjectFromId */
-
- /*
- * New Method: somdReleaseObject
- */
- typedef void SOMLINK somTP_ObjectMgr_somdReleaseObject(ObjectMgr *somSelf, Environment *ev,
- SOMObject* obj);
- typedef somTP_ObjectMgr_somdReleaseObject *somTD_ObjectMgr_somdReleaseObject;
- #define somMD_ObjectMgr_somdReleaseObject "::ObjectMgr::somdReleaseObject"
- #define ObjectMgr_somdReleaseObject(somSelf,ev,obj) \
- (SOM_Resolve(somSelf, ObjectMgr, somdReleaseObject) \
- (somSelf,ev,obj))
- #ifndef SOMGD_somdReleaseObject
- #if (defined(_somdReleaseObject) || defined(__somdReleaseObject))
- #undef _somdReleaseObject
- #undef __somdReleaseObject
- #define SOMGD_somdReleaseObject 1
- #else
- #define _somdReleaseObject ObjectMgr_somdReleaseObject
- #endif /* _somdReleaseObject */
- #endif /* SOMGD_somdReleaseObject */
-
- /*
- * New Method: somdDestroyObject
- */
- typedef void SOMLINK somTP_ObjectMgr_somdDestroyObject(ObjectMgr *somSelf, Environment *ev,
- SOMObject* obj);
- typedef somTP_ObjectMgr_somdDestroyObject *somTD_ObjectMgr_somdDestroyObject;
- #define somMD_ObjectMgr_somdDestroyObject "::ObjectMgr::somdDestroyObject"
- #define ObjectMgr_somdDestroyObject(somSelf,ev,obj) \
- (SOM_Resolve(somSelf, ObjectMgr, somdDestroyObject) \
- (somSelf,ev,obj))
- #ifndef SOMGD_somdDestroyObject
- #if (defined(_somdDestroyObject) || defined(__somdDestroyObject))
- #undef _somdDestroyObject
- #undef __somdDestroyObject
- #define SOMGD_somdDestroyObject 1
- #else
- #define _somdDestroyObject ObjectMgr_somdDestroyObject
- #endif /* _somdDestroyObject */
- #endif /* SOMGD_somdDestroyObject */
- #ifndef SOM_DONT_USE_INHERITED_MACROS
- #define ObjectMgr_somDefaultInit SOMObject_somDefaultInit
- #define ObjectMgr_somDestruct SOMObject_somDestruct
- #define ObjectMgr_somDefaultCopyInit SOMObject_somDefaultCopyInit
- #define ObjectMgr_somDefaultAssign SOMObject_somDefaultAssign
- #define ObjectMgr_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
- #define ObjectMgr_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
- #define ObjectMgr_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
- #define ObjectMgr_somDefaultConstAssign SOMObject_somDefaultConstAssign
- #define ObjectMgr_somDefaultVAssign SOMObject_somDefaultVAssign
- #define ObjectMgr_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
- #define ObjectMgr_somInit SOMObject_somInit
- #define ObjectMgr_somFree SOMObject_somFree
- #define ObjectMgr_somUninit SOMObject_somUninit
- #define ObjectMgr_somGetClass SOMObject_somGetClass
- #define ObjectMgr_somGetClassName SOMObject_somGetClassName
- #define ObjectMgr_somGetSize SOMObject_somGetSize
- #define ObjectMgr_somIsA SOMObject_somIsA
- #define ObjectMgr_somIsInstanceOf SOMObject_somIsInstanceOf
- #define ObjectMgr_somRespondsTo SOMObject_somRespondsTo
- #define ObjectMgr_somDispatch SOMObject_somDispatch
- #define ObjectMgr_somClassDispatch SOMObject_somClassDispatch
- #define ObjectMgr_somCastObj SOMObject_somCastObj
- #define ObjectMgr_somResetObj SOMObject_somResetObj
- #define ObjectMgr_somPrintSelf SOMObject_somPrintSelf
- #define ObjectMgr_somDumpSelf SOMObject_somDumpSelf
- #define ObjectMgr_somDumpSelfInt SOMObject_somDumpSelfInt
- #endif /* SOM_DONT_USE_INHERITED_MACROS */
-
- #endif /* SOM_ObjectMgr_h */
-