
/*
 * This file was generated by the SOM Compiler.
 * FileName: \odwin\h\ODSESSNB.h.
 * Generated using:
 *     SOM Precompiler somipc: 2.29.1.3
 *     SOM Emitter emith.dll: 2.41
 */

/*
 * 
 *  Classes defined in this interface
 * 
 */


#ifndef SOM_ODBaseSession_h
#define SOM_ODBaseSession_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 class data structures as resolution macros
 */
#define ODBaseSessionClassData (*resolve_ODBaseSessionClassData())
#define ODBaseSessionCClassData (*resolve_ODBaseSessionCClassData())

/*
 * Define the class name as an object type
 */
#ifndef ODBaseSession
#define ODBaseSession SOMObject
#endif
#include <ODObject.h>

/*
 * Start of user-defined types:
 */
#ifndef SOMClass
    #define SOMClass SOMObject
#endif /* SOMClass */
#ifndef ODObject
    #define ODObject SOMObject
#endif /* ODObject */
#ifndef ODExtension
    #define ODExtension SOMObject
#endif /* ODExtension */
#ifndef ODBaseSession
    #define ODBaseSession SOMObject
#endif /* ODBaseSession */
#ifndef ODWindowState
    #define ODWindowState SOMObject
#endif /* ODWindowState */
#ifndef ODDispatcher
    #define ODDispatcher SOMObject
#endif /* ODDispatcher */
#ifndef ODArbitrator
    #define ODArbitrator SOMObject
#endif /* ODArbitrator */
#ifndef ODStorageSystem
    #define ODStorageSystem SOMObject
#endif /* ODStorageSystem */
#ifndef ODClipboard
    #define ODClipboard SOMObject
#endif /* ODClipboard */
#ifndef ODDragAndDrop
    #define ODDragAndDrop SOMObject
#endif /* ODDragAndDrop */
#ifndef ODLinkManager
    #define ODLinkManager SOMObject
#endif /* ODLinkManager */
#ifndef ODNameSpaceManager
    #define ODNameSpaceManager SOMObject
#endif /* ODNameSpaceManager */
#ifndef ODMessageInterface
    #define ODMessageInterface SOMObject
#endif /* ODMessageInterface */
#ifndef ODNameResolver
    #define ODNameResolver SOMObject
#endif /* ODNameResolver */
#ifndef ODTranslation
    #define ODTranslation SOMObject
#endif /* ODTranslation */
#ifndef ODUndo
    #define ODUndo SOMObject
#endif /* ODUndo */
#ifndef ODSemanticInterface
    #define ODSemanticInterface SOMObject
#endif /* ODSemanticInterface */
#ifndef ODPersistentObject
    #define ODPersistentObject SOMObject
#endif /* ODPersistentObject */
#ifndef ODBinding
    #define ODBinding SOMObject
#endif /* ODBinding */
#ifndef ODInfo
    #define ODInfo SOMObject
#endif /* ODInfo */
#ifndef ODToolSpaceManager
    #define ODToolSpaceManager SOMObject
#endif /* ODToolSpaceManager */

/*
 * End of user-defined types.
 */

#define ODBaseSession_MajorVersion 0
#define ODBaseSession_MinorVersion 0

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define ODBaseSessionNewClass c
#define ODBaseSessionClassData d
#define ODBaseSessionCClassData x
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define ODBaseSession_classObj ODBaseSessionClassData.classObject
#define _ODBaseSession ODBaseSession_classObj

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOMClass * SOMLINK ODBaseSessionNewClass(integer4 somntmajorVersion,
		integer4 somntminorVersion);

/*
 * Declare the class data structure
 */
SOMEXTERN struct ODBaseSessionClassDataStructure {
	SOMClass *classObject;
	somMToken GetArbitrator;
	somMToken GetBinding;
	somMToken GetClipboard;
	somMToken GetDispatcher;
	somMToken GetDragAndDrop;
	somMToken GetInfo;
	somMToken GetLinkManager;
	somMToken GetMessageInterface;
	somMToken GetNameResolver;
	somMToken GetNameSpaceManager;
	somMToken GetStorageSystem;
	somMToken GetTranslation;
	somMToken GetUndo;
	somMToken GetWindowState;
	somMToken SetArbitrator;
	somMToken SetBinding;
	somMToken SetClipboard;
	somMToken SetDispatcher;
	somMToken SetDragAndDrop;
	somMToken SetInfo;
	somMToken SetLinkManager;
	somMToken SetMessageInterface;
	somMToken SetNameResolver;
	somMToken SetNameSpaceManager;
	somMToken SetStorageSystem;
	somMToken SetTranslation;
	somMToken SetUndo;
	somMToken SetWindowState;
	somMToken GetShellSemtInterface;
	somMToken SetShellSemtInterface;
	somMToken Tokenize;
	somMToken RemoveEntry;
	somMToken GetType;
	somMToken InitBaseSession;
	somMToken GetTokenTable;
	somMToken SetTokenTable;
	somMToken GetScriptingObject;
	somMToken GetToolSpaceManager;
}  _ODBaseSessionClassData;
SOMEXTERN struct ODBaseSessionClassDataStructure * SOMLINK resolve_ODBaseSessionClassData(void);

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct ODBaseSessionCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
}  _ODBaseSessionCClassData;
SOMEXTERN struct ODBaseSessionCClassDataStructure * SOMLINK resolve_ODBaseSessionCClassData(void);

/*
 * New and Renew macros for ODBaseSession
 */
#define ODBaseSessionNew() \
   (_somNew(_ODBaseSession ? _ODBaseSession : ODBaseSessionNewClass(ODBaseSession_MajorVersion, ODBaseSession_MinorVersion)))
#define ODBaseSessionRenew(buf) \
   (_somRenew(_ODBaseSession ? _ODBaseSession : ODBaseSessionNewClass(ODBaseSession_MajorVersion, ODBaseSession_MinorVersion), buf))

/*
 * Override method: somInit
 */
#define ODBaseSession_somInit(somSelf) \
	SOMObject_somInit(somSelf)

/*
 * Override method: somUninit
 */
#define ODBaseSession_somUninit(somSelf) \
	SOMObject_somUninit(somSelf)

/*
 * Override method: Purge
 */
#define ODBaseSession_Purge(somSelf,ev,size) \
	ODObject_Purge(somSelf,ev,size)

/*
 * New Method: GetArbitrator
 */
typedef ODArbitrator*   (SOMLINK * somTD_ODBaseSession_GetArbitrator)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetArbitrator "::ODBaseSession::GetArbitrator"
#define ODBaseSession_GetArbitrator(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetArbitrator) \
	(somSelf,ev))
#ifndef SOMGD_GetArbitrator
    #if (defined(_GetArbitrator) || defined(__GetArbitrator))
        #undef _GetArbitrator
        #undef __GetArbitrator
        #define SOMGD_GetArbitrator 1
    #else
        #define _GetArbitrator ODBaseSession_GetArbitrator
    #endif /* _GetArbitrator */
#endif /* SOMGD_GetArbitrator */

/*
 * New Method: SetArbitrator
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetArbitrator)(ODBaseSession *somSelf, Environment *ev,
		ODArbitrator* arbitrator);
#define somMD_ODBaseSession_SetArbitrator "::ODBaseSession::SetArbitrator"
#define ODBaseSession_SetArbitrator(somSelf,ev,arbitrator) \
    (SOM_Resolve(somSelf, ODBaseSession, SetArbitrator) \
	(somSelf,ev,arbitrator))
#ifndef SOMGD_SetArbitrator
    #if (defined(_SetArbitrator) || defined(__SetArbitrator))
        #undef _SetArbitrator
        #undef __SetArbitrator
        #define SOMGD_SetArbitrator 1
    #else
        #define _SetArbitrator ODBaseSession_SetArbitrator
    #endif /* _SetArbitrator */
#endif /* SOMGD_SetArbitrator */

/*
 * New Method: GetBinding
 */
typedef ODBinding*   (SOMLINK * somTD_ODBaseSession_GetBinding)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetBinding "::ODBaseSession::GetBinding"
#define ODBaseSession_GetBinding(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetBinding) \
	(somSelf,ev))
#ifndef SOMGD_GetBinding
    #if (defined(_GetBinding) || defined(__GetBinding))
        #undef _GetBinding
        #undef __GetBinding
        #define SOMGD_GetBinding 1
    #else
        #define _GetBinding ODBaseSession_GetBinding
    #endif /* _GetBinding */
#endif /* SOMGD_GetBinding */

/*
 * New Method: SetBinding
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetBinding)(ODBaseSession *somSelf, Environment *ev,
		ODBinding* binding);
#define somMD_ODBaseSession_SetBinding "::ODBaseSession::SetBinding"
#define ODBaseSession_SetBinding(somSelf,ev,binding) \
    (SOM_Resolve(somSelf, ODBaseSession, SetBinding) \
	(somSelf,ev,binding))
#ifndef SOMGD_SetBinding
    #if (defined(_SetBinding) || defined(__SetBinding))
        #undef _SetBinding
        #undef __SetBinding
        #define SOMGD_SetBinding 1
    #else
        #define _SetBinding ODBaseSession_SetBinding
    #endif /* _SetBinding */
#endif /* SOMGD_SetBinding */

/*
 * New Method: GetDispatcher
 */
typedef ODDispatcher*   (SOMLINK * somTD_ODBaseSession_GetDispatcher)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetDispatcher "::ODBaseSession::GetDispatcher"
#define ODBaseSession_GetDispatcher(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetDispatcher) \
	(somSelf,ev))
#ifndef SOMGD_GetDispatcher
    #if (defined(_GetDispatcher) || defined(__GetDispatcher))
        #undef _GetDispatcher
        #undef __GetDispatcher
        #define SOMGD_GetDispatcher 1
    #else
        #define _GetDispatcher ODBaseSession_GetDispatcher
    #endif /* _GetDispatcher */
#endif /* SOMGD_GetDispatcher */

/*
 * New Method: SetDispatcher
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetDispatcher)(ODBaseSession *somSelf, Environment *ev,
		ODDispatcher* dispatcher);
#define somMD_ODBaseSession_SetDispatcher "::ODBaseSession::SetDispatcher"
#define ODBaseSession_SetDispatcher(somSelf,ev,dispatcher) \
    (SOM_Resolve(somSelf, ODBaseSession, SetDispatcher) \
	(somSelf,ev,dispatcher))
#ifndef SOMGD_SetDispatcher
    #if (defined(_SetDispatcher) || defined(__SetDispatcher))
        #undef _SetDispatcher
        #undef __SetDispatcher
        #define SOMGD_SetDispatcher 1
    #else
        #define _SetDispatcher ODBaseSession_SetDispatcher
    #endif /* _SetDispatcher */
#endif /* SOMGD_SetDispatcher */

/*
 * New Method: GetClipboard
 */
typedef ODClipboard*   (SOMLINK * somTD_ODBaseSession_GetClipboard)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetClipboard "::ODBaseSession::GetClipboard"
#define ODBaseSession_GetClipboard(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetClipboard) \
	(somSelf,ev))
#ifndef SOMGD_GetClipboard
    #if (defined(_GetClipboard) || defined(__GetClipboard))
        #undef _GetClipboard
        #undef __GetClipboard
        #define SOMGD_GetClipboard 1
    #else
        #define _GetClipboard ODBaseSession_GetClipboard
    #endif /* _GetClipboard */
#endif /* SOMGD_GetClipboard */

/*
 * New Method: SetClipboard
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetClipboard)(ODBaseSession *somSelf, Environment *ev,
		ODClipboard* clipboard);
#define somMD_ODBaseSession_SetClipboard "::ODBaseSession::SetClipboard"
#define ODBaseSession_SetClipboard(somSelf,ev,clipboard) \
    (SOM_Resolve(somSelf, ODBaseSession, SetClipboard) \
	(somSelf,ev,clipboard))
#ifndef SOMGD_SetClipboard
    #if (defined(_SetClipboard) || defined(__SetClipboard))
        #undef _SetClipboard
        #undef __SetClipboard
        #define SOMGD_SetClipboard 1
    #else
        #define _SetClipboard ODBaseSession_SetClipboard
    #endif /* _SetClipboard */
#endif /* SOMGD_SetClipboard */

/*
 * New Method: GetDragAndDrop
 */
typedef ODDragAndDrop*   (SOMLINK * somTD_ODBaseSession_GetDragAndDrop)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetDragAndDrop "::ODBaseSession::GetDragAndDrop"
#define ODBaseSession_GetDragAndDrop(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetDragAndDrop) \
	(somSelf,ev))
#ifndef SOMGD_GetDragAndDrop
    #if (defined(_GetDragAndDrop) || defined(__GetDragAndDrop))
        #undef _GetDragAndDrop
        #undef __GetDragAndDrop
        #define SOMGD_GetDragAndDrop 1
    #else
        #define _GetDragAndDrop ODBaseSession_GetDragAndDrop
    #endif /* _GetDragAndDrop */
#endif /* SOMGD_GetDragAndDrop */

/*
 * New Method: SetDragAndDrop
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetDragAndDrop)(ODBaseSession *somSelf, Environment *ev,
		ODDragAndDrop* dragAndDrop);
#define somMD_ODBaseSession_SetDragAndDrop "::ODBaseSession::SetDragAndDrop"
#define ODBaseSession_SetDragAndDrop(somSelf,ev,dragAndDrop) \
    (SOM_Resolve(somSelf, ODBaseSession, SetDragAndDrop) \
	(somSelf,ev,dragAndDrop))
#ifndef SOMGD_SetDragAndDrop
    #if (defined(_SetDragAndDrop) || defined(__SetDragAndDrop))
        #undef _SetDragAndDrop
        #undef __SetDragAndDrop
        #define SOMGD_SetDragAndDrop 1
    #else
        #define _SetDragAndDrop ODBaseSession_SetDragAndDrop
    #endif /* _SetDragAndDrop */
#endif /* SOMGD_SetDragAndDrop */

/*
 * New Method: GetInfo
 */
typedef ODInfo*   (SOMLINK * somTD_ODBaseSession_GetInfo)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetInfo "::ODBaseSession::GetInfo"
#define ODBaseSession_GetInfo(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetInfo) \
	(somSelf,ev))
#ifndef SOMGD_GetInfo
    #if (defined(_GetInfo) || defined(__GetInfo))
        #undef _GetInfo
        #undef __GetInfo
        #define SOMGD_GetInfo 1
    #else
        #define _GetInfo ODBaseSession_GetInfo
    #endif /* _GetInfo */
#endif /* SOMGD_GetInfo */

/*
 * New Method: SetInfo
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetInfo)(ODBaseSession *somSelf, Environment *ev,
		ODInfo* info);
#define somMD_ODBaseSession_SetInfo "::ODBaseSession::SetInfo"
#define ODBaseSession_SetInfo(somSelf,ev,info) \
    (SOM_Resolve(somSelf, ODBaseSession, SetInfo) \
	(somSelf,ev,info))
#ifndef SOMGD_SetInfo
    #if (defined(_SetInfo) || defined(__SetInfo))
        #undef _SetInfo
        #undef __SetInfo
        #define SOMGD_SetInfo 1
    #else
        #define _SetInfo ODBaseSession_SetInfo
    #endif /* _SetInfo */
#endif /* SOMGD_SetInfo */

/*
 * New Method: GetLinkManager
 */
typedef ODLinkManager*   (SOMLINK * somTD_ODBaseSession_GetLinkManager)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetLinkManager "::ODBaseSession::GetLinkManager"
#define ODBaseSession_GetLinkManager(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetLinkManager) \
	(somSelf,ev))
#ifndef SOMGD_GetLinkManager
    #if (defined(_GetLinkManager) || defined(__GetLinkManager))
        #undef _GetLinkManager
        #undef __GetLinkManager
        #define SOMGD_GetLinkManager 1
    #else
        #define _GetLinkManager ODBaseSession_GetLinkManager
    #endif /* _GetLinkManager */
#endif /* SOMGD_GetLinkManager */

/*
 * New Method: SetLinkManager
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetLinkManager)(ODBaseSession *somSelf, Environment *ev,
		ODLinkManager* linkManager);
#define somMD_ODBaseSession_SetLinkManager "::ODBaseSession::SetLinkManager"
#define ODBaseSession_SetLinkManager(somSelf,ev,linkManager) \
    (SOM_Resolve(somSelf, ODBaseSession, SetLinkManager) \
	(somSelf,ev,linkManager))
#ifndef SOMGD_SetLinkManager
    #if (defined(_SetLinkManager) || defined(__SetLinkManager))
        #undef _SetLinkManager
        #undef __SetLinkManager
        #define SOMGD_SetLinkManager 1
    #else
        #define _SetLinkManager ODBaseSession_SetLinkManager
    #endif /* _SetLinkManager */
#endif /* SOMGD_SetLinkManager */

/*
 * New Method: GetMessageInterface
 */
typedef ODMessageInterface*   (SOMLINK * somTD_ODBaseSession_GetMessageInterface)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetMessageInterface "::ODBaseSession::GetMessageInterface"
#define ODBaseSession_GetMessageInterface(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetMessageInterface) \
	(somSelf,ev))
#ifndef SOMGD_GetMessageInterface
    #if (defined(_GetMessageInterface) || defined(__GetMessageInterface))
        #undef _GetMessageInterface
        #undef __GetMessageInterface
        #define SOMGD_GetMessageInterface 1
    #else
        #define _GetMessageInterface ODBaseSession_GetMessageInterface
    #endif /* _GetMessageInterface */
#endif /* SOMGD_GetMessageInterface */

/*
 * New Method: SetMessageInterface
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetMessageInterface)(ODBaseSession *somSelf, Environment *ev,
		ODMessageInterface* messageInterface);
#define somMD_ODBaseSession_SetMessageInterface "::ODBaseSession::SetMessageInterface"
#define ODBaseSession_SetMessageInterface(somSelf,ev,messageInterface) \
    (SOM_Resolve(somSelf, ODBaseSession, SetMessageInterface) \
	(somSelf,ev,messageInterface))
#ifndef SOMGD_SetMessageInterface
    #if (defined(_SetMessageInterface) || defined(__SetMessageInterface))
        #undef _SetMessageInterface
        #undef __SetMessageInterface
        #define SOMGD_SetMessageInterface 1
    #else
        #define _SetMessageInterface ODBaseSession_SetMessageInterface
    #endif /* _SetMessageInterface */
#endif /* SOMGD_SetMessageInterface */

/*
 * New Method: GetNameResolver
 */
typedef ODNameResolver*   (SOMLINK * somTD_ODBaseSession_GetNameResolver)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetNameResolver "::ODBaseSession::GetNameResolver"
#define ODBaseSession_GetNameResolver(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetNameResolver) \
	(somSelf,ev))
#ifndef SOMGD_GetNameResolver
    #if (defined(_GetNameResolver) || defined(__GetNameResolver))
        #undef _GetNameResolver
        #undef __GetNameResolver
        #define SOMGD_GetNameResolver 1
    #else
        #define _GetNameResolver ODBaseSession_GetNameResolver
    #endif /* _GetNameResolver */
#endif /* SOMGD_GetNameResolver */

/*
 * New Method: SetNameResolver
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetNameResolver)(ODBaseSession *somSelf, Environment *ev,
		ODNameResolver* nameResolver);
#define somMD_ODBaseSession_SetNameResolver "::ODBaseSession::SetNameResolver"
#define ODBaseSession_SetNameResolver(somSelf,ev,nameResolver) \
    (SOM_Resolve(somSelf, ODBaseSession, SetNameResolver) \
	(somSelf,ev,nameResolver))
#ifndef SOMGD_SetNameResolver
    #if (defined(_SetNameResolver) || defined(__SetNameResolver))
        #undef _SetNameResolver
        #undef __SetNameResolver
        #define SOMGD_SetNameResolver 1
    #else
        #define _SetNameResolver ODBaseSession_SetNameResolver
    #endif /* _SetNameResolver */
#endif /* SOMGD_SetNameResolver */

/*
 * New Method: GetNameSpaceManager
 */
typedef ODNameSpaceManager*   (SOMLINK * somTD_ODBaseSession_GetNameSpaceManager)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetNameSpaceManager "::ODBaseSession::GetNameSpaceManager"
#define ODBaseSession_GetNameSpaceManager(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetNameSpaceManager) \
	(somSelf,ev))
#ifndef SOMGD_GetNameSpaceManager
    #if (defined(_GetNameSpaceManager) || defined(__GetNameSpaceManager))
        #undef _GetNameSpaceManager
        #undef __GetNameSpaceManager
        #define SOMGD_GetNameSpaceManager 1
    #else
        #define _GetNameSpaceManager ODBaseSession_GetNameSpaceManager
    #endif /* _GetNameSpaceManager */
#endif /* SOMGD_GetNameSpaceManager */

/*
 * New Method: SetNameSpaceManager
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetNameSpaceManager)(ODBaseSession *somSelf, Environment *ev,
		ODNameSpaceManager* nameSpaceManager);
#define somMD_ODBaseSession_SetNameSpaceManager "::ODBaseSession::SetNameSpaceManager"
#define ODBaseSession_SetNameSpaceManager(somSelf,ev,nameSpaceManager) \
    (SOM_Resolve(somSelf, ODBaseSession, SetNameSpaceManager) \
	(somSelf,ev,nameSpaceManager))
#ifndef SOMGD_SetNameSpaceManager
    #if (defined(_SetNameSpaceManager) || defined(__SetNameSpaceManager))
        #undef _SetNameSpaceManager
        #undef __SetNameSpaceManager
        #define SOMGD_SetNameSpaceManager 1
    #else
        #define _SetNameSpaceManager ODBaseSession_SetNameSpaceManager
    #endif /* _SetNameSpaceManager */
#endif /* SOMGD_SetNameSpaceManager */

/*
 * New Method: GetStorageSystem
 */
typedef ODStorageSystem*   (SOMLINK * somTD_ODBaseSession_GetStorageSystem)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetStorageSystem "::ODBaseSession::GetStorageSystem"
#define ODBaseSession_GetStorageSystem(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetStorageSystem) \
	(somSelf,ev))
#ifndef SOMGD_GetStorageSystem
    #if (defined(_GetStorageSystem) || defined(__GetStorageSystem))
        #undef _GetStorageSystem
        #undef __GetStorageSystem
        #define SOMGD_GetStorageSystem 1
    #else
        #define _GetStorageSystem ODBaseSession_GetStorageSystem
    #endif /* _GetStorageSystem */
#endif /* SOMGD_GetStorageSystem */

/*
 * New Method: SetStorageSystem
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetStorageSystem)(ODBaseSession *somSelf, Environment *ev,
		ODStorageSystem* storageSystem);
#define somMD_ODBaseSession_SetStorageSystem "::ODBaseSession::SetStorageSystem"
#define ODBaseSession_SetStorageSystem(somSelf,ev,storageSystem) \
    (SOM_Resolve(somSelf, ODBaseSession, SetStorageSystem) \
	(somSelf,ev,storageSystem))
#ifndef SOMGD_SetStorageSystem
    #if (defined(_SetStorageSystem) || defined(__SetStorageSystem))
        #undef _SetStorageSystem
        #undef __SetStorageSystem
        #define SOMGD_SetStorageSystem 1
    #else
        #define _SetStorageSystem ODBaseSession_SetStorageSystem
    #endif /* _SetStorageSystem */
#endif /* SOMGD_SetStorageSystem */

/*
 * New Method: GetTranslation
 */
typedef ODTranslation*   (SOMLINK * somTD_ODBaseSession_GetTranslation)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetTranslation "::ODBaseSession::GetTranslation"
#define ODBaseSession_GetTranslation(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetTranslation) \
	(somSelf,ev))
#ifndef SOMGD_GetTranslation
    #if (defined(_GetTranslation) || defined(__GetTranslation))
        #undef _GetTranslation
        #undef __GetTranslation
        #define SOMGD_GetTranslation 1
    #else
        #define _GetTranslation ODBaseSession_GetTranslation
    #endif /* _GetTranslation */
#endif /* SOMGD_GetTranslation */

/*
 * New Method: SetTranslation
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetTranslation)(ODBaseSession *somSelf, Environment *ev,
		ODTranslation* translation);
#define somMD_ODBaseSession_SetTranslation "::ODBaseSession::SetTranslation"
#define ODBaseSession_SetTranslation(somSelf,ev,translation) \
    (SOM_Resolve(somSelf, ODBaseSession, SetTranslation) \
	(somSelf,ev,translation))
#ifndef SOMGD_SetTranslation
    #if (defined(_SetTranslation) || defined(__SetTranslation))
        #undef _SetTranslation
        #undef __SetTranslation
        #define SOMGD_SetTranslation 1
    #else
        #define _SetTranslation ODBaseSession_SetTranslation
    #endif /* _SetTranslation */
#endif /* SOMGD_SetTranslation */

/*
 * New Method: GetUndo
 */
typedef ODUndo*   (SOMLINK * somTD_ODBaseSession_GetUndo)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetUndo "::ODBaseSession::GetUndo"
#define ODBaseSession_GetUndo(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetUndo) \
	(somSelf,ev))
#ifndef SOMGD_GetUndo
    #if (defined(_GetUndo) || defined(__GetUndo))
        #undef _GetUndo
        #undef __GetUndo
        #define SOMGD_GetUndo 1
    #else
        #define _GetUndo ODBaseSession_GetUndo
    #endif /* _GetUndo */
#endif /* SOMGD_GetUndo */

/*
 * New Method: SetUndo
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetUndo)(ODBaseSession *somSelf, Environment *ev,
		ODUndo* undo);
#define somMD_ODBaseSession_SetUndo "::ODBaseSession::SetUndo"
#define ODBaseSession_SetUndo(somSelf,ev,undo) \
    (SOM_Resolve(somSelf, ODBaseSession, SetUndo) \
	(somSelf,ev,undo))
#ifndef SOMGD_SetUndo
    #if (defined(_SetUndo) || defined(__SetUndo))
        #undef _SetUndo
        #undef __SetUndo
        #define SOMGD_SetUndo 1
    #else
        #define _SetUndo ODBaseSession_SetUndo
    #endif /* _SetUndo */
#endif /* SOMGD_SetUndo */

/*
 * New Method: GetWindowState
 */
typedef ODWindowState*   (SOMLINK * somTD_ODBaseSession_GetWindowState)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetWindowState "::ODBaseSession::GetWindowState"
#define ODBaseSession_GetWindowState(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetWindowState) \
	(somSelf,ev))
#ifndef SOMGD_GetWindowState
    #if (defined(_GetWindowState) || defined(__GetWindowState))
        #undef _GetWindowState
        #undef __GetWindowState
        #define SOMGD_GetWindowState 1
    #else
        #define _GetWindowState ODBaseSession_GetWindowState
    #endif /* _GetWindowState */
#endif /* SOMGD_GetWindowState */

/*
 * New Method: SetWindowState
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetWindowState)(ODBaseSession *somSelf, Environment *ev,
		ODWindowState* windowState);
#define somMD_ODBaseSession_SetWindowState "::ODBaseSession::SetWindowState"
#define ODBaseSession_SetWindowState(somSelf,ev,windowState) \
    (SOM_Resolve(somSelf, ODBaseSession, SetWindowState) \
	(somSelf,ev,windowState))
#ifndef SOMGD_SetWindowState
    #if (defined(_SetWindowState) || defined(__SetWindowState))
        #undef _SetWindowState
        #undef __SetWindowState
        #define SOMGD_SetWindowState 1
    #else
        #define _SetWindowState ODBaseSession_SetWindowState
    #endif /* _SetWindowState */
#endif /* SOMGD_SetWindowState */

/*
 * New Method: GetShellSemtInterface
 */
typedef ODSemanticInterface*   (SOMLINK * somTD_ODBaseSession_GetShellSemtInterface)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetShellSemtInterface "::ODBaseSession::GetShellSemtInterface"
#define ODBaseSession_GetShellSemtInterface(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetShellSemtInterface) \
	(somSelf,ev))
#ifndef SOMGD_GetShellSemtInterface
    #if (defined(_GetShellSemtInterface) || defined(__GetShellSemtInterface))
        #undef _GetShellSemtInterface
        #undef __GetShellSemtInterface
        #define SOMGD_GetShellSemtInterface 1
    #else
        #define _GetShellSemtInterface ODBaseSession_GetShellSemtInterface
    #endif /* _GetShellSemtInterface */
#endif /* SOMGD_GetShellSemtInterface */

/*
 * New Method: SetShellSemtInterface
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetShellSemtInterface)(ODBaseSession *somSelf, Environment *ev,
		ODSemanticInterface* shellSemanticInterface);
#define somMD_ODBaseSession_SetShellSemtInterface "::ODBaseSession::SetShellSemtInterface"
#define ODBaseSession_SetShellSemtInterface(somSelf,ev,shellSemanticInterface) \
    (SOM_Resolve(somSelf, ODBaseSession, SetShellSemtInterface) \
	(somSelf,ev,shellSemanticInterface))
#ifndef SOMGD_SetShellSemtInterface
    #if (defined(_SetShellSemtInterface) || defined(__SetShellSemtInterface))
        #undef _SetShellSemtInterface
        #undef __SetShellSemtInterface
        #define SOMGD_SetShellSemtInterface 1
    #else
        #define _SetShellSemtInterface ODBaseSession_SetShellSemtInterface
    #endif /* _SetShellSemtInterface */
#endif /* SOMGD_SetShellSemtInterface */

/*
 * New Method: Tokenize
 */
typedef ODTypeToken   (SOMLINK * somTD_ODBaseSession_Tokenize)(ODBaseSession *somSelf, Environment *ev,
		ODType type);
#define somMD_ODBaseSession_Tokenize "::ODBaseSession::Tokenize"
#define ODBaseSession_Tokenize(somSelf,ev,type) \
    (SOM_Resolve(somSelf, ODBaseSession, Tokenize) \
	(somSelf,ev,type))
#ifndef SOMGD_Tokenize
    #if (defined(_Tokenize) || defined(__Tokenize))
        #undef _Tokenize
        #undef __Tokenize
        #define SOMGD_Tokenize 1
    #else
        #define _Tokenize ODBaseSession_Tokenize
    #endif /* _Tokenize */
#endif /* SOMGD_Tokenize */

/*
 * New Method: RemoveEntry
 */
typedef void   (SOMLINK * somTD_ODBaseSession_RemoveEntry)(ODBaseSession *somSelf, Environment *ev,
		ODType* type);
#define somMD_ODBaseSession_RemoveEntry "::ODBaseSession::RemoveEntry"
#define ODBaseSession_RemoveEntry(somSelf,ev,type) \
    (SOM_Resolve(somSelf, ODBaseSession, RemoveEntry) \
	(somSelf,ev,type))
#ifndef SOMGD_RemoveEntry
    #if (defined(_RemoveEntry) || defined(__RemoveEntry))
        #undef _RemoveEntry
        #undef __RemoveEntry
        #define SOMGD_RemoveEntry 1
    #else
        #define _RemoveEntry ODBaseSession_RemoveEntry
    #endif /* _RemoveEntry */
#endif /* SOMGD_RemoveEntry */

/*
 * New Method: GetType
 */
typedef ODBoolean   (SOMLINK * somTD_ODBaseSession_GetType)(ODBaseSession *somSelf, Environment *ev,
		ODTypeToken token,
		ODType* type);
#define somMD_ODBaseSession_GetType "::ODBaseSession::GetType"
#define ODBaseSession_GetType(somSelf,ev,token,type) \
    (SOM_Resolve(somSelf, ODBaseSession, GetType) \
	(somSelf,ev,token,type))
#ifndef SOMGD_GetType
    #if (defined(_GetType) || defined(__GetType))
        #undef _GetType
        #undef __GetType
        #define SOMGD_GetType 1
    #else
        #define _GetType ODBaseSession_GetType
    #endif /* _GetType */
#endif /* SOMGD_GetType */

/*
 * New Method: InitBaseSession
 */
typedef void   (SOMLINK * somTD_ODBaseSession_InitBaseSession)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_InitBaseSession "::ODBaseSession::InitBaseSession"
#define ODBaseSession_InitBaseSession(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, InitBaseSession) \
	(somSelf,ev))
#ifndef SOMGD_InitBaseSession
    #if (defined(_InitBaseSession) || defined(__InitBaseSession))
        #undef _InitBaseSession
        #undef __InitBaseSession
        #define SOMGD_InitBaseSession 1
    #else
        #define _InitBaseSession ODBaseSession_InitBaseSession
    #endif /* _InitBaseSession */
#endif /* SOMGD_InitBaseSession */

/*
 * New Method: GetTokenTable
 */
typedef TokenTable*   (SOMLINK * somTD_ODBaseSession_GetTokenTable)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetTokenTable "::ODBaseSession::GetTokenTable"
#define ODBaseSession_GetTokenTable(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetTokenTable) \
	(somSelf,ev))
#ifndef SOMGD_GetTokenTable
    #if (defined(_GetTokenTable) || defined(__GetTokenTable))
        #undef _GetTokenTable
        #undef __GetTokenTable
        #define SOMGD_GetTokenTable 1
    #else
        #define _GetTokenTable ODBaseSession_GetTokenTable
    #endif /* _GetTokenTable */
#endif /* SOMGD_GetTokenTable */

/*
 * New Method: SetTokenTable
 */
typedef void   (SOMLINK * somTD_ODBaseSession_SetTokenTable)(ODBaseSession *somSelf, Environment *ev,
		TokenTable* table);
#define somMD_ODBaseSession_SetTokenTable "::ODBaseSession::SetTokenTable"
#define ODBaseSession_SetTokenTable(somSelf,ev,table) \
    (SOM_Resolve(somSelf, ODBaseSession, SetTokenTable) \
	(somSelf,ev,table))
#ifndef SOMGD_SetTokenTable
    #if (defined(_SetTokenTable) || defined(__SetTokenTable))
        #undef _SetTokenTable
        #undef __SetTokenTable
        #define SOMGD_SetTokenTable 1
    #else
        #define _SetTokenTable ODBaseSession_SetTokenTable
    #endif /* _SetTokenTable */
#endif /* SOMGD_SetTokenTable */

/*
 * New Method: GetScriptingObject
 */
typedef ScriptingObject*   (SOMLINK * somTD_ODBaseSession_GetScriptingObject)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetScriptingObject "::ODBaseSession::GetScriptingObject"
#define ODBaseSession_GetScriptingObject(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetScriptingObject) \
	(somSelf,ev))
#ifndef SOMGD_GetScriptingObject
    #if (defined(_GetScriptingObject) || defined(__GetScriptingObject))
        #undef _GetScriptingObject
        #undef __GetScriptingObject
        #define SOMGD_GetScriptingObject 1
    #else
        #define _GetScriptingObject ODBaseSession_GetScriptingObject
    #endif /* _GetScriptingObject */
#endif /* SOMGD_GetScriptingObject */

/*
 * New Method: GetToolSpaceManager
 */
typedef ODToolSpaceManager*   (SOMLINK * somTD_ODBaseSession_GetToolSpaceManager)(ODBaseSession *somSelf, Environment *ev);
#define somMD_ODBaseSession_GetToolSpaceManager "::ODBaseSession::GetToolSpaceManager"
#define ODBaseSession_GetToolSpaceManager(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseSession, GetToolSpaceManager) \
	(somSelf,ev))
#ifndef SOMGD_GetToolSpaceManager
    #if (defined(_GetToolSpaceManager) || defined(__GetToolSpaceManager))
        #undef _GetToolSpaceManager
        #undef __GetToolSpaceManager
        #define SOMGD_GetToolSpaceManager 1
    #else
        #define _GetToolSpaceManager ODBaseSession_GetToolSpaceManager
    #endif /* _GetToolSpaceManager */
#endif /* SOMGD_GetToolSpaceManager */
#ifndef SOM_DONT_USE_INHERITED_MACROS
#define ODBaseSession_InitObject ODObject_InitObject
#define ODBaseSession_IsInitialized ODObject_IsInitialized
#define ODBaseSession_HasExtension ODObject_HasExtension
#define ODBaseSession_GetExtension ODObject_GetExtension
#define ODBaseSession_ReleaseExtension ODObject_ReleaseExtension
#define ODBaseSession_IsEqualTo ODObject_IsEqualTo
#define ODBaseSession_SubClassResponsibility ODObject_SubClassResponsibility
#define ODBaseSession_somDefaultInit SOMObject_somDefaultInit
#define ODBaseSession_somDestruct SOMObject_somDestruct
#define ODBaseSession_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define ODBaseSession_somDefaultAssign SOMObject_somDefaultAssign
#define ODBaseSession_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define ODBaseSession_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define ODBaseSession_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define ODBaseSession_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define ODBaseSession_somDefaultVAssign SOMObject_somDefaultVAssign
#define ODBaseSession_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define ODBaseSession_somFree SOMObject_somFree
#define ODBaseSession_somGetClass SOMObject_somGetClass
#define ODBaseSession_somGetClassName SOMObject_somGetClassName
#define ODBaseSession_somGetSize SOMObject_somGetSize
#define ODBaseSession_somIsA SOMObject_somIsA
#define ODBaseSession_somIsInstanceOf SOMObject_somIsInstanceOf
#define ODBaseSession_somRespondsTo SOMObject_somRespondsTo
#define ODBaseSession_somDispatch SOMObject_somDispatch
#define ODBaseSession_somClassDispatch SOMObject_somClassDispatch
#define ODBaseSession_somCastObj SOMObject_somCastObj
#define ODBaseSession_somResetObj SOMObject_somResetObj
#define ODBaseSession_somDispatchV SOMObject_somDispatchV
#define ODBaseSession_somDispatchL SOMObject_somDispatchL
#define ODBaseSession_somDispatchA SOMObject_somDispatchA
#define ODBaseSession_somDispatchD SOMObject_somDispatchD
#define ODBaseSession_somPrintSelf SOMObject_somPrintSelf
#define ODBaseSession_somDumpSelf SOMObject_somDumpSelf
#define ODBaseSession_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_ODBaseSession_h */
