
/*
 * This file was generated by the SOM Compiler.
 * FileName: wpclock.xh.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emitxh: 1.11
 */

/*
 * 
 *  Module Header
 * 
 *  Module Name: WPCLOCK
 * 
 *  OS/2 Presentation Manager Workplace class definitions
 * 
 *  Copyright (c) International Business Machines Corporation 1991, 1992
 * 
 */

#ifndef wpclock_xh
#define wpclock_xh
class WPClock;

#define WPClock_MajorVersion 1
#define WPClock_MinorVersion 2

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

/* C++ parent def */
#ifndef wpabs_xh
#include "wpabs.xh"
#endif

#ifndef WPClock_API
#define WPClock_API
/*
 * The Class API
 */

/* A procedure to create the WPClock Class */
SOMEXTERN SOMClass * SOMLINK WPClockNewClass(
		integer4 majorVersion,
		integer4 minorVersion);

/* A macro to return the WPClock class object */
class M_WPClock;
#define _WPClock ((M_WPClock*)WPClockClassData.classObject)

/* The static interface to WPClock and its instances */
SOMEXTERN struct WPClockClassDataStructure {
	SOMClass *classObject;
	somMToken wpAddClockView1Page;
	somMToken wpAddClockView2Page;
	somMToken wpAddClockDateTimePage;
	somMToken wpAddClockAlarmPage;
} WPClockClassData;

/*
 * -- Typedefs for Procedures that support WPClock Methods
 */
extern "C" {
typedef ULONG    (SOMLINK *somTD_WPClock_wpAddClockView1Page)(WPClock *somSelf,HWND hwndNotebook);
typedef ULONG    (SOMLINK *somTD_WPClock_wpAddClockView2Page)(WPClock *somSelf,HWND hwndNotebook);
typedef ULONG    (SOMLINK *somTD_WPClock_wpAddClockDateTimePage)(WPClock *somSelf,HWND hwndNotebook);
typedef ULONG    (SOMLINK *somTD_WPClock_wpAddClockAlarmPage)(WPClock *somSelf,HWND hwndNotebook);
}


#endif /* WPClock_API */


/*
 * -- The C++ Wrapper Class for WPClock
 */
class WPClock : public WPAbstract
{
public:

void *operator new(size_t size)
{
   (void) size;
   if (!WPClockClassData.classObject) 
      WPClockNewClass(WPClock_MajorVersion,WPClock_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(WPClockClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(WPClockClassData.classObject));
}

void operator delete(void * obj)
{
   ((SOMObject *)obj)->somFree();
}

/* public method: wpAddClockView1Page */
ULONG    wpAddClockView1Page(HWND hwndNotebook)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPClock,wpAddClockView1Page)
	(this,hwndNotebook);
}


/* public method: wpAddClockView2Page */
ULONG    wpAddClockView2Page(HWND hwndNotebook)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPClock,wpAddClockView2Page)
	(this,hwndNotebook);
}


/* public method: wpAddClockDateTimePage */
ULONG    wpAddClockDateTimePage(HWND hwndNotebook)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPClock,wpAddClockDateTimePage)
	(this,hwndNotebook);
}


/* public method: wpAddClockAlarmPage */
ULONG    wpAddClockAlarmPage(HWND hwndNotebook)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPClock,wpAddClockAlarmPage)
	(this,hwndNotebook);
}



};   /* WPClock */



#endif       /* wpclock_xh */

/*
 * This file was generated by the SOM Compiler.
 * FileName: wpclock.xh.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emitxh: 1.11
 */
#ifndef wpclock_mxh
#define wpclock_mxh
class M_WPClock;

#define M_WPClock_MajorVersion 1
#define M_WPClock_MinorVersion 2

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

/* C++ parent def */
#ifndef wpabs_xh
#include "wpabs.xh"
#endif

#ifndef M_WPClock_API
#define M_WPClock_API
/*
 * The Class API
 */

/* A procedure to create the M_WPClock Class */
SOMEXTERN SOMClass * SOMLINK M_WPClockNewClass(
		integer4 majorVersion,
		integer4 minorVersion);

/* A macro to return the M_WPClock class object */
#define _M_WPClock ((SOMClass*)M_WPClockClassData.classObject)

/* The static interface to M_WPClock and its instances */
SOMEXTERN struct M_WPClockClassDataStructure {
	SOMClass *classObject;
} M_WPClockClassData;

/*
 * -- Typedefs for Procedures that support M_WPClock Methods
 */
extern "C" {
}


#endif /* M_WPClock_API */


/*
 * -- The C++ Wrapper Class for M_WPClock
 */
class M_WPClock : public M_WPAbstract
{
public:

void *operator new(size_t size)
{
   (void) size;
   if (!M_WPClockClassData.classObject) 
      M_WPClockNewClass(M_WPClock_MajorVersion,M_WPClock_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(M_WPClockClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(M_WPClockClassData.classObject));
}

void operator delete(void * obj)
{
   ((SOMObject *)obj)->somFree();
}


};   /* M_WPClock */



#endif       /* wpclock_mxh */
