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

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


#ifndef SOM_ODSettingsExtension_h
#define SOM_ODSettingsExtension_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 ODSettingsExtensionClassData (*resolve_ODSettingsExtensionClassData())
#define ODSettingsExtensionCClassData (*resolve_ODSettingsExtensionCClassData())

/*
 * Define the class name as an object type
 */
#ifndef ODSettingsExtension
#define ODSettingsExtension SOMObject
#endif
#include <Extensn.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 ODSettingsExtension
    #define ODSettingsExtension SOMObject
#endif /* ODSettingsExtension */
#ifndef ODFacet
    #define ODFacet SOMObject
#endif /* ODFacet */
#ifndef ODPart
    #define ODPart SOMObject
#endif /* ODPart */

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

#define ODSettingsExtension_MajorVersion 0
#define ODSettingsExtension_MinorVersion 0

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define ODSettingsExtensionNewClass c
#define ODSettingsExtensionClassData d
#define ODSettingsExtensionCClassData x
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define ODSettingsExtension_classObj ODSettingsExtensionClassData.classObject
#define _ODSettingsExtension ODSettingsExtension_classObj

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

/*
 * Declare the class data structure
 */
SOMEXTERN struct ODSettingsExtensionClassDataStructure {
	SOMClass *classObject;
	somMToken InitSettingsExtension;
	somMToken ShowSettings;
}  _ODSettingsExtensionClassData;
SOMEXTERN struct ODSettingsExtensionClassDataStructure * SOMLINK resolve_ODSettingsExtensionClassData(void);

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct ODSettingsExtensionCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
}  _ODSettingsExtensionCClassData;
SOMEXTERN struct ODSettingsExtensionCClassDataStructure * SOMLINK resolve_ODSettingsExtensionCClassData(void);

/*
 * New and Renew macros for ODSettingsExtension
 */
#define ODSettingsExtensionNew() \
   (_somNew(_ODSettingsExtension ? _ODSettingsExtension : ODSettingsExtensionNewClass(ODSettingsExtension_MajorVersion, ODSettingsExtension_MinorVersion)))
#define ODSettingsExtensionRenew(buf) \
   (_somRenew(_ODSettingsExtension ? _ODSettingsExtension : ODSettingsExtensionNewClass(ODSettingsExtension_MajorVersion, ODSettingsExtension_MinorVersion), buf))

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

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

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

/*
 * New Method: InitSettingsExtension
 */
typedef void   (SOMLINK * somTD_ODSettingsExtension_InitSettingsExtension)(ODSettingsExtension *somSelf, Environment *ev,
		ODPart* owner);
#define somMD_ODSettingsExtension_InitSettingsExtension "::ODSettingsExtension::InitSettingsExtension"
#define ODSettingsExtension_InitSettingsExtension(somSelf,ev,owner) \
    (SOM_Resolve(somSelf, ODSettingsExtension, InitSettingsExtension) \
	(somSelf,ev,owner))
#ifndef SOMGD_InitSettingsExtension
    #if (defined(_InitSettingsExtension) || defined(__InitSettingsExtension))
        #undef _InitSettingsExtension
        #undef __InitSettingsExtension
        #define SOMGD_InitSettingsExtension 1
    #else
        #define _InitSettingsExtension ODSettingsExtension_InitSettingsExtension
    #endif /* _InitSettingsExtension */
#endif /* SOMGD_InitSettingsExtension */

/*
 * New Method: ShowSettings
 */
typedef void   (SOMLINK * somTD_ODSettingsExtension_ShowSettings)(ODSettingsExtension *somSelf, Environment *ev,
		ODFacet* facet);
#define somMD_ODSettingsExtension_ShowSettings "::ODSettingsExtension::ShowSettings"
#define ODSettingsExtension_ShowSettings(somSelf,ev,facet) \
    (SOM_Resolve(somSelf, ODSettingsExtension, ShowSettings) \
	(somSelf,ev,facet))
#ifndef SOMGD_ShowSettings
    #if (defined(_ShowSettings) || defined(__ShowSettings))
        #undef _ShowSettings
        #undef __ShowSettings
        #define SOMGD_ShowSettings 1
    #else
        #define _ShowSettings ODSettingsExtension_ShowSettings
    #endif /* _ShowSettings */
#endif /* SOMGD_ShowSettings */
#ifndef SOM_DONT_USE_INHERITED_MACROS
#define ODSettingsExtension_InitExtension ODExtension_InitExtension
#define ODSettingsExtension_GetBase ODExtension_GetBase
#define ODSettingsExtension_BaseRemoved ODExtension_BaseRemoved
#define ODSettingsExtension_IsValid ODExtension_IsValid
#define ODSettingsExtension_CheckValid ODExtension_CheckValid
#define ODSettingsExtension_InitRefCntObject ODRefCntObject_InitRefCntObject
#define ODSettingsExtension_IncrementRefCount ODRefCntObject_IncrementRefCount
#define ODSettingsExtension_GetRefCount ODRefCntObject_GetRefCount
#define ODSettingsExtension_InitObject ODObject_InitObject
#define ODSettingsExtension_IsInitialized ODObject_IsInitialized
#define ODSettingsExtension_HasExtension ODObject_HasExtension
#define ODSettingsExtension_GetExtension ODObject_GetExtension
#define ODSettingsExtension_ReleaseExtension ODObject_ReleaseExtension
#define ODSettingsExtension_Purge ODObject_Purge
#define ODSettingsExtension_IsEqualTo ODObject_IsEqualTo
#define ODSettingsExtension_SubClassResponsibility ODObject_SubClassResponsibility
#define ODSettingsExtension_somDefaultInit SOMObject_somDefaultInit
#define ODSettingsExtension_somDestruct SOMObject_somDestruct
#define ODSettingsExtension_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define ODSettingsExtension_somDefaultAssign SOMObject_somDefaultAssign
#define ODSettingsExtension_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define ODSettingsExtension_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define ODSettingsExtension_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define ODSettingsExtension_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define ODSettingsExtension_somDefaultVAssign SOMObject_somDefaultVAssign
#define ODSettingsExtension_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define ODSettingsExtension_somFree SOMObject_somFree
#define ODSettingsExtension_somGetClass SOMObject_somGetClass
#define ODSettingsExtension_somGetClassName SOMObject_somGetClassName
#define ODSettingsExtension_somGetSize SOMObject_somGetSize
#define ODSettingsExtension_somIsA SOMObject_somIsA
#define ODSettingsExtension_somIsInstanceOf SOMObject_somIsInstanceOf
#define ODSettingsExtension_somRespondsTo SOMObject_somRespondsTo
#define ODSettingsExtension_somDispatch SOMObject_somDispatch
#define ODSettingsExtension_somClassDispatch SOMObject_somClassDispatch
#define ODSettingsExtension_somCastObj SOMObject_somCastObj
#define ODSettingsExtension_somResetObj SOMObject_somResetObj
#define ODSettingsExtension_somDispatchV SOMObject_somDispatchV
#define ODSettingsExtension_somDispatchL SOMObject_somDispatchL
#define ODSettingsExtension_somDispatchA SOMObject_somDispatchA
#define ODSettingsExtension_somDispatchD SOMObject_somDispatchD
#define ODSettingsExtension_somPrintSelf SOMObject_somPrintSelf
#define ODSettingsExtension_somDumpSelf SOMObject_somDumpSelf
#define ODSettingsExtension_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_ODSettingsExtension_h */
