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

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

#ifndef wpprint_xh
#define wpprint_xh
class WPPrinter;

#define WPPrinter_MajorVersion 1
#define WPPrinter_MinorVersion 1

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

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

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

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

/* A macro to return the WPPrinter class object */
class M_WPPrinter;
#define _WPPrinter ((M_WPPrinter*)WPPrinterClassData.classObject)

/* The static interface to WPPrinter and its instances */
SOMEXTERN struct WPPrinterClassDataStructure {
	SOMClass *classObject;
	somMToken pdvNew;
	somMToken pdvOpen;
	somMToken pdvPrintDestType;
	somMToken pdvQueueName;
	somMToken pdvComputerName;
	somMToken pdvSetViewStatus;
	somMToken pdvSetDialogPrintFlag;
	somMToken pdvIsDialogPrintOn;
	somMToken pdvGetJobFolderhWnd;
	somMToken pdvSetPrintDestType;
	somMToken pdvSetQueueName;
	somMToken pdvSetComputerName;
	somMToken pdvSetTitle;
	somMToken pdvHoldQueue;
	somMToken pdvReleaseQueue;
	somMToken pdvChangeQueue;
	somMToken pdvAddJob;
	somMToken pdvDeleteJob;
	somMToken pdvDeleteAllJob;
	somMToken pdvHoldJob;
	somMToken pdvReleaseJob;
	somMToken pdvChangeJob;
	somMToken pdvHasThisPort;
	somMToken pdvHasThisPDriver;
	somMToken pdvHasThisQDriver;
	somMToken pdvGetQueueObject;
	somMToken pdvGetCountryData;
	somMToken pdvSetCountryData;
	somMToken pdvGetJobDetailTable;
	somMToken pdvGetJobFieldInfo;
	somMToken pdvPrintPD;
	somMToken pdvFreePrintDest;
	somMToken pdvNewRemote;
	somMToken pdvCopyRemote;
	somMToken pdvCapabilities;
	somMToken pdvSetCapabilities;
	somMToken pdvLogonName;
	somMToken pdvSetLogonName;
	somMToken pdvLocalPrintDriverOnly;
	somMToken pdvSetLocalPrintDriverOnly;
	somMToken pdvRemotePDriverList;
	somMToken pdvSetRemotePDriverList;
	somMToken pdvPrintSpecificFormat;
	somMToken pdvSetPrintSpecificFormat;
	somMToken pdvRemoteAdminCopy;
	somMToken pdvRemoteAdminCreate;
	somMToken pdvRemoteAdminDelete;
	somMToken pdvAddJobViewer;
	somMToken pdvDelJobViewer;
	somMToken pdvTimerTicks;
	somMToken pdvSetTimerTicks;
	somMToken wpDeleteAllJobs;
	somMToken wpHoldPrinter;
	somMToken wpReleasePrinter;
	somMToken wpQueryComputerName;
	somMToken wpQueryPrinterName;
	somMToken wpSetComputerName;
	somMToken wpSetPrinterName;
	somMToken wpSetDefaultPrinter;
	somMToken pdvSetLSAlias;
	somMToken pdvLSAlias;
	somMToken pdvLocalAlias;
	somMToken pdvSetLocalAlias;
	somMToken pdvRemoteJobView;
	somMToken pdvSetRemoteData;
	somMToken pdvCopy;
	somMToken pdvSetJobDetailTable;
	somMToken pdvGetQueueStatusLine;
	somMToken pdvSetQueueStatusLine;
	somMToken pdvGetNewDlg;
	somMToken pdvSetNewDlg;
	somMToken pdvGetLastRefreshTime;
	somMToken pdvSetLastRefreshTime;
} WPPrinterClassData;

/*
 * -- Typedefs for Procedures that support WPPrinter Methods
 */
extern "C" {
typedef BOOL    (SOMLINK *somTD_WPPrinter_wpDeleteAllJobs)(WPPrinter *somSelf);
typedef BOOL    (SOMLINK *somTD_WPPrinter_wpHoldPrinter)(WPPrinter *somSelf);
typedef BOOL    (SOMLINK *somTD_WPPrinter_wpReleasePrinter)(WPPrinter *somSelf);
typedef ULONG    (SOMLINK *somTD_WPPrinter_wpQueryComputerName)(WPPrinter *somSelf,PSZ pszComputerName);
typedef BOOL    (SOMLINK *somTD_WPPrinter_wpQueryPrinterName)(WPPrinter *somSelf,PSZ pszPrinterName);
typedef BOOL    (SOMLINK *somTD_WPPrinter_wpSetComputerName)(WPPrinter *somSelf,PSZ pszComputerName);
typedef BOOL    (SOMLINK *somTD_WPPrinter_wpSetPrinterName)(WPPrinter *somSelf,PSZ pszPrinterName);
typedef BOOL    (SOMLINK *somTD_WPPrinter_wpSetDefaultPrinter)(WPPrinter *somSelf);
}


#endif /* WPPrinter_API */


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

void *operator new(size_t size)
{
   (void) size;
   if (!WPPrinterClassData.classObject) 
      WPPrinterNewClass(WPPrinter_MajorVersion,WPPrinter_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(WPPrinterClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(WPPrinterClassData.classObject));
}

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

/* public method: wpDeleteAllJobs */
BOOL    wpDeleteAllJobs()
{
   return (BOOL) SOM_Resolve((SOMAny *)this,WPPrinter,wpDeleteAllJobs)
	(this);
}


/* public method: wpHoldPrinter */
BOOL    wpHoldPrinter()
{
   return (BOOL) SOM_Resolve((SOMAny *)this,WPPrinter,wpHoldPrinter)
	(this);
}


/* public method: wpReleasePrinter */
BOOL    wpReleasePrinter()
{
   return (BOOL) SOM_Resolve((SOMAny *)this,WPPrinter,wpReleasePrinter)
	(this);
}


/* public method: wpQueryComputerName */
ULONG    wpQueryComputerName(PSZ pszComputerName)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPPrinter,wpQueryComputerName)
	(this,pszComputerName);
}


/* public method: wpQueryPrinterName */
BOOL    wpQueryPrinterName(PSZ pszPrinterName)
{
   return (BOOL) SOM_Resolve((SOMAny *)this,WPPrinter,wpQueryPrinterName)
	(this,pszPrinterName);
}


/* public method: wpSetComputerName */
BOOL    wpSetComputerName(PSZ pszComputerName)
{
   return (BOOL) SOM_Resolve((SOMAny *)this,WPPrinter,wpSetComputerName)
	(this,pszComputerName);
}


/* public method: wpSetPrinterName */
BOOL    wpSetPrinterName(PSZ pszPrinterName)
{
   return (BOOL) SOM_Resolve((SOMAny *)this,WPPrinter,wpSetPrinterName)
	(this,pszPrinterName);
}


/* public method: wpSetDefaultPrinter */
BOOL    wpSetDefaultPrinter()
{
   return (BOOL) SOM_Resolve((SOMAny *)this,WPPrinter,wpSetDefaultPrinter)
	(this);
}



};   /* WPPrinter */



#endif       /* wpprint_xh */

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

#define M_WPPrinter_MajorVersion 1
#define M_WPPrinter_MinorVersion 1

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

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

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

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

/* A macro to return the M_WPPrinter class object */
#define _M_WPPrinter ((SOMClass*)M_WPPrinterClassData.classObject)

/* The static interface to M_WPPrinter and its instances */
SOMEXTERN struct M_WPPrinterClassDataStructure {
	SOMClass *classObject;
} M_WPPrinterClassData;

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


#endif /* M_WPPrinter_API */


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

void *operator new(size_t size)
{
   (void) size;
   if (!M_WPPrinterClassData.classObject) 
      M_WPPrinterNewClass(M_WPPrinter_MajorVersion,M_WPPrinter_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(M_WPPrinterClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(M_WPPrinterClassData.classObject));
}

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


};   /* M_WPPrinter */



#endif       /* wpprint_mxh */
