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

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


#ifndef SOM_ODBaseClipboard_h
#define SOM_ODBaseClipboard_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 ODBaseClipboardClassData (*resolve_ODBaseClipboardClassData())
#define ODBaseClipboardCClassData (*resolve_ODBaseClipboardCClassData())

/*
 * Define the class name as an object type
 */
#ifndef ODBaseClipboard
#define ODBaseClipboard 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 ODBaseClipboard
    #define ODBaseClipboard SOMObject
#endif /* ODBaseClipboard */
#ifndef ODStorageUnit
    #define ODStorageUnit SOMObject
#endif /* ODStorageUnit */
#ifndef ODDraft
    #define ODDraft SOMObject
#endif /* ODDraft */
#ifndef ODDocument
    #define ODDocument SOMObject
#endif /* ODDocument */
#ifndef ODContainer
    #define ODContainer SOMObject
#endif /* ODContainer */
#ifndef ODSession
    #define ODSession SOMObject
#endif /* ODSession */
#ifndef ODPlatformTypeList
    #define ODPlatformTypeList SOMObject
#endif /* ODPlatformTypeList */

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

#define ODBaseClipboard_MajorVersion 1
#define ODBaseClipboard_MinorVersion 0

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define ODBaseClipboardNewClass c
#define ODBaseClipboardClassData d
#define ODBaseClipboardCClassData x
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define ODBaseClipboard_classObj ODBaseClipboardClassData.classObject
#define _ODBaseClipboard ODBaseClipboard_classObj

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

/*
 * Declare the class data structure
 */
SOMEXTERN struct ODBaseClipboardClassDataStructure {
	SOMClass *classObject;
	somMToken GetChangeID;
	somMToken Clear;
	somMToken GetContentStorageUnit;
	somMToken SetPlatformClipboard;
	somMToken ExportClipboard;
	somMToken InitBaseClipboard;
}  _ODBaseClipboardClassData;
SOMEXTERN struct ODBaseClipboardClassDataStructure * SOMLINK resolve_ODBaseClipboardClassData(void);

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct ODBaseClipboardCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
}  _ODBaseClipboardCClassData;
SOMEXTERN struct ODBaseClipboardCClassDataStructure * SOMLINK resolve_ODBaseClipboardCClassData(void);

/*
 * New and Renew macros for ODBaseClipboard
 */
#define ODBaseClipboardNew() \
   (_somNew(_ODBaseClipboard ? _ODBaseClipboard : ODBaseClipboardNewClass(ODBaseClipboard_MajorVersion, ODBaseClipboard_MinorVersion)))
#define ODBaseClipboardRenew(buf) \
   (_somRenew(_ODBaseClipboard ? _ODBaseClipboard : ODBaseClipboardNewClass(ODBaseClipboard_MajorVersion, ODBaseClipboard_MinorVersion), buf))

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

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

/*
 * New Method: GetChangeID
 */
typedef ODChangeID   (SOMLINK * somTD_ODBaseClipboard_GetChangeID)(ODBaseClipboard *somSelf, Environment *ev);
#define somMD_ODBaseClipboard_GetChangeID "::ODBaseClipboard::GetChangeID"
#define ODBaseClipboard_GetChangeID(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseClipboard, GetChangeID) \
	(somSelf,ev))
#ifndef SOMGD_GetChangeID
    #if (defined(_GetChangeID) || defined(__GetChangeID))
        #undef _GetChangeID
        #undef __GetChangeID
        #define SOMGD_GetChangeID 1
    #else
        #define _GetChangeID ODBaseClipboard_GetChangeID
    #endif /* _GetChangeID */
#endif /* SOMGD_GetChangeID */

/*
 * New Method: Clear
 */
typedef void   (SOMLINK * somTD_ODBaseClipboard_Clear)(ODBaseClipboard *somSelf, Environment *ev);
#define somMD_ODBaseClipboard_Clear "::ODBaseClipboard::Clear"
#define ODBaseClipboard_Clear(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseClipboard, Clear) \
	(somSelf,ev))
#ifndef SOMGD_Clear
    #if (defined(_Clear) || defined(__Clear))
        #undef _Clear
        #undef __Clear
        #define SOMGD_Clear 1
    #else
        #define _Clear ODBaseClipboard_Clear
    #endif /* _Clear */
#endif /* SOMGD_Clear */

/*
 * New Method: GetContentStorageUnit
 */
typedef ODStorageUnit*   (SOMLINK * somTD_ODBaseClipboard_GetContentStorageUnit)(ODBaseClipboard *somSelf, Environment *ev);
#define somMD_ODBaseClipboard_GetContentStorageUnit "::ODBaseClipboard::GetContentStorageUnit"
#define ODBaseClipboard_GetContentStorageUnit(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseClipboard, GetContentStorageUnit) \
	(somSelf,ev))
#ifndef SOMGD_GetContentStorageUnit
    #if (defined(_GetContentStorageUnit) || defined(__GetContentStorageUnit))
        #undef _GetContentStorageUnit
        #undef __GetContentStorageUnit
        #define SOMGD_GetContentStorageUnit 1
    #else
        #define _GetContentStorageUnit ODBaseClipboard_GetContentStorageUnit
    #endif /* _GetContentStorageUnit */
#endif /* SOMGD_GetContentStorageUnit */

/*
 * New Method: SetPlatformClipboard
 */
typedef void   (SOMLINK * somTD_ODBaseClipboard_SetPlatformClipboard)(ODBaseClipboard *somSelf, Environment *ev,
		ODPlatformTypeList* typeList);
#define somMD_ODBaseClipboard_SetPlatformClipboard "::ODBaseClipboard::SetPlatformClipboard"
#define ODBaseClipboard_SetPlatformClipboard(somSelf,ev,typeList) \
    (SOM_Resolve(somSelf, ODBaseClipboard, SetPlatformClipboard) \
	(somSelf,ev,typeList))
#ifndef SOMGD_SetPlatformClipboard
    #if (defined(_SetPlatformClipboard) || defined(__SetPlatformClipboard))
        #undef _SetPlatformClipboard
        #undef __SetPlatformClipboard
        #define SOMGD_SetPlatformClipboard 1
    #else
        #define _SetPlatformClipboard ODBaseClipboard_SetPlatformClipboard
    #endif /* _SetPlatformClipboard */
#endif /* SOMGD_SetPlatformClipboard */

/*
 * New Method: ExportClipboard
 */
typedef void   (SOMLINK * somTD_ODBaseClipboard_ExportClipboard)(ODBaseClipboard *somSelf, Environment *ev);
#define somMD_ODBaseClipboard_ExportClipboard "::ODBaseClipboard::ExportClipboard"
#define ODBaseClipboard_ExportClipboard(somSelf,ev) \
    (SOM_Resolve(somSelf, ODBaseClipboard, ExportClipboard) \
	(somSelf,ev))
#ifndef SOMGD_ExportClipboard
    #if (defined(_ExportClipboard) || defined(__ExportClipboard))
        #undef _ExportClipboard
        #undef __ExportClipboard
        #define SOMGD_ExportClipboard 1
    #else
        #define _ExportClipboard ODBaseClipboard_ExportClipboard
    #endif /* _ExportClipboard */
#endif /* SOMGD_ExportClipboard */

/*
 * New Method: InitBaseClipboard
 */
typedef void   (SOMLINK * somTD_ODBaseClipboard_InitBaseClipboard)(ODBaseClipboard *somSelf, Environment *ev,
		ODSession* session);
#define somMD_ODBaseClipboard_InitBaseClipboard "::ODBaseClipboard::InitBaseClipboard"
#define ODBaseClipboard_InitBaseClipboard(somSelf,ev,session) \
    (SOM_Resolve(somSelf, ODBaseClipboard, InitBaseClipboard) \
	(somSelf,ev,session))
#ifndef SOMGD_InitBaseClipboard
    #if (defined(_InitBaseClipboard) || defined(__InitBaseClipboard))
        #undef _InitBaseClipboard
        #undef __InitBaseClipboard
        #define SOMGD_InitBaseClipboard 1
    #else
        #define _InitBaseClipboard ODBaseClipboard_InitBaseClipboard
    #endif /* _InitBaseClipboard */
#endif /* SOMGD_InitBaseClipboard */
#ifndef SOM_DONT_USE_INHERITED_MACROS
#define ODBaseClipboard_InitObject ODObject_InitObject
#define ODBaseClipboard_IsInitialized ODObject_IsInitialized
#define ODBaseClipboard_HasExtension ODObject_HasExtension
#define ODBaseClipboard_GetExtension ODObject_GetExtension
#define ODBaseClipboard_ReleaseExtension ODObject_ReleaseExtension
#define ODBaseClipboard_Purge ODObject_Purge
#define ODBaseClipboard_IsEqualTo ODObject_IsEqualTo
#define ODBaseClipboard_SubClassResponsibility ODObject_SubClassResponsibility
#define ODBaseClipboard_somDefaultInit SOMObject_somDefaultInit
#define ODBaseClipboard_somDestruct SOMObject_somDestruct
#define ODBaseClipboard_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define ODBaseClipboard_somDefaultAssign SOMObject_somDefaultAssign
#define ODBaseClipboard_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define ODBaseClipboard_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define ODBaseClipboard_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define ODBaseClipboard_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define ODBaseClipboard_somDefaultVAssign SOMObject_somDefaultVAssign
#define ODBaseClipboard_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define ODBaseClipboard_somFree SOMObject_somFree
#define ODBaseClipboard_somGetClass SOMObject_somGetClass
#define ODBaseClipboard_somGetClassName SOMObject_somGetClassName
#define ODBaseClipboard_somGetSize SOMObject_somGetSize
#define ODBaseClipboard_somIsA SOMObject_somIsA
#define ODBaseClipboard_somIsInstanceOf SOMObject_somIsInstanceOf
#define ODBaseClipboard_somRespondsTo SOMObject_somRespondsTo
#define ODBaseClipboard_somDispatch SOMObject_somDispatch
#define ODBaseClipboard_somClassDispatch SOMObject_somClassDispatch
#define ODBaseClipboard_somCastObj SOMObject_somCastObj
#define ODBaseClipboard_somResetObj SOMObject_somResetObj
#define ODBaseClipboard_somDispatchV SOMObject_somDispatchV
#define ODBaseClipboard_somDispatchL SOMObject_somDispatchL
#define ODBaseClipboard_somDispatchA SOMObject_somDispatchA
#define ODBaseClipboard_somDispatchD SOMObject_somDispatchD
#define ODBaseClipboard_somPrintSelf SOMObject_somPrintSelf
#define ODBaseClipboard_somDumpSelf SOMObject_somDumpSelf
#define ODBaseClipboard_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_ODBaseClipboard_h */
