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

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

#ifndef wpjob_xh
#define wpjob_xh
class WPJob;

#define WPJob_MajorVersion 1
#define WPJob_MinorVersion 1


/*
 * Passthru lines: File: "C.xh", "before"
 */
/* C++ som defs */
#include <somcls.xh>

/* C++ parent def */
#ifndef wptrans_xh
#include "wptrans.xh"
#endif

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

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

/* A macro to return the WPJob class object */
class M_WPJob;
#define _WPJob ((M_WPJob*)WPJobClassData.classObject)

/* The static interface to WPJob and its instances */
SOMEXTERN struct WPJobClassDataStructure {
	SOMClass *classObject;
	somMToken prtGetJobID;
	somMToken prtSetJobID;
	somMToken prtGetJobInfo2;
	somMToken prtSetJobInfo2;
	somMToken prtGetJobInfo3;
	somMToken prtSetJobInfo3;
	somMToken prtFreeJobInfo2;
	somMToken prtFreeJobInfo3;
	somMToken prtGetPDObject;
	somMToken prtSetPDObject;
	somMToken prtGetDocument;
	somMToken prtSetDocument;
	somMToken prtDupJobInfo2;
	somMToken prtDupJobInfo3;
	somMToken wpDeleteJob;
	somMToken wpHoldJob;
	somMToken wpReleaseJob;
	somMToken wpPrintJobNext;
	somMToken wpStartJobAgain;
} WPJobClassData;

/*
 * -- Typedefs for Procedures that support WPJob Methods
 */
extern "C" {
typedef BOOL    (SOMLINK *somTD_WPJob_wpDeleteJob)(WPJob *somSelf);
typedef BOOL    (SOMLINK *somTD_WPJob_wpHoldJob)(WPJob *somSelf);
typedef BOOL    (SOMLINK *somTD_WPJob_wpReleaseJob)(WPJob *somSelf);
typedef BOOL    (SOMLINK *somTD_WPJob_wpPrintJobNext)(WPJob *somSelf);
typedef BOOL    (SOMLINK *somTD_WPJob_wpStartJobAgain)(WPJob *somSelf);
}


#endif /* WPJob_API */


/*
 * -- The C++ Wrapper Class for WPJob
 */
class WPJob : public WPTransient
{
public:

void *operator new(size_t size)
{
   (void) size;
   if (!WPJobClassData.classObject) 
      WPJobNewClass(WPJob_MajorVersion,WPJob_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(WPJobClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(WPJobClassData.classObject));
}

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

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


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


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


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


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



};   /* WPJob */



#endif       /* wpjob_xh */

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

#define M_WPJob_MajorVersion 1
#define M_WPJob_MinorVersion 1

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

/* C++ parent def */
#ifndef wptrans_xh
#include "wptrans.xh"
#endif

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

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

/* A macro to return the M_WPJob class object */
#define _M_WPJob ((SOMClass*)M_WPJobClassData.classObject)

/* The static interface to M_WPJob and its instances */
SOMEXTERN struct M_WPJobClassDataStructure {
	SOMClass *classObject;
} M_WPJobClassData;

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


#endif /* M_WPJob_API */


/*
 * -- The C++ Wrapper Class for M_WPJob
 */
class M_WPJob : public M_WPTransient
{
public:

void *operator new(size_t size)
{
   (void) size;
   if (!M_WPJobClassData.classObject) 
      M_WPJobNewClass(M_WPJob_MajorVersion,M_WPJob_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(M_WPJobClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(M_WPJobClassData.classObject));
}

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


};   /* M_WPJob */



#endif       /* wpjob_mxh */
