home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / devtools / toolkt21 / cplus / os2h / wpspool.xh < prev    next >
Encoding:
Text File  |  1993-05-02  |  3.7 KB  |  183 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: wpspool.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler spc: 1.22
  7.  *     SOM Emitter emitxh: 1.11
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Module Header
  13.  * 
  14.  *  Module Name: WPSPOOL
  15.  * 
  16.  *  OS/2 Presentation Manager Workplace class definitions
  17.  * 
  18.  *  Copyright (c) International Business Machines Corporation 1991, 1992
  19.  * 
  20.  */
  21.  
  22. #ifndef wpspool_xh
  23. #define wpspool_xh
  24. class WPSpool;
  25.  
  26. #define WPSpool_MajorVersion 1
  27. #define WPSpool_MinorVersion 1
  28.  
  29. /* C++ som defs */
  30. #include <somcls.xh>
  31.  
  32. /* C++ parent def */
  33. #ifndef wpabs_xh
  34. #include "wpabs.xh"
  35. #endif
  36.  
  37. #ifndef WPSpool_API
  38. #define WPSpool_API
  39. /*
  40.  * The Class API
  41.  */
  42.  
  43. /* A procedure to create the WPSpool Class */
  44. SOMEXTERN SOMClass * SOMLINK WPSpoolNewClass(
  45.         integer4 majorVersion,
  46.         integer4 minorVersion);
  47.  
  48. /* A macro to return the WPSpool class object */
  49. class M_WPSpool;
  50. #define _WPSpool ((M_WPSpool*)WPSpoolClassData.classObject)
  51.  
  52. /* The static interface to WPSpool and its instances */
  53. SOMEXTERN struct WPSpoolClassDataStructure {
  54.     SOMClass *classObject;
  55.     somMToken AddSetPathPage;
  56.     somMToken AddSetPriorityPage;
  57. } WPSpoolClassData;
  58.  
  59. /*
  60.  * -- Typedefs for Procedures that support WPSpool Methods
  61.  */
  62. extern "C" {
  63. }
  64.  
  65.  
  66. #endif /* WPSpool_API */
  67.  
  68.  
  69. /*
  70.  * -- The C++ Wrapper Class for WPSpool
  71.  */
  72. class WPSpool : public WPAbstract
  73. {
  74. public:
  75.  
  76. void *operator new(size_t size)
  77. {
  78.    (void) size;
  79.    if (!WPSpoolClassData.classObject) 
  80.       WPSpoolNewClass(WPSpool_MajorVersion,WPSpool_MinorVersion);
  81.    return (void *)
  82.       ((somTD_SOMClass_somNew)
  83.       somResolve(SOM_TestCls((SOMAny *)(WPSpoolClassData.classObject),
  84.                              SOMClassClassData.classObject),
  85.                  SOMClassClassData.somNew))
  86.          ((SOMClass*)(WPSpoolClassData.classObject));
  87. }
  88.  
  89. void operator delete(void * obj)
  90. {
  91.    ((SOMObject *)obj)->somFree();
  92. }
  93.  
  94.  
  95. };   /* WPSpool */
  96.  
  97.  
  98.  
  99. #endif       /* wpspool_xh */
  100.  
  101. /*
  102.  * This file was generated by the SOM Compiler.
  103.  * FileName: wpspool.xh.
  104.  * Generated using:
  105.  *     SOM Precompiler spc: 1.22
  106.  *     SOM Emitter emitxh: 1.11
  107.  */
  108. #ifndef wpspool_mxh
  109. #define wpspool_mxh
  110. class M_WPSpool;
  111.  
  112. #define M_WPSpool_MajorVersion 1
  113. #define M_WPSpool_MinorVersion 1
  114.  
  115. /* C++ som defs */
  116. #include <somcls.xh>
  117.  
  118. /* C++ parent def */
  119. #ifndef wpabs_xh
  120. #include "wpabs.xh"
  121. #endif
  122.  
  123. #ifndef M_WPSpool_API
  124. #define M_WPSpool_API
  125. /*
  126.  * The Class API
  127.  */
  128.  
  129. /* A procedure to create the M_WPSpool Class */
  130. SOMEXTERN SOMClass * SOMLINK M_WPSpoolNewClass(
  131.         integer4 majorVersion,
  132.         integer4 minorVersion);
  133.  
  134. /* A macro to return the M_WPSpool class object */
  135. #define _M_WPSpool ((SOMClass*)M_WPSpoolClassData.classObject)
  136.  
  137. /* The static interface to M_WPSpool and its instances */
  138. SOMEXTERN struct M_WPSpoolClassDataStructure {
  139.     SOMClass *classObject;
  140. } M_WPSpoolClassData;
  141.  
  142. /*
  143.  * -- Typedefs for Procedures that support M_WPSpool Methods
  144.  */
  145. extern "C" {
  146. }
  147.  
  148.  
  149. #endif /* M_WPSpool_API */
  150.  
  151.  
  152. /*
  153.  * -- The C++ Wrapper Class for M_WPSpool
  154.  */
  155. class M_WPSpool : public M_WPAbstract
  156. {
  157. public:
  158.  
  159. void *operator new(size_t size)
  160. {
  161.    (void) size;
  162.    if (!M_WPSpoolClassData.classObject) 
  163.       M_WPSpoolNewClass(M_WPSpool_MajorVersion,M_WPSpool_MinorVersion);
  164.    return (void *)
  165.       ((somTD_SOMClass_somNew)
  166.       somResolve(SOM_TestCls((SOMAny *)(M_WPSpoolClassData.classObject),
  167.                              SOMClassClassData.classObject),
  168.                  SOMClassClassData.somNew))
  169.          ((SOMClass*)(M_WPSpoolClassData.classObject));
  170. }
  171.  
  172. void operator delete(void * obj)
  173. {
  174.    ((SOMObject *)obj)->somFree();
  175. }
  176.  
  177.  
  178. };   /* M_WPSpool */
  179.  
  180.  
  181.  
  182. #endif       /* wpspool_mxh */
  183.