
/*
 * This file was generated by the SOM Compiler.
 * FileName: F:\BUILD\NT\ship\include\cmgrsrvr.xh.
 * Generated using:
 *     SOM Precompiler somipc: Development
 *     SOM Emitter emitxh.dll: Development
 */

#ifndef SOM_ComponentManagerServer_xh
#define SOM_ComponentManagerServer_xh

class ComponentManagerServer;

#define ComponentManagerServer_MajorVersion 1
#define ComponentManagerServer_MinorVersion 0

/*
 * Passthru lines: File: "C.xh", "before"
 */
#include <cmgrutil.h>                   

/* C++ SOM defs */
#include <somcls.xh>
#include <somcm.xh>

/* C++ parent defs */
#ifndef SOM_SOMClass_xh
#include <somcls.xh>
#endif

/*
 * C++ metaclass def
 */
#include <snglicls.xh>

#ifndef ComponentManagerServer_API
#define ComponentManagerServer_API
/*
 * -- The Class API
 */

/*
 * Start of user-defined types:
 */
class SOMClass;
class SOMObject;
class ODFrame;
class ODFacet;
class ODPlatformCanvas;
class Component;
class ComponentManager;
class M_ComponentManager;
class ComponentManagerServer;

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

/* A procedure to create the ComponentManagerServer Class */
class SOMMSingleInstance;
SOMEXTERN
#if (defined(SOM_Module_cmgrsrvr_Source) || defined(ComponentManagerServer_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_ComponentManagerServer))
WIN32_DLLEXPORT
#else
WIN32_DLLIMPORT
#endif
SOMMSingleInstance * SOMLINK ComponentManagerServerNewClass(
		integer4,
		integer4 );

/* The API to the ComponentManagerServer class object, and the methods it introduces. */
SOMEXTERN struct ComponentManagerServerClassDataStructure {
	SOMMSingleInstance *classObject;
	somMToken CountComponents;
	somMToken FindNextComponent;
	somMToken GetComponentInfo;
	somMToken GetComponentRefcon;
	somMToken SetComponentRefcon;
	somMToken OpenComponent;
	somMToken OpenDefaultComponent;
	somMToken InstallComponent;
	somMToken UninstallComponent;
	somMToken FindComponent;
}
#if !(defined(SOM_Module_cmgrsrvr_Source) || defined(ComponentManagerServer_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_ComponentManagerServer))
WIN32_DLLIMPORT
#elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
WIN32_DLLEXPORT
#endif
SOMDLINK ComponentManagerServerClassData;
#define _ComponentManagerServer ComponentManagerServerClassData.classObject

/* The API to parentMtabs for ComponentManagerServer, and the instance data it introduces. */
SOMEXTERN struct ComponentManagerServerCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken              instanceDataToken;
}
#if !(defined(SOM_Module_cmgrsrvr_Source) || defined(ComponentManagerServer_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_ComponentManagerServer))
WIN32_DLLIMPORT
#elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
WIN32_DLLEXPORT
#endif
SOMDLINK ComponentManagerServerCClassData;

/*
 * -- Typedefs for ComponentManagerServer Method Procedures
 */
extern "C" {
typedef ODULong   SOMLINK somTP_ComponentManagerServer_CountComponents(ComponentManagerServer *somSelf, Environment *ev,
		ComponentDescription* plooking);
typedef somTP_ComponentManagerServer_CountComponents *somTD_ComponentManagerServer_CountComponents;
typedef OSErr   SOMLINK somTP_ComponentManagerServer_FindNextComponent(ComponentManagerServer *somSelf, Environment *ev,
		ComponentDescription* plastFound,
		ComponentDescription* plooking,
		ComponentDescription* pfound);
typedef somTP_ComponentManagerServer_FindNextComponent *somTD_ComponentManagerServer_FindNextComponent;
typedef OSErr   SOMLINK somTP_ComponentManagerServer_GetComponentInfo(ComponentManagerServer *somSelf, Environment *ev,
		ComponentDescription* ptheComponent,
		string* pcomponentClassName,
		string* pcomponentDLL,
		string* pcomponentName,
		string* pcomponentInfo);
typedef somTP_ComponentManagerServer_GetComponentInfo *somTD_ComponentManagerServer_GetComponentInfo;
typedef ODSLong   SOMLINK somTP_ComponentManagerServer_GetComponentRefcon(ComponentManagerServer *somSelf, Environment *ev,
		ComponentDescription* ptheComponent);
typedef somTP_ComponentManagerServer_GetComponentRefcon *somTD_ComponentManagerServer_GetComponentRefcon;
typedef void   SOMLINK somTP_ComponentManagerServer_SetComponentRefcon(ComponentManagerServer *somSelf, Environment *ev,
		ComponentDescription* ptheComponent,
		ODSLong Refcon);
typedef somTP_ComponentManagerServer_SetComponentRefcon *somTD_ComponentManagerServer_SetComponentRefcon;
typedef void   SOMLINK somTP_ComponentManagerServer_OpenComponent(ComponentManagerServer *somSelf, Environment *ev,
		ComponentDescription* ptheComponent,
		string* pcomponentClassName,
		string* pcomponentClassDLL,
		ODULong* pcomponentVersion);
typedef somTP_ComponentManagerServer_OpenComponent *somTD_ComponentManagerServer_OpenComponent;
typedef void   SOMLINK somTP_ComponentManagerServer_OpenDefaultComponent(ComponentManagerServer *somSelf, Environment *ev,
		OSType componentType,
		OSType componentSubType,
		string* pcomponentClassName,
		string* pcomponentClassDLL,
		ODULong* pcomponentVersion);
typedef somTP_ComponentManagerServer_OpenDefaultComponent *somTD_ComponentManagerServer_OpenDefaultComponent;
typedef OSErr   SOMLINK somTP_ComponentManagerServer_InstallComponent(ComponentManagerServer *somSelf, Environment *ev,
		ComponentRegistryData* ptheData);
typedef somTP_ComponentManagerServer_InstallComponent *somTD_ComponentManagerServer_InstallComponent;
typedef OSErr   SOMLINK somTP_ComponentManagerServer_UninstallComponent(ComponentManagerServer *somSelf, Environment *ev,
		OSType componentType,
		OSType componentSubType);
typedef somTP_ComponentManagerServer_UninstallComponent *somTD_ComponentManagerServer_UninstallComponent;

/*
 * -- Typedefs for Reintroduced Wrapper Methods
 */
typedef long   SOMLINK somTP_ComponentManagerServer__get_somDataAlignment(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer__get_somDataAlignment *somTD_ComponentManagerServer__get_somDataAlignment;
typedef SOMClass_somOffsets   SOMLINK somTP_ComponentManagerServer__get_somInstanceDataOffsets(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer__get_somInstanceDataOffsets *somTD_ComponentManagerServer__get_somInstanceDataOffsets;
typedef SOMClass_SOMClassSequence   SOMLINK somTP_ComponentManagerServer__get_somDirectInitClasses(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer__get_somDirectInitClasses *somTD_ComponentManagerServer__get_somDirectInitClasses;
typedef void   SOMLINK somTP_ComponentManagerServer__set_somDirectInitClasses(ComponentManagerServer *somSelf,
		SOMClass_SOMClassSequence* somDirectInitClasses);
typedef somTP_ComponentManagerServer__set_somDirectInitClasses *somTD_ComponentManagerServer__set_somDirectInitClasses;
typedef SOMObject*   SOMLINK somTP_ComponentManagerServer_somNew(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somNew *somTD_ComponentManagerServer_somNew;
typedef SOMObject*   SOMLINK somTP_ComponentManagerServer_somNewNoInit(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somNewNoInit *somTD_ComponentManagerServer_somNewNoInit;
typedef SOMObject*   SOMLINK somTP_ComponentManagerServer_somRenew(ComponentManagerServer *somSelf,
		void* obj);
typedef somTP_ComponentManagerServer_somRenew *somTD_ComponentManagerServer_somRenew;
typedef SOMObject*   SOMLINK somTP_ComponentManagerServer_somRenewNoInit(ComponentManagerServer *somSelf,
		void* obj);
typedef somTP_ComponentManagerServer_somRenewNoInit *somTD_ComponentManagerServer_somRenewNoInit;
typedef SOMObject*   SOMLINK somTP_ComponentManagerServer_somRenewNoZero(ComponentManagerServer *somSelf,
		void* obj);
typedef somTP_ComponentManagerServer_somRenewNoZero *somTD_ComponentManagerServer_somRenewNoZero;
typedef SOMObject*   SOMLINK somTP_ComponentManagerServer_somRenewNoInitNoZero(ComponentManagerServer *somSelf,
		void* obj);
typedef somTP_ComponentManagerServer_somRenewNoInitNoZero *somTD_ComponentManagerServer_somRenewNoInitNoZero;
typedef string   SOMLINK somTP_ComponentManagerServer_somAllocate(ComponentManagerServer *somSelf,
		long size);
typedef somTP_ComponentManagerServer_somAllocate *somTD_ComponentManagerServer_somAllocate;
typedef void   SOMLINK somTP_ComponentManagerServer_somDeallocate(ComponentManagerServer *somSelf,
		string memptr);
typedef somTP_ComponentManagerServer_somDeallocate *somTD_ComponentManagerServer_somDeallocate;
typedef somMethodProc*   SOMLINK somTP_ComponentManagerServer__get_somClassAllocate(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer__get_somClassAllocate *somTD_ComponentManagerServer__get_somClassAllocate;
typedef somMethodProc*   SOMLINK somTP_ComponentManagerServer__get_somClassDeallocate(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer__get_somClassDeallocate *somTD_ComponentManagerServer__get_somClassDeallocate;
typedef somBooleanVector   SOMLINK somTP_ComponentManagerServer_somGetInstanceInitMask(ComponentManagerServer *somSelf,
		somInitCtrl* ctrl);
typedef somTP_ComponentManagerServer_somGetInstanceInitMask *somTD_ComponentManagerServer_somGetInstanceInitMask;
typedef somBooleanVector   SOMLINK somTP_ComponentManagerServer_somGetInstanceDestructionMask(ComponentManagerServer *somSelf,
		somDestructCtrl* ctrl);
typedef somTP_ComponentManagerServer_somGetInstanceDestructionMask *somTD_ComponentManagerServer_somGetInstanceDestructionMask;
typedef somBooleanVector   SOMLINK somTP_ComponentManagerServer_somGetInstanceAssignmentMask(ComponentManagerServer *somSelf,
		somAssignCtrl* ctrl);
typedef somTP_ComponentManagerServer_somGetInstanceAssignmentMask *somTD_ComponentManagerServer_somGetInstanceAssignmentMask;
typedef void   SOMLINK somTP_ComponentManagerServer_somInitClass(ComponentManagerServer *somSelf,
		string className,
		SOMClass* parentClass,
		long dataSize,
		long maxStaticMethods,
		long majorVersion,
		long minorVersion);
typedef somTP_ComponentManagerServer_somInitClass *somTD_ComponentManagerServer_somInitClass;
typedef void   SOMLINK somTP_ComponentManagerServer_somInitMIClass(ComponentManagerServer *somSelf,
		long inherit_vars,
		string className,
		SOMClass_SOMClassSequence* parentClasses,
		long dataSize,
		long dataAlignment,
		long maxStaticMethods,
		long majorVersion,
		long minorVersion);
typedef somTP_ComponentManagerServer_somInitMIClass *somTD_ComponentManagerServer_somInitMIClass;
typedef somMToken   SOMLINK somTP_ComponentManagerServer_somAddStaticMethod(ComponentManagerServer *somSelf,
		somId methodId,
		somId methodDescriptor,
		somMethodPtr method,
		somMethodPtr redispatchStub,
		somMethodPtr applyStub);
typedef somTP_ComponentManagerServer_somAddStaticMethod *somTD_ComponentManagerServer_somAddStaticMethod;
typedef void   SOMLINK somTP_ComponentManagerServer_somAddDynamicMethod(ComponentManagerServer *somSelf,
		somId methodId,
		somId methodDescriptor,
		somMethodPtr method,
		somMethodPtr applyStub);
typedef somTP_ComponentManagerServer_somAddDynamicMethod *somTD_ComponentManagerServer_somAddDynamicMethod;
typedef void   SOMLINK somTP_ComponentManagerServer_somOverrideSMethod(ComponentManagerServer *somSelf,
		somId methodId,
		somMethodPtr method);
typedef somTP_ComponentManagerServer_somOverrideSMethod *somTD_ComponentManagerServer_somOverrideSMethod;
typedef void   SOMLINK somTP_ComponentManagerServer_somClassReady(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somClassReady *somTD_ComponentManagerServer_somClassReady;
typedef somClassDataStructure*   SOMLINK somTP_ComponentManagerServer_somGetClassData(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetClassData *somTD_ComponentManagerServer_somGetClassData;
typedef void   SOMLINK somTP_ComponentManagerServer_somSetClassData(ComponentManagerServer *somSelf,
		somClassDataStructure* cds);
typedef somTP_ComponentManagerServer_somSetClassData *somTD_ComponentManagerServer_somSetClassData;
typedef somMethodTab*   SOMLINK somTP_ComponentManagerServer_somGetClassMtab(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetClassMtab *somTD_ComponentManagerServer_somGetClassMtab;
typedef long   SOMLINK somTP_ComponentManagerServer_somGetInstanceOffset(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetInstanceOffset *somTD_ComponentManagerServer_somGetInstanceOffset;
typedef long   SOMLINK somTP_ComponentManagerServer_somGetInstancePartSize(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetInstancePartSize *somTD_ComponentManagerServer_somGetInstancePartSize;
typedef long   SOMLINK somTP_ComponentManagerServer_somGetInstanceSize(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetInstanceSize *somTD_ComponentManagerServer_somGetInstanceSize;
typedef somDToken   SOMLINK somTP_ComponentManagerServer_somGetInstanceToken(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetInstanceToken *somTD_ComponentManagerServer_somGetInstanceToken;
typedef somDToken   SOMLINK somTP_ComponentManagerServer_somGetMemberToken(ComponentManagerServer *somSelf,
		long memberOffset,
		somDToken instanceToken);
typedef somTP_ComponentManagerServer_somGetMemberToken *somTD_ComponentManagerServer_somGetMemberToken;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somGetMethodData(ComponentManagerServer *somSelf,
		somId methodId,
		somMethodData* md);
typedef somTP_ComponentManagerServer_somGetMethodData *somTD_ComponentManagerServer_somGetMethodData;
typedef somMethodProc*   SOMLINK somTP_ComponentManagerServer_somGetRdStub(ComponentManagerServer *somSelf,
		somId methodId);
typedef somTP_ComponentManagerServer_somGetRdStub *somTD_ComponentManagerServer_somGetRdStub;
typedef somId   SOMLINK somTP_ComponentManagerServer_somGetMethodDescriptor(ComponentManagerServer *somSelf,
		somId methodId);
typedef somTP_ComponentManagerServer_somGetMethodDescriptor *somTD_ComponentManagerServer_somGetMethodDescriptor;
typedef long   SOMLINK somTP_ComponentManagerServer_somGetMethodIndex(ComponentManagerServer *somSelf,
		somId id);
typedef somTP_ComponentManagerServer_somGetMethodIndex *somTD_ComponentManagerServer_somGetMethodIndex;
typedef somMToken   SOMLINK somTP_ComponentManagerServer_somGetMethodToken(ComponentManagerServer *somSelf,
		somId methodId);
typedef somTP_ComponentManagerServer_somGetMethodToken *somTD_ComponentManagerServer_somGetMethodToken;
typedef string   SOMLINK somTP_ComponentManagerServer_somGetName(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetName *somTD_ComponentManagerServer_somGetName;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somGetNthMethodData(ComponentManagerServer *somSelf,
		long n,
		somMethodData* md);
typedef somTP_ComponentManagerServer_somGetNthMethodData *somTD_ComponentManagerServer_somGetNthMethodData;
typedef somId   SOMLINK somTP_ComponentManagerServer_somGetNthMethodInfo(ComponentManagerServer *somSelf,
		long n,
		somId* descriptor);
typedef somTP_ComponentManagerServer_somGetNthMethodInfo *somTD_ComponentManagerServer_somGetNthMethodInfo;
typedef long   SOMLINK somTP_ComponentManagerServer_somGetNumMethods(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetNumMethods *somTD_ComponentManagerServer_somGetNumMethods;
typedef long   SOMLINK somTP_ComponentManagerServer_somGetNumStaticMethods(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetNumStaticMethods *somTD_ComponentManagerServer_somGetNumStaticMethods;
typedef SOMClass*   SOMLINK somTP_ComponentManagerServer_somGetParent(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetParent *somTD_ComponentManagerServer_somGetParent;
typedef SOMClass_SOMClassSequence   SOMLINK somTP_ComponentManagerServer_somGetParents(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetParents *somTD_ComponentManagerServer_somGetParents;
typedef somMethodTabs   SOMLINK somTP_ComponentManagerServer_somGetPClsMtab(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetPClsMtab *somTD_ComponentManagerServer_somGetPClsMtab;
typedef somMethodTabs   SOMLINK somTP_ComponentManagerServer_somGetPClsMtabs(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetPClsMtabs *somTD_ComponentManagerServer_somGetPClsMtabs;
typedef void   SOMLINK somTP_ComponentManagerServer_somGetVersionNumbers(ComponentManagerServer *somSelf,
		long* majorVersion,
		long* minorVersion);
typedef somTP_ComponentManagerServer_somGetVersionNumbers *somTD_ComponentManagerServer_somGetVersionNumbers;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somSetMethodDescriptor(ComponentManagerServer *somSelf,
		somId methodId,
		somId descriptor);
typedef somTP_ComponentManagerServer_somSetMethodDescriptor *somTD_ComponentManagerServer_somSetMethodDescriptor;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somFindMethod(ComponentManagerServer *somSelf,
		somId methodId,
		somMethodPtr* m);
typedef somTP_ComponentManagerServer_somFindMethod *somTD_ComponentManagerServer_somFindMethod;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somFindMethodOk(ComponentManagerServer *somSelf,
		somId methodId,
		somMethodPtr* m);
typedef somTP_ComponentManagerServer_somFindMethodOk *somTD_ComponentManagerServer_somFindMethodOk;
typedef somMethodPtr   SOMLINK somTP_ComponentManagerServer_somFindSMethod(ComponentManagerServer *somSelf,
		somId methodId);
typedef somTP_ComponentManagerServer_somFindSMethod *somTD_ComponentManagerServer_somFindSMethod;
typedef somMethodPtr   SOMLINK somTP_ComponentManagerServer_somFindSMethodOk(ComponentManagerServer *somSelf,
		somId methodId);
typedef somTP_ComponentManagerServer_somFindSMethodOk *somTD_ComponentManagerServer_somFindSMethodOk;
typedef somMethodPtr   SOMLINK somTP_ComponentManagerServer_somLookupMethod(ComponentManagerServer *somSelf,
		somId methodId);
typedef somTP_ComponentManagerServer_somLookupMethod *somTD_ComponentManagerServer_somLookupMethod;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somCheckVersion(ComponentManagerServer *somSelf,
		long majorVersion,
		long minorVersion);
typedef somTP_ComponentManagerServer_somCheckVersion *somTD_ComponentManagerServer_somCheckVersion;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somDescendedFrom(ComponentManagerServer *somSelf,
		SOMClass* aClassObj);
typedef somTP_ComponentManagerServer_somDescendedFrom *somTD_ComponentManagerServer_somDescendedFrom;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somSupportsMethod(ComponentManagerServer *somSelf,
		somId mId);
typedef somTP_ComponentManagerServer_somSupportsMethod *somTD_ComponentManagerServer_somSupportsMethod;
typedef somMethodPtr   SOMLINK somTP_ComponentManagerServer_somDefinedMethod(ComponentManagerServer *somSelf,
		somMToken method);
typedef somTP_ComponentManagerServer_somDefinedMethod *somTD_ComponentManagerServer_somDefinedMethod;
typedef void   SOMLINK somTP_ComponentManagerServer_somOverrideMtab(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somOverrideMtab *somTD_ComponentManagerServer_somOverrideMtab;
typedef void   SOMLINK somTP_ComponentManagerServer_somDefaultInit(ComponentManagerServer *somSelf,
		somInitCtrl* ctrl);
typedef somTP_ComponentManagerServer_somDefaultInit *somTD_ComponentManagerServer_somDefaultInit;
typedef void   SOMLINK somTP_ComponentManagerServer_somDestruct(ComponentManagerServer *somSelf,
		octet doFree,
		somDestructCtrl* ctrl);
typedef somTP_ComponentManagerServer_somDestruct *somTD_ComponentManagerServer_somDestruct;
typedef void   SOMLINK somTP_ComponentManagerServer_somDefaultCopyInit(ComponentManagerServer *somSelf,
		somInitCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultCopyInit *somTD_ComponentManagerServer_somDefaultCopyInit;
typedef ComponentManagerServer*   SOMLINK somTP_ComponentManagerServer_somDefaultAssign(ComponentManagerServer *somSelf,
		somAssignCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultAssign *somTD_ComponentManagerServer_somDefaultAssign;
typedef void   SOMLINK somTP_ComponentManagerServer_somDefaultConstCopyInit(ComponentManagerServer *somSelf,
		somInitCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultConstCopyInit *somTD_ComponentManagerServer_somDefaultConstCopyInit;
typedef void   SOMLINK somTP_ComponentManagerServer_somDefaultVCopyInit(ComponentManagerServer *somSelf,
		somInitCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultVCopyInit *somTD_ComponentManagerServer_somDefaultVCopyInit;
typedef void   SOMLINK somTP_ComponentManagerServer_somDefaultConstVCopyInit(ComponentManagerServer *somSelf,
		somInitCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultConstVCopyInit *somTD_ComponentManagerServer_somDefaultConstVCopyInit;
typedef ComponentManagerServer*   SOMLINK somTP_ComponentManagerServer_somDefaultConstAssign(ComponentManagerServer *somSelf,
		somAssignCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultConstAssign *somTD_ComponentManagerServer_somDefaultConstAssign;
typedef ComponentManagerServer*   SOMLINK somTP_ComponentManagerServer_somDefaultVAssign(ComponentManagerServer *somSelf,
		somAssignCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultVAssign *somTD_ComponentManagerServer_somDefaultVAssign;
typedef ComponentManagerServer*   SOMLINK somTP_ComponentManagerServer_somDefaultConstVAssign(ComponentManagerServer *somSelf,
		somAssignCtrl* ctrl,
		SOMObject* fromObj);
typedef somTP_ComponentManagerServer_somDefaultConstVAssign *somTD_ComponentManagerServer_somDefaultConstVAssign;
typedef void   SOMLINK somTP_ComponentManagerServer_somInit(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somInit *somTD_ComponentManagerServer_somInit;
typedef void   SOMLINK somTP_ComponentManagerServer_somFree(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somFree *somTD_ComponentManagerServer_somFree;
typedef void   SOMLINK somTP_ComponentManagerServer_somUninit(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somUninit *somTD_ComponentManagerServer_somUninit;
typedef SOMMSingleInstance*   SOMLINK somTP_ComponentManagerServer_somGetClass(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetClass *somTD_ComponentManagerServer_somGetClass;
typedef string   SOMLINK somTP_ComponentManagerServer_somGetClassName(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetClassName *somTD_ComponentManagerServer_somGetClassName;
typedef long   SOMLINK somTP_ComponentManagerServer_somGetSize(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somGetSize *somTD_ComponentManagerServer_somGetSize;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somIsA(ComponentManagerServer *somSelf,
		SOMClass* aClassObj);
typedef somTP_ComponentManagerServer_somIsA *somTD_ComponentManagerServer_somIsA;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somIsInstanceOf(ComponentManagerServer *somSelf,
		SOMClass* aClassObj);
typedef somTP_ComponentManagerServer_somIsInstanceOf *somTD_ComponentManagerServer_somIsInstanceOf;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somRespondsTo(ComponentManagerServer *somSelf,
		somId mId);
typedef somTP_ComponentManagerServer_somRespondsTo *somTD_ComponentManagerServer_somRespondsTo;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somDispatch(ComponentManagerServer *somSelf,
		somToken* retValue,
		somId methodId,
		va_list ap);
typedef somTP_ComponentManagerServer_somDispatch *somTD_ComponentManagerServer_somDispatch;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somClassDispatch(ComponentManagerServer *somSelf,
		SOMClass* clsObj,
		somToken* retValue,
		somId methodId,
		va_list ap);
typedef somTP_ComponentManagerServer_somClassDispatch *somTD_ComponentManagerServer_somClassDispatch;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somCastObj(ComponentManagerServer *somSelf,
		SOMClass* cls);
typedef somTP_ComponentManagerServer_somCastObj *somTD_ComponentManagerServer_somCastObj;
typedef boolean   SOMLINK somTP_ComponentManagerServer_somResetObj(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somResetObj *somTD_ComponentManagerServer_somResetObj;
typedef SOMObject*   SOMLINK somTP_ComponentManagerServer_somPrintSelf(ComponentManagerServer *somSelf);
typedef somTP_ComponentManagerServer_somPrintSelf *somTD_ComponentManagerServer_somPrintSelf;
typedef void   SOMLINK somTP_ComponentManagerServer_somDumpSelf(ComponentManagerServer *somSelf,
		long level);
typedef somTP_ComponentManagerServer_somDumpSelf *somTD_ComponentManagerServer_somDumpSelf;
typedef void   SOMLINK somTP_ComponentManagerServer_somDumpSelfInt(ComponentManagerServer *somSelf,
		long level);
typedef somTP_ComponentManagerServer_somDumpSelfInt *somTD_ComponentManagerServer_somDumpSelfInt;
}

#endif /* ComponentManagerServer_API */


/*
 * -- This emitter believes that method thunks are unavailable,
 * -- so somResolve will be called.
 */
#undef somresolve_
#define somresolve_(obj,mToken) (somResolve(obj,mToken))

/*
 * -- The C++ Wrapper Class for ComponentManagerServer
 */
class ComponentManagerServer : public SOMClass
{
public:

// ComponentManagerServer::new creates the class object if necessary, and then uses somNewNoInit
// to allocate memory and create the object. Initialization is in ctors.
void *operator new(size_t)
{
   if (!_ComponentManagerServer) ComponentManagerServerNewClass(ComponentManagerServer_MajorVersion,ComponentManagerServer_MinorVersion);
   return (void*)
      SOM_Resolve(_ComponentManagerServer,SOMClass,somNewNoInit)
         ((SOMClass *)((void*)_ComponentManagerServer));
}

// ComponentManagerServer::delete uses somDestruct.
void operator delete(void * obj)
{
   if (obj && *(void**)obj) {
      SOM_Resolve(obj,SOMObject,somDestruct)
         ((SOMObject*)obj, 1, 0);
   }
}

ComponentManagerServer()
{
   if (*(void**)this != 
       ((somParentMtabStructPtr)
        (ComponentManagerServerCClassData.parentMtab))->mtab)
      return;
   ((SOMObject*)((void*)this))->somDefaultInit(0);
}

ComponentManagerServer(ComponentManagerServer* fromObj)
{
   if (*(void**)this != 
       ((somParentMtabStructPtr)
        (ComponentManagerServerCClassData.parentMtab))->mtab)
      return;
   ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
}

ComponentManagerServer(const ComponentManagerServer* fromObj)
{
   if (*(void**)this != 
       ((somParentMtabStructPtr)
        (ComponentManagerServerCClassData.parentMtab))->mtab)
      return;
   ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
}


/* method: CountComponents */
ODULong   CountComponents(Environment *ev,
		ComponentDescription* plooking)
{
#ifdef SOMCHKEXCEPT
   ODULong __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,CountComponents)
	(this, ev,plooking);
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
   return __somResult;
#else
   return SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,CountComponents)
	(this, ev,plooking);
#endif
}


/* method: FindNextComponent */
OSErr   FindNextComponent(Environment *ev,
		ComponentDescription* plastFound,
		ComponentDescription* plooking,
		ComponentDescription* pfound)
{
#ifdef SOMCHKEXCEPT
   OSErr __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,FindNextComponent)
	(this, ev,plastFound,plooking,pfound);
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
   return __somResult;
#else
   return SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,FindNextComponent)
	(this, ev,plastFound,plooking,pfound);
#endif
}


/* method: GetComponentInfo */
OSErr   GetComponentInfo(Environment *ev,
		ComponentDescription* ptheComponent,
		string* pcomponentClassName,
		string* pcomponentDLL,
		string* pcomponentName,
		string* pcomponentInfo)
{
#ifdef SOMCHKEXCEPT
   OSErr __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,GetComponentInfo)
	(this, ev,ptheComponent,pcomponentClassName,pcomponentDLL,pcomponentName,pcomponentInfo);
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
   return __somResult;
#else
   return SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,GetComponentInfo)
	(this, ev,ptheComponent,pcomponentClassName,pcomponentDLL,pcomponentName,pcomponentInfo);
#endif
}


/* method: GetComponentRefcon */
ODSLong   GetComponentRefcon(Environment *ev,
		ComponentDescription* ptheComponent)
{
#ifdef SOMCHKEXCEPT
   ODSLong __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,GetComponentRefcon)
	(this, ev,ptheComponent);
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
   return __somResult;
#else
   return SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,GetComponentRefcon)
	(this, ev,ptheComponent);
#endif
}


/* method: SetComponentRefcon */
void   SetComponentRefcon(Environment *ev,
		ComponentDescription* ptheComponent,
		ODSLong Refcon)
{
   SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,SetComponentRefcon)
	(this, ev,ptheComponent,Refcon);
#ifdef SOMCHKEXCEPT
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
#endif
}


/* method: OpenComponent */
void   OpenComponent(Environment *ev,
		ComponentDescription* ptheComponent,
		string* pcomponentClassName,
		string* pcomponentClassDLL,
		ODULong* pcomponentVersion)
{
   SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,OpenComponent)
	(this, ev,ptheComponent,pcomponentClassName,pcomponentClassDLL,pcomponentVersion);
#ifdef SOMCHKEXCEPT
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
#endif
}


/* method: OpenDefaultComponent */
void   OpenDefaultComponent(Environment *ev,
		OSType componentType,
		OSType componentSubType,
		string* pcomponentClassName,
		string* pcomponentClassDLL,
		ODULong* pcomponentVersion)
{
   SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,OpenDefaultComponent)
	(this, ev,componentType,componentSubType,pcomponentClassName,pcomponentClassDLL,pcomponentVersion);
#ifdef SOMCHKEXCEPT
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
#endif
}


/* method: InstallComponent */
OSErr   InstallComponent(Environment *ev,
		ComponentRegistryData* ptheData)
{
#ifdef SOMCHKEXCEPT
   OSErr __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,InstallComponent)
	(this, ev,ptheData);
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
   return __somResult;
#else
   return SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,InstallComponent)
	(this, ev,ptheData);
#endif
}


/* method: UninstallComponent */
OSErr   UninstallComponent(Environment *ev,
		OSType componentType,
		OSType componentSubType)
{
#ifdef SOMCHKEXCEPT
   OSErr __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,UninstallComponent)
	(this, ev,componentType,componentSubType);
   if ( ev->_major != NO_EXCEPTION )
      SOMCHKEXCEPT;
   return __somResult;
#else
   return SOM_ResolveD(this,ComponentManagerServer,ComponentManagerServer,UninstallComponent)
	(this, ev,componentType,componentSubType);
#endif
}


/*
 * Reintroduce inherited methods
 */

/* method: _get_somDataAlignment */
long   _get_somDataAlignment()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,_get_somDataAlignment)
	(this);
}


/* nonstatic method: _get_somInstanceDataOffsets */
SOMClass_somOffsets   _get_somInstanceDataOffsets()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,_get_somInstanceDataOffsets)
	(this);
}


/* nonstatic method: _get_somDirectInitClasses */
SOMClass_SOMClassSequence   _get_somDirectInitClasses()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,_get_somDirectInitClasses)
	(this);
}


/* nonstatic method: _set_somDirectInitClasses */
void   _set_somDirectInitClasses(SOMClass_SOMClassSequence* somDirectInitClasses)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,_set_somDirectInitClasses)
	(this,somDirectInitClasses);
}


/* method: somNew */
SOMObject*   somNew()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somNew)
	(this);
}


/* method: somNewNoInit */
SOMObject*   somNewNoInit()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somNewNoInit)
	(this);
}


/* method: somRenew */
SOMObject*   somRenew(void* obj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somRenew)
	(this,obj);
}


/* method: somRenewNoInit */
SOMObject*   somRenewNoInit(void* obj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somRenewNoInit)
	(this,obj);
}


/* method: somRenewNoZero */
SOMObject*   somRenewNoZero(void* obj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somRenewNoZero)
	(this,obj);
}


/* method: somRenewNoInitNoZero */
SOMObject*   somRenewNoInitNoZero(void* obj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somRenewNoInitNoZero)
	(this,obj);
}


/* nonstatic method: somAllocate */
string   somAllocate(long size)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somAllocate)
	(this,size);
}


/* nonstatic method: somDeallocate */
void   somDeallocate(string memptr)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somDeallocate)
	(this,memptr);
}


/* nonstatic method: _get_somClassAllocate */
somMethodProc*   _get_somClassAllocate()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,_get_somClassAllocate)
	(this);
}


/* nonstatic method: _get_somClassDeallocate */
somMethodProc*   _get_somClassDeallocate()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,_get_somClassDeallocate)
	(this);
}


/* method: somGetInstanceInitMask */
somBooleanVector   somGetInstanceInitMask(somInitCtrl* ctrl)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetInstanceInitMask)
	(this,ctrl);
}


/* method: somGetInstanceDestructionMask */
somBooleanVector   somGetInstanceDestructionMask(somDestructCtrl* ctrl)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetInstanceDestructionMask)
	(this,ctrl);
}


/* method: somGetInstanceAssignmentMask */
somBooleanVector   somGetInstanceAssignmentMask(somAssignCtrl* ctrl)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetInstanceAssignmentMask)
	(this,ctrl);
}


/* method: somInitClass */
void   somInitClass(string className,
		SOMClass* parentClass,
		long dataSize,
		long maxStaticMethods,
		long majorVersion,
		long minorVersion)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somInitClass)
	(this,className,parentClass,dataSize,maxStaticMethods,majorVersion,minorVersion);
}


/* method: somInitMIClass */
void   somInitMIClass(long inherit_vars,
		string className,
		SOMClass_SOMClassSequence* parentClasses,
		long dataSize,
		long dataAlignment,
		long maxStaticMethods,
		long majorVersion,
		long minorVersion)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somInitMIClass)
	(this,inherit_vars,className,parentClasses,dataSize,dataAlignment,maxStaticMethods,majorVersion,minorVersion);
}


/* method: somAddStaticMethod */
somMToken   somAddStaticMethod(somId methodId,
		somId methodDescriptor,
		somMethodPtr method,
		somMethodPtr redispatchStub,
		somMethodPtr applyStub)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somAddStaticMethod)
	(this,methodId,methodDescriptor,method,redispatchStub,applyStub);
}


/* method: somAddDynamicMethod */
void   somAddDynamicMethod(somId methodId,
		somId methodDescriptor,
		somMethodPtr method,
		somMethodPtr applyStub)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somAddDynamicMethod)
	(this,methodId,methodDescriptor,method,applyStub);
}


/* method: somOverrideSMethod */
void   somOverrideSMethod(somId methodId,
		somMethodPtr method)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somOverrideSMethod)
	(this,methodId,method);
}


/* method: somClassReady */
void   somClassReady()
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somClassReady)
	(this);
}


/* method: somGetClassData */
somClassDataStructure*   somGetClassData()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetClassData)
	(this);
}


/* method: somSetClassData */
void   somSetClassData(somClassDataStructure* cds)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somSetClassData)
	(this,cds);
}


/* method: somGetClassMtab */
somMethodTab*   somGetClassMtab()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetClassMtab)
	(this);
}


/* method: somGetInstanceOffset */
long   somGetInstanceOffset()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetInstanceOffset)
	(this);
}


/* method: somGetInstancePartSize */
long   somGetInstancePartSize()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetInstancePartSize)
	(this);
}


/* method: somGetInstanceSize */
long   somGetInstanceSize()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetInstanceSize)
	(this);
}


/* method: somGetInstanceToken */
somDToken   somGetInstanceToken()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetInstanceToken)
	(this);
}


/* method: somGetMemberToken */
somDToken   somGetMemberToken(long memberOffset,
		somDToken instanceToken)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetMemberToken)
	(this,memberOffset,instanceToken);
}


/* method: somGetMethodData */
boolean   somGetMethodData(somId methodId,
		somMethodData* md)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetMethodData)
	(this,methodId,md);
}


/* method: somGetRdStub */
somMethodProc*   somGetRdStub(somId methodId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetRdStub)
	(this,methodId);
}


/* method: somGetMethodDescriptor */
somId   somGetMethodDescriptor(somId methodId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetMethodDescriptor)
	(this,methodId);
}


/* method: somGetMethodIndex */
long   somGetMethodIndex(somId id)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetMethodIndex)
	(this,id);
}


/* method: somGetMethodToken */
somMToken   somGetMethodToken(somId methodId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetMethodToken)
	(this,methodId);
}


/* method: somGetName */
string   somGetName()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetName)
	(this);
}


/* method: somGetNthMethodData */
boolean   somGetNthMethodData(long n,
		somMethodData* md)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetNthMethodData)
	(this,n,md);
}


/* method: somGetNthMethodInfo */
somId   somGetNthMethodInfo(long n,
		somId* descriptor)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetNthMethodInfo)
	(this,n,descriptor);
}


/* method: somGetNumMethods */
long   somGetNumMethods()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetNumMethods)
	(this);
}


/* method: somGetNumStaticMethods */
long   somGetNumStaticMethods()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetNumStaticMethods)
	(this);
}


/* method: somGetParent */
SOMClass*   somGetParent()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetParent)
	(this);
}


/* method: somGetParents */
SOMClass_SOMClassSequence   somGetParents()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetParents)
	(this);
}


/* method: somGetPClsMtab */
somMethodTabs   somGetPClsMtab()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetPClsMtab)
	(this);
}


/* method: somGetPClsMtabs */
somMethodTabs   somGetPClsMtabs()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetPClsMtabs)
	(this);
}


/* method: somGetVersionNumbers */
void   somGetVersionNumbers(long* majorVersion,
		long* minorVersion)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somGetVersionNumbers)
	(this,majorVersion,minorVersion);
}


/* method: somSetMethodDescriptor */
boolean   somSetMethodDescriptor(somId methodId,
		somId descriptor)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somSetMethodDescriptor)
	(this,methodId,descriptor);
}


/* method: somFindMethod */
boolean   somFindMethod(somId methodId,
		somMethodPtr* m)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somFindMethod)
	(this,methodId,m);
}


/* method: somFindMethodOk */
boolean   somFindMethodOk(somId methodId,
		somMethodPtr* m)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somFindMethodOk)
	(this,methodId,m);
}


/* method: somFindSMethod */
somMethodPtr   somFindSMethod(somId methodId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somFindSMethod)
	(this,methodId);
}


/* method: somFindSMethodOk */
somMethodPtr   somFindSMethodOk(somId methodId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somFindSMethodOk)
	(this,methodId);
}


/* method: somLookupMethod */
somMethodPtr   somLookupMethod(somId methodId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somLookupMethod)
	(this,methodId);
}


/* method: somCheckVersion */
boolean   somCheckVersion(long majorVersion,
		long minorVersion)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somCheckVersion)
	(this,majorVersion,minorVersion);
}


/* method: somDescendedFrom */
boolean   somDescendedFrom(SOMClass* aClassObj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somDescendedFrom)
	(this,aClassObj);
}


/* method: somSupportsMethod */
boolean   somSupportsMethod(somId mId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somSupportsMethod)
	(this,mId);
}


/* method: somDefinedMethod */
somMethodPtr   somDefinedMethod(somMToken method)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMClass,somDefinedMethod)
	(this,method);
}


/* method: somOverrideMtab */
void   somOverrideMtab()
{
   SOM_ResolveD(this,ComponentManagerServer,SOMClass,somOverrideMtab)
	(this);
}


/* initializer method: somDefaultInit */
void   somDefaultInit(somInitCtrl* ctrl)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultInit)
	(this,ctrl);
}


/* method: somDestruct */
void   somDestruct(octet doFree,
		somDestructCtrl* ctrl)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDestruct)
	(this,doFree,ctrl);
}


/* initializer method: somDefaultCopyInit */
void   somDefaultCopyInit(somInitCtrl* ctrl,
		SOMObject* fromObj)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultCopyInit)
	(this,ctrl,fromObj);
}


/* method: somDefaultAssign */
ComponentManagerServer*  somDefaultAssign(somAssignCtrl* ctrl,
		SOMObject* fromObj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultAssign)
	(this,ctrl,fromObj);
}


/* initializer method: somDefaultConstCopyInit */
void   somDefaultConstCopyInit(somInitCtrl* ctrl,
		SOMObject* fromObj)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultConstCopyInit)
	(this,ctrl,fromObj);
}


/* initializer method: somDefaultVCopyInit */
void   somDefaultVCopyInit(somInitCtrl* ctrl,
		SOMObject* fromObj)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultVCopyInit)
	(this,ctrl,fromObj);
}


/* initializer method: somDefaultConstVCopyInit */
void   somDefaultConstVCopyInit(somInitCtrl* ctrl,
		SOMObject* fromObj)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultConstVCopyInit)
	(this,ctrl,fromObj);
}


/* method: somDefaultConstAssign */
ComponentManagerServer*  somDefaultConstAssign(somAssignCtrl* ctrl,
		SOMObject* fromObj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultConstAssign)
	(this,ctrl,fromObj);
}


/* method: somDefaultVAssign */
ComponentManagerServer*  somDefaultVAssign(somAssignCtrl* ctrl,
		SOMObject* fromObj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultVAssign)
	(this,ctrl,fromObj);
}


/* method: somDefaultConstVAssign */
ComponentManagerServer*  somDefaultConstVAssign(somAssignCtrl* ctrl,
		SOMObject* fromObj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDefaultConstVAssign)
	(this,ctrl,fromObj);
}


/* method: somInit */
void   somInit()
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somInit)
	(this);
}


/* method: somFree */
void   somFree()
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somFree)
	(this);
}


/* method: somUninit */
void   somUninit()
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somUninit)
	(this);
}


/* method: somGetClass */
SOMMSingleInstance*  somGetClass()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somGetClass)
	(this);
}


/* method: somGetClassName */
string   somGetClassName()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somGetClassName)
	(this);
}


/* method: somGetSize */
long   somGetSize()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somGetSize)
	(this);
}


/* method: somIsA */
boolean   somIsA(SOMClass* aClassObj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somIsA)
	(this,aClassObj);
}


/* method: somIsInstanceOf */
boolean   somIsInstanceOf(SOMClass* aClassObj)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somIsInstanceOf)
	(this,aClassObj);
}


/* method: somRespondsTo */
boolean   somRespondsTo(somId mId)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somRespondsTo)
	(this,mId);
}


/* va_list method: somDispatch */
/* the va_list invocation form */
boolean   ComponentManagerServer_somDispatch(somToken* retValue,
		somId methodId,
		va_list ap)
{
return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDispatch)
	(this,retValue,methodId,ap);
}

/* the varargs invocation form */
boolean   somDispatch(somToken* retValue,
		somId methodId,
		...)
{
   va_list ap;
   va_start(ap, methodId);
   boolean __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDispatch)
	(this,retValue,methodId,ap);
   va_end(ap);
   return __somResult;
}


/* va_list method: somClassDispatch */
/* the va_list invocation form */
boolean   ComponentManagerServer_somClassDispatch(SOMClass* clsObj,
		somToken* retValue,
		somId methodId,
		va_list ap)
{
return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somClassDispatch)
	(this,clsObj,retValue,methodId,ap);
}

/* the varargs invocation form */
boolean   somClassDispatch(SOMClass* clsObj,
		somToken* retValue,
		somId methodId,
		...)
{
   va_list ap;
   va_start(ap, methodId);
   boolean __somResult = 
      SOM_ResolveD(this,ComponentManagerServer,SOMObject,somClassDispatch)
	(this,clsObj,retValue,methodId,ap);
   va_end(ap);
   return __somResult;
}


/* method: somCastObj */
boolean   somCastObj(SOMClass* cls)
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somCastObj)
	(this,cls);
}


/* method: somResetObj */
boolean   somResetObj()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somResetObj)
	(this);
}


/* method: somPrintSelf */
SOMObject*   somPrintSelf()
{
   return SOM_ResolveD(this,ComponentManagerServer,SOMObject,somPrintSelf)
	(this);
}


/* method: somDumpSelf */
void   somDumpSelf(long level)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDumpSelf)
	(this,level);
}


/* method: somDumpSelfInt */
void   somDumpSelfInt(long level)
{
   SOM_ResolveD(this,ComponentManagerServer,SOMObject,somDumpSelfInt)
	(this,level);
}



};   /* ComponentManagerServer */



#endif       /* SOM_ComponentManagerServer_xh */
