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

/*
 * 
 *  Theory of Operation
 * 
 * 
 * 	This class defines toolspace used with ODToolSpaceManager.
 * 
 *  Classes defined in this interface
 * 
 */


#ifndef SOM_ODToolSpaceObj_h
#define SOM_ODToolSpaceObj_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 ODToolSpaceObjClassData (*resolve_ODToolSpaceObjClassData())
#define ODToolSpaceObjCClassData (*resolve_ODToolSpaceObjCClassData())

/*
 * Define the class name as an object type
 */
#ifndef ODToolSpaceObj
#define ODToolSpaceObj SOMObject
#endif
#include <RefCtObj.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 ODRefCntObject
    #define ODRefCntObject SOMObject
#endif /* ODRefCntObject */
#ifndef ODToolSpaceObj
    #define ODToolSpaceObj SOMObject
#endif /* ODToolSpaceObj */
#ifndef ODSession
    #define ODSession SOMObject
#endif /* ODSession */
#ifndef ODToolSpaceManager
    #define ODToolSpaceManager SOMObject
#endif /* ODToolSpaceManager */
#ifndef ODShape
    #define ODShape SOMObject
#endif /* ODShape */
#ifndef ODFacet
    #define ODFacet SOMObject
#endif /* ODFacet */
#ifndef ODFrame
    #define ODFrame SOMObject
#endif /* ODFrame */
#ifndef ODPart
    #define ODPart SOMObject
#endif /* ODPart */
#ifndef ODToolWindow
    #define ODToolWindow SOMObject
#endif /* ODToolWindow */

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

#define ODToolSpaceObj_MajorVersion 0
#define ODToolSpaceObj_MinorVersion 0

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define ODToolSpaceObjNewClass c
#define ODToolSpaceObjClassData d
#define ODToolSpaceObjCClassData x
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define ODToolSpaceObj_classObj ODToolSpaceObjClassData.classObject
#define _ODToolSpaceObj ODToolSpaceObj_classObj

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

/*
 * Declare the class data structure
 */
SOMEXTERN struct ODToolSpaceObjClassDataStructure {
	SOMClass *classObject;
	somMToken InitToolSpaceObj;
	somMToken GetDomain;
	somMToken SetDomain;
	somMToken GetShape;
	somMToken GetToolSpaceWindow;
	somMToken GetToolSpaceManager;
	somMToken GetPlatformWindow;
	somMToken GetPosition;
	somMToken SetPosition;
	somMToken CreateToolWindow;
	somMToken Draw;
	somMToken Show;
	somMToken RepositionInWindow;
	somMToken FrameShapeResized;
	somMToken FrameShapeMoved;
	somMToken GetRootPart;
	somMToken GetRootFrame;
	somMToken GetRootFacet;
	somMToken SetRootPart;
	somMToken SetRootFrame;
	somMToken SetRootFacet;
	somMToken SetSizePos;
	somMToken SetPlatformWindow;
	somMToken SetToolSpaceWindow;
}  _ODToolSpaceObjClassData;
SOMEXTERN struct ODToolSpaceObjClassDataStructure * SOMLINK resolve_ODToolSpaceObjClassData(void);

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct ODToolSpaceObjCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
}  _ODToolSpaceObjCClassData;
SOMEXTERN struct ODToolSpaceObjCClassDataStructure * SOMLINK resolve_ODToolSpaceObjCClassData(void);

/*
 * New and Renew macros for ODToolSpaceObj
 */
#define ODToolSpaceObjNew() \
   (_somNew(_ODToolSpaceObj ? _ODToolSpaceObj : ODToolSpaceObjNewClass(ODToolSpaceObj_MajorVersion, ODToolSpaceObj_MinorVersion)))
#define ODToolSpaceObjRenew(buf) \
   (_somRenew(_ODToolSpaceObj ? _ODToolSpaceObj : ODToolSpaceObjNewClass(ODToolSpaceObj_MajorVersion, ODToolSpaceObj_MinorVersion), buf))

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

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

/*
 * Override method: Release
 */
#define ODToolSpaceObj_Release(somSelf,ev) \
	ODRefCntObject_Release(somSelf,ev)

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

/*
 * New Method: InitToolSpaceObj
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_InitToolSpaceObj)(ODToolSpaceObj *somSelf, Environment *ev,
		ODToolSpaceDomain tsDomain,
		ODPart* requestingPart,
		ODShape* aShape,
		ODToolSpaceManager* aTSMgr,
		ODToolSpacePos thePos,
		ODShape* frameShape);
#define somMD_ODToolSpaceObj_InitToolSpaceObj "::ODToolSpaceObj::InitToolSpaceObj"
#define ODToolSpaceObj_InitToolSpaceObj(somSelf,ev,tsDomain,requestingPart,aShape,aTSMgr,thePos,frameShape) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, InitToolSpaceObj) \
	(somSelf,ev,tsDomain,requestingPart,aShape,aTSMgr,thePos,frameShape))
#ifndef SOMGD_InitToolSpaceObj
    #if (defined(_InitToolSpaceObj) || defined(__InitToolSpaceObj))
        #undef _InitToolSpaceObj
        #undef __InitToolSpaceObj
        #define SOMGD_InitToolSpaceObj 1
    #else
        #define _InitToolSpaceObj ODToolSpaceObj_InitToolSpaceObj
    #endif /* _InitToolSpaceObj */
#endif /* SOMGD_InitToolSpaceObj */

/*
 * New Method: GetDomain
 */
typedef ODToolSpaceDomain   (SOMLINK * somTD_ODToolSpaceObj_GetDomain)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetDomain "::ODToolSpaceObj::GetDomain"
#define ODToolSpaceObj_GetDomain(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetDomain) \
	(somSelf,ev))
#ifndef SOMGD_GetDomain
    #if (defined(_GetDomain) || defined(__GetDomain))
        #undef _GetDomain
        #undef __GetDomain
        #define SOMGD_GetDomain 1
    #else
        #define _GetDomain ODToolSpaceObj_GetDomain
    #endif /* _GetDomain */
#endif /* SOMGD_GetDomain */

/*
 * New Method: SetDomain
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_SetDomain)(ODToolSpaceObj *somSelf, Environment *ev,
		ODToolSpaceDomain tsDomain);
#define somMD_ODToolSpaceObj_SetDomain "::ODToolSpaceObj::SetDomain"
#define ODToolSpaceObj_SetDomain(somSelf,ev,tsDomain) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetDomain) \
	(somSelf,ev,tsDomain))
#ifndef SOMGD_SetDomain
    #if (defined(_SetDomain) || defined(__SetDomain))
        #undef _SetDomain
        #undef __SetDomain
        #define SOMGD_SetDomain 1
    #else
        #define _SetDomain ODToolSpaceObj_SetDomain
    #endif /* _SetDomain */
#endif /* SOMGD_SetDomain */

/*
 * New Method: GetShape
 */
typedef ODShape*   (SOMLINK * somTD_ODToolSpaceObj_GetShape)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetShape "::ODToolSpaceObj::GetShape"
#define ODToolSpaceObj_GetShape(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetShape) \
	(somSelf,ev))
#ifndef SOMGD_GetShape
    #if (defined(_GetShape) || defined(__GetShape))
        #undef _GetShape
        #undef __GetShape
        #define SOMGD_GetShape 1
    #else
        #define _GetShape ODToolSpaceObj_GetShape
    #endif /* _GetShape */
#endif /* SOMGD_GetShape */

/*
 * New Method: GetToolSpaceWindow
 */
typedef ODToolWindow*   (SOMLINK * somTD_ODToolSpaceObj_GetToolSpaceWindow)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetToolSpaceWindow "::ODToolSpaceObj::GetToolSpaceWindow"
#define ODToolSpaceObj_GetToolSpaceWindow(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetToolSpaceWindow) \
	(somSelf,ev))
#ifndef SOMGD_GetToolSpaceWindow
    #if (defined(_GetToolSpaceWindow) || defined(__GetToolSpaceWindow))
        #undef _GetToolSpaceWindow
        #undef __GetToolSpaceWindow
        #define SOMGD_GetToolSpaceWindow 1
    #else
        #define _GetToolSpaceWindow ODToolSpaceObj_GetToolSpaceWindow
    #endif /* _GetToolSpaceWindow */
#endif /* SOMGD_GetToolSpaceWindow */

/*
 * New Method: SetToolSpaceWindow
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_SetToolSpaceWindow)(ODToolSpaceObj *somSelf, Environment *ev,
		ODToolWindow* aToolWindow);
#define somMD_ODToolSpaceObj_SetToolSpaceWindow "::ODToolSpaceObj::SetToolSpaceWindow"
#define ODToolSpaceObj_SetToolSpaceWindow(somSelf,ev,aToolWindow) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetToolSpaceWindow) \
	(somSelf,ev,aToolWindow))
#ifndef SOMGD_SetToolSpaceWindow
    #if (defined(_SetToolSpaceWindow) || defined(__SetToolSpaceWindow))
        #undef _SetToolSpaceWindow
        #undef __SetToolSpaceWindow
        #define SOMGD_SetToolSpaceWindow 1
    #else
        #define _SetToolSpaceWindow ODToolSpaceObj_SetToolSpaceWindow
    #endif /* _SetToolSpaceWindow */
#endif /* SOMGD_SetToolSpaceWindow */

/*
 * New Method: GetToolSpaceManager
 */
typedef ODToolSpaceManager*   (SOMLINK * somTD_ODToolSpaceObj_GetToolSpaceManager)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetToolSpaceManager "::ODToolSpaceObj::GetToolSpaceManager"
#define ODToolSpaceObj_GetToolSpaceManager(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetToolSpaceManager) \
	(somSelf,ev))
#ifndef SOMGD_GetToolSpaceManager
    #if (defined(_GetToolSpaceManager) || defined(__GetToolSpaceManager))
        #undef _GetToolSpaceManager
        #undef __GetToolSpaceManager
        #define SOMGD_GetToolSpaceManager 1
    #else
        #define _GetToolSpaceManager ODToolSpaceObj_GetToolSpaceManager
    #endif /* _GetToolSpaceManager */
#endif /* SOMGD_GetToolSpaceManager */

/*
 * New Method: GetPlatformWindow
 */
typedef ODPlatformWindow   (SOMLINK * somTD_ODToolSpaceObj_GetPlatformWindow)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetPlatformWindow "::ODToolSpaceObj::GetPlatformWindow"
#define ODToolSpaceObj_GetPlatformWindow(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetPlatformWindow) \
	(somSelf,ev))
#ifndef SOMGD_GetPlatformWindow
    #if (defined(_GetPlatformWindow) || defined(__GetPlatformWindow))
        #undef _GetPlatformWindow
        #undef __GetPlatformWindow
        #define SOMGD_GetPlatformWindow 1
    #else
        #define _GetPlatformWindow ODToolSpaceObj_GetPlatformWindow
    #endif /* _GetPlatformWindow */
#endif /* SOMGD_GetPlatformWindow */

/*
 * New Method: SetPlatformWindow
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_SetPlatformWindow)(ODToolSpaceObj *somSelf, Environment *ev,
		ODPlatformWindow aWnd);
#define somMD_ODToolSpaceObj_SetPlatformWindow "::ODToolSpaceObj::SetPlatformWindow"
#define ODToolSpaceObj_SetPlatformWindow(somSelf,ev,aWnd) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetPlatformWindow) \
	(somSelf,ev,aWnd))
#ifndef SOMGD_SetPlatformWindow
    #if (defined(_SetPlatformWindow) || defined(__SetPlatformWindow))
        #undef _SetPlatformWindow
        #undef __SetPlatformWindow
        #define SOMGD_SetPlatformWindow 1
    #else
        #define _SetPlatformWindow ODToolSpaceObj_SetPlatformWindow
    #endif /* _SetPlatformWindow */
#endif /* SOMGD_SetPlatformWindow */

/*
 * New Method: GetPosition
 */
typedef ODToolSpacePos   (SOMLINK * somTD_ODToolSpaceObj_GetPosition)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetPosition "::ODToolSpaceObj::GetPosition"
#define ODToolSpaceObj_GetPosition(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetPosition) \
	(somSelf,ev))
#ifndef SOMGD_GetPosition
    #if (defined(_GetPosition) || defined(__GetPosition))
        #undef _GetPosition
        #undef __GetPosition
        #define SOMGD_GetPosition 1
    #else
        #define _GetPosition ODToolSpaceObj_GetPosition
    #endif /* _GetPosition */
#endif /* SOMGD_GetPosition */

/*
 * New Method: SetPosition
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_SetPosition)(ODToolSpaceObj *somSelf, Environment *ev,
		ODToolSpacePos aPosition);
#define somMD_ODToolSpaceObj_SetPosition "::ODToolSpaceObj::SetPosition"
#define ODToolSpaceObj_SetPosition(somSelf,ev,aPosition) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetPosition) \
	(somSelf,ev,aPosition))
#ifndef SOMGD_SetPosition
    #if (defined(_SetPosition) || defined(__SetPosition))
        #undef _SetPosition
        #undef __SetPosition
        #define SOMGD_SetPosition 1
    #else
        #define _SetPosition ODToolSpaceObj_SetPosition
    #endif /* _SetPosition */
#endif /* SOMGD_SetPosition */

/*
 * New Method: CreateToolWindow
 */
typedef ODToolWindow*   (SOMLINK * somTD_ODToolSpaceObj_CreateToolWindow)(ODToolSpaceObj *somSelf, Environment *ev,
		ODPart* requestingPart,
		ODPlatformWindow parent);
#define somMD_ODToolSpaceObj_CreateToolWindow "::ODToolSpaceObj::CreateToolWindow"
#define ODToolSpaceObj_CreateToolWindow(somSelf,ev,requestingPart,parent) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, CreateToolWindow) \
	(somSelf,ev,requestingPart,parent))
#ifndef SOMGD_CreateToolWindow
    #if (defined(_CreateToolWindow) || defined(__CreateToolWindow))
        #undef _CreateToolWindow
        #undef __CreateToolWindow
        #define SOMGD_CreateToolWindow 1
    #else
        #define _CreateToolWindow ODToolSpaceObj_CreateToolWindow
    #endif /* _CreateToolWindow */
#endif /* SOMGD_CreateToolWindow */

/*
 * New Method: Draw
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_Draw)(ODToolSpaceObj *somSelf, Environment *ev,
		ODPlatformCanvas aPltfrmCanvas);
#define somMD_ODToolSpaceObj_Draw "::ODToolSpaceObj::Draw"
#define ODToolSpaceObj_Draw(somSelf,ev,aPltfrmCanvas) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, Draw) \
	(somSelf,ev,aPltfrmCanvas))
#ifndef SOMGD_Draw
    #if (defined(_Draw) || defined(__Draw))
        #undef _Draw
        #undef __Draw
        #define SOMGD_Draw 1
    #else
        #define _Draw ODToolSpaceObj_Draw
    #endif /* _Draw */
#endif /* SOMGD_Draw */

/*
 * New Method: Show
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_Show)(ODToolSpaceObj *somSelf, Environment *ev,
		ODUShort showState);
#define somMD_ODToolSpaceObj_Show "::ODToolSpaceObj::Show"
#define ODToolSpaceObj_Show(somSelf,ev,showState) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, Show) \
	(somSelf,ev,showState))
#ifndef SOMGD_Show
    #if (defined(_Show) || defined(__Show))
        #undef _Show
        #undef __Show
        #define SOMGD_Show 1
    #else
        #define _Show ODToolSpaceObj_Show
    #endif /* _Show */
#endif /* SOMGD_Show */

/*
 * New Method: RepositionInWindow
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_RepositionInWindow)(ODToolSpaceObj *somSelf, Environment *ev,
		ODPlatformWindow aWnd);
#define somMD_ODToolSpaceObj_RepositionInWindow "::ODToolSpaceObj::RepositionInWindow"
#define ODToolSpaceObj_RepositionInWindow(somSelf,ev,aWnd) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, RepositionInWindow) \
	(somSelf,ev,aWnd))
#ifndef SOMGD_RepositionInWindow
    #if (defined(_RepositionInWindow) || defined(__RepositionInWindow))
        #undef _RepositionInWindow
        #undef __RepositionInWindow
        #define SOMGD_RepositionInWindow 1
    #else
        #define _RepositionInWindow ODToolSpaceObj_RepositionInWindow
    #endif /* _RepositionInWindow */
#endif /* SOMGD_RepositionInWindow */

/*
 * New Method: FrameShapeResized
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_FrameShapeResized)(ODToolSpaceObj *somSelf, Environment *ev,
		ODShape* frameShape);
#define somMD_ODToolSpaceObj_FrameShapeResized "::ODToolSpaceObj::FrameShapeResized"
#define ODToolSpaceObj_FrameShapeResized(somSelf,ev,frameShape) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, FrameShapeResized) \
	(somSelf,ev,frameShape))
#ifndef SOMGD_FrameShapeResized
    #if (defined(_FrameShapeResized) || defined(__FrameShapeResized))
        #undef _FrameShapeResized
        #undef __FrameShapeResized
        #define SOMGD_FrameShapeResized 1
    #else
        #define _FrameShapeResized ODToolSpaceObj_FrameShapeResized
    #endif /* _FrameShapeResized */
#endif /* SOMGD_FrameShapeResized */

/*
 * New Method: FrameShapeMoved
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_FrameShapeMoved)(ODToolSpaceObj *somSelf, Environment *ev,
		ODShape* frameShape);
#define somMD_ODToolSpaceObj_FrameShapeMoved "::ODToolSpaceObj::FrameShapeMoved"
#define ODToolSpaceObj_FrameShapeMoved(somSelf,ev,frameShape) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, FrameShapeMoved) \
	(somSelf,ev,frameShape))
#ifndef SOMGD_FrameShapeMoved
    #if (defined(_FrameShapeMoved) || defined(__FrameShapeMoved))
        #undef _FrameShapeMoved
        #undef __FrameShapeMoved
        #define SOMGD_FrameShapeMoved 1
    #else
        #define _FrameShapeMoved ODToolSpaceObj_FrameShapeMoved
    #endif /* _FrameShapeMoved */
#endif /* SOMGD_FrameShapeMoved */

/*
 * New Method: GetRootPart
 */
typedef ODPart*   (SOMLINK * somTD_ODToolSpaceObj_GetRootPart)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetRootPart "::ODToolSpaceObj::GetRootPart"
#define ODToolSpaceObj_GetRootPart(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetRootPart) \
	(somSelf,ev))
#ifndef SOMGD_GetRootPart
    #if (defined(_GetRootPart) || defined(__GetRootPart))
        #undef _GetRootPart
        #undef __GetRootPart
        #define SOMGD_GetRootPart 1
    #else
        #define _GetRootPart ODToolSpaceObj_GetRootPart
    #endif /* _GetRootPart */
#endif /* SOMGD_GetRootPart */

/*
 * New Method: GetRootFrame
 */
typedef ODFrame*   (SOMLINK * somTD_ODToolSpaceObj_GetRootFrame)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetRootFrame "::ODToolSpaceObj::GetRootFrame"
#define ODToolSpaceObj_GetRootFrame(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetRootFrame) \
	(somSelf,ev))
#ifndef SOMGD_GetRootFrame
    #if (defined(_GetRootFrame) || defined(__GetRootFrame))
        #undef _GetRootFrame
        #undef __GetRootFrame
        #define SOMGD_GetRootFrame 1
    #else
        #define _GetRootFrame ODToolSpaceObj_GetRootFrame
    #endif /* _GetRootFrame */
#endif /* SOMGD_GetRootFrame */

/*
 * New Method: GetRootFacet
 */
typedef ODFacet*   (SOMLINK * somTD_ODToolSpaceObj_GetRootFacet)(ODToolSpaceObj *somSelf, Environment *ev);
#define somMD_ODToolSpaceObj_GetRootFacet "::ODToolSpaceObj::GetRootFacet"
#define ODToolSpaceObj_GetRootFacet(somSelf,ev) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, GetRootFacet) \
	(somSelf,ev))
#ifndef SOMGD_GetRootFacet
    #if (defined(_GetRootFacet) || defined(__GetRootFacet))
        #undef _GetRootFacet
        #undef __GetRootFacet
        #define SOMGD_GetRootFacet 1
    #else
        #define _GetRootFacet ODToolSpaceObj_GetRootFacet
    #endif /* _GetRootFacet */
#endif /* SOMGD_GetRootFacet */

/*
 * New Method: SetRootPart
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_SetRootPart)(ODToolSpaceObj *somSelf, Environment *ev,
		ODPart* aPart);
#define somMD_ODToolSpaceObj_SetRootPart "::ODToolSpaceObj::SetRootPart"
#define ODToolSpaceObj_SetRootPart(somSelf,ev,aPart) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetRootPart) \
	(somSelf,ev,aPart))
#ifndef SOMGD_SetRootPart
    #if (defined(_SetRootPart) || defined(__SetRootPart))
        #undef _SetRootPart
        #undef __SetRootPart
        #define SOMGD_SetRootPart 1
    #else
        #define _SetRootPart ODToolSpaceObj_SetRootPart
    #endif /* _SetRootPart */
#endif /* SOMGD_SetRootPart */

/*
 * New Method: SetRootFrame
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_SetRootFrame)(ODToolSpaceObj *somSelf, Environment *ev,
		ODFrame* frame);
#define somMD_ODToolSpaceObj_SetRootFrame "::ODToolSpaceObj::SetRootFrame"
#define ODToolSpaceObj_SetRootFrame(somSelf,ev,frame) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetRootFrame) \
	(somSelf,ev,frame))
#ifndef SOMGD_SetRootFrame
    #if (defined(_SetRootFrame) || defined(__SetRootFrame))
        #undef _SetRootFrame
        #undef __SetRootFrame
        #define SOMGD_SetRootFrame 1
    #else
        #define _SetRootFrame ODToolSpaceObj_SetRootFrame
    #endif /* _SetRootFrame */
#endif /* SOMGD_SetRootFrame */

/*
 * New Method: SetRootFacet
 */
typedef void   (SOMLINK * somTD_ODToolSpaceObj_SetRootFacet)(ODToolSpaceObj *somSelf, Environment *ev,
		ODFacet* facet);
#define somMD_ODToolSpaceObj_SetRootFacet "::ODToolSpaceObj::SetRootFacet"
#define ODToolSpaceObj_SetRootFacet(somSelf,ev,facet) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetRootFacet) \
	(somSelf,ev,facet))
#ifndef SOMGD_SetRootFacet
    #if (defined(_SetRootFacet) || defined(__SetRootFacet))
        #undef _SetRootFacet
        #undef __SetRootFacet
        #define SOMGD_SetRootFacet 1
    #else
        #define _SetRootFacet ODToolSpaceObj_SetRootFacet
    #endif /* _SetRootFacet */
#endif /* SOMGD_SetRootFacet */

/*
 * New Method: SetSizePos
 */
typedef ODBoolean   (SOMLINK * somTD_ODToolSpaceObj_SetSizePos)(ODToolSpaceObj *somSelf, Environment *ev,
		ODCoordinate newLeft,
		ODCoordinate newTop,
		ODCoordinate newWidth,
		ODCoordinate newHeight,
		ODToolSpacePos thePos);
#define somMD_ODToolSpaceObj_SetSizePos "::ODToolSpaceObj::SetSizePos"
#define ODToolSpaceObj_SetSizePos(somSelf,ev,newLeft,newTop,newWidth,newHeight,thePos) \
    (SOM_Resolve(somSelf, ODToolSpaceObj, SetSizePos) \
	(somSelf,ev,newLeft,newTop,newWidth,newHeight,thePos))
#ifndef SOMGD_SetSizePos
    #if (defined(_SetSizePos) || defined(__SetSizePos))
        #undef _SetSizePos
        #undef __SetSizePos
        #define SOMGD_SetSizePos 1
    #else
        #define _SetSizePos ODToolSpaceObj_SetSizePos
    #endif /* _SetSizePos */
#endif /* SOMGD_SetSizePos */
#ifndef SOM_DONT_USE_INHERITED_MACROS
#define ODToolSpaceObj_InitRefCntObject ODRefCntObject_InitRefCntObject
#define ODToolSpaceObj_IncrementRefCount ODRefCntObject_IncrementRefCount
#define ODToolSpaceObj_GetRefCount ODRefCntObject_GetRefCount
#define ODToolSpaceObj_InitObject ODObject_InitObject
#define ODToolSpaceObj_IsInitialized ODObject_IsInitialized
#define ODToolSpaceObj_HasExtension ODObject_HasExtension
#define ODToolSpaceObj_GetExtension ODObject_GetExtension
#define ODToolSpaceObj_ReleaseExtension ODObject_ReleaseExtension
#define ODToolSpaceObj_IsEqualTo ODObject_IsEqualTo
#define ODToolSpaceObj_SubClassResponsibility ODObject_SubClassResponsibility
#define ODToolSpaceObj_somDefaultInit SOMObject_somDefaultInit
#define ODToolSpaceObj_somDestruct SOMObject_somDestruct
#define ODToolSpaceObj_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define ODToolSpaceObj_somDefaultAssign SOMObject_somDefaultAssign
#define ODToolSpaceObj_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define ODToolSpaceObj_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define ODToolSpaceObj_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define ODToolSpaceObj_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define ODToolSpaceObj_somDefaultVAssign SOMObject_somDefaultVAssign
#define ODToolSpaceObj_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define ODToolSpaceObj_somFree SOMObject_somFree
#define ODToolSpaceObj_somGetClass SOMObject_somGetClass
#define ODToolSpaceObj_somGetClassName SOMObject_somGetClassName
#define ODToolSpaceObj_somGetSize SOMObject_somGetSize
#define ODToolSpaceObj_somIsA SOMObject_somIsA
#define ODToolSpaceObj_somIsInstanceOf SOMObject_somIsInstanceOf
#define ODToolSpaceObj_somRespondsTo SOMObject_somRespondsTo
#define ODToolSpaceObj_somDispatch SOMObject_somDispatch
#define ODToolSpaceObj_somClassDispatch SOMObject_somClassDispatch
#define ODToolSpaceObj_somCastObj SOMObject_somCastObj
#define ODToolSpaceObj_somResetObj SOMObject_somResetObj
#define ODToolSpaceObj_somDispatchV SOMObject_somDispatchV
#define ODToolSpaceObj_somDispatchL SOMObject_somDispatchL
#define ODToolSpaceObj_somDispatchA SOMObject_somDispatchA
#define ODToolSpaceObj_somDispatchD SOMObject_somDispatchD
#define ODToolSpaceObj_somPrintSelf SOMObject_somPrintSelf
#define ODToolSpaceObj_somDumpSelf SOMObject_somDumpSelf
#define ODToolSpaceObj_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_ODToolSpaceObj_h */
