home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / detk45he.zip / wpsound.xh < prev    next >
Text File  |  1999-03-15  |  8KB  |  363 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: E:\cwpsh\rel\os2c\include\base\os2\wpsound.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.14
  7.  *     SOM Emitter emitxh: 2.43
  8.  */
  9.  
  10. /*
  11.  *   Module Header
  12.  * 
  13.  *   Module Name: WPSOUND
  14.  * 
  15.  *   OS/2 Presentation Manager Workplace class definitions
  16.  * 
  17.  *   Copyright (c) International Business Machines Corporation 1991, 1992
  18.  * 
  19.  */
  20.  
  21.  
  22. #ifndef SOM_WPSound_xh
  23. #define SOM_WPSound_xh
  24.  
  25. class WPSound;
  26.  
  27. #define WPSound_MajorVersion 1
  28. #define WPSound_MinorVersion 2
  29.  
  30. /* C++ SOM defs */
  31. #include <somcls.xh>
  32. #include <somcm.xh>
  33.  
  34. /* C++ parent defs */
  35. #ifndef SOM_WPAbstract_xh
  36. #include <wpabs.xh>
  37. #endif
  38.  
  39. #ifndef WPSound_API
  40. #define WPSound_API
  41. /*
  42.  * -- The Class API
  43.  */
  44.  
  45. /*
  46.  * Start of bindings for IDL types
  47.  */
  48.  
  49. class SOMClass;
  50. class SOMObject;
  51. class WPFolder;
  52. class M_WPObject;
  53. class WPObject;
  54. class WPImageFile;
  55. class M_WPAbstract;
  56. class M_WPSound;
  57.  
  58. /*
  59.  * End of bindings for IDL types.
  60.  */
  61.  
  62. /* A procedure to create the WPSound Class */
  63. class M_WPSound;
  64. SOMEXTERN M_WPSound * SOMLINK WPSoundNewClass(
  65.         integer4 majorVersion,
  66.         integer4 minorVersion);
  67.  
  68. /* The API to the WPSound class object, and the methods it introduces. */
  69. SOMEXTERN struct WPSoundClassDataStructure {
  70.     M_WPSound *classObject;
  71.     somMToken wpAddSoundWarningBeepPage;
  72.     somMToken wpAddSoundSchemePage;
  73. } SOMDLINK WPSoundClassData;
  74. #define _WPSound WPSoundClassData.classObject
  75.  
  76. /* The API to parentMtabs for WPSound, and the instance data it introduces. */
  77. SOMEXTERN struct WPSoundCClassDataStructure {
  78.     somMethodTabs parentMtab;
  79.     somDToken              instanceDataToken;
  80. } SOMDLINK WPSoundCClassData;
  81.  
  82. /*
  83.  * -- Typedefs for WPSound Method Procedures
  84.  */
  85. SOMEXTERN {
  86. typedef ULONG   SOMLINK somTP_WPSound_wpAddSoundWarningBeepPage(WPSound *somSelf, 
  87.         HWND hwndNotebook);
  88. typedef somTP_WPSound_wpAddSoundWarningBeepPage *somTD_WPSound_wpAddSoundWarningBeepPage;
  89. typedef ULONG   SOMLINK somTP_WPSound_wpAddSoundSchemePage(WPSound *somSelf, 
  90.         HWND hwndNotebook);
  91. typedef somTP_WPSound_wpAddSoundSchemePage *somTD_WPSound_wpAddSoundSchemePage;
  92.  
  93. /*
  94.  * -- Typedefs for Reintroduced Wrapper Methods
  95.  */
  96. typedef M_WPSound*   SOMLINK somTP_WPSound_somGetClass(WPSound *somSelf);
  97. typedef somTP_WPSound_somGetClass *somTD_WPSound_somGetClass;
  98. }
  99.  
  100. #endif /* WPSound_API */
  101.  
  102.  
  103. /*
  104.  * -- This emitter treats Method Tokens as Thunks by default.
  105.  * -- Use the sc modifier "nothunks" to change this default
  106.  */
  107. #undef somresolve_
  108. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  109.  
  110. /*
  111.  * -- The C++ Wrapper Class for WPSound
  112.  */
  113. class WPSound : public WPAbstract
  114. {
  115. public:
  116.  
  117. // WPSound::new creates the class object if necessary, and then uses somNewNoInit
  118. // to allocate memory and create the object. Initialization is in ctors.
  119. void *operator new(size_t)
  120. {
  121.    if (!_WPSound) WPSoundNewClass(WPSound_MajorVersion,WPSound_MinorVersion);
  122.    return (void*)
  123.       SOM_Resolve(_WPSound,SOMClass,somNewNoInit)
  124.          ((SOMClass *)((void*)_WPSound));
  125. }
  126.  
  127. // WPSound::delete uses somDestruct.
  128. void operator delete(void * obj)
  129. {
  130.    if (obj && *(void**)obj) {
  131.       SOM_Resolve(obj,SOMObject,somDestruct)
  132.          ((SOMObject*)obj, 1, 0);
  133.    }
  134. }
  135.  
  136. WPSound& operator=(WPSound& fromObj)
  137. {
  138.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  139.    return *this;
  140. }
  141.  
  142. WPSound()
  143. {
  144.    if (*(void**)this != 
  145.        ((somParentMtabStructPtr)
  146.         (WPSoundCClassData.parentMtab))->mtab)
  147.       return;
  148.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  149. }
  150.  
  151. WPSound(WPSound* fromObj)
  152. {
  153.    if (*(void**)this != 
  154.        ((somParentMtabStructPtr)
  155.         (WPSoundCClassData.parentMtab))->mtab)
  156.       return;
  157.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  158. }
  159.  
  160. WPSound(const WPSound* fromObj)
  161. {
  162.    if (*(void**)this != 
  163.        ((somParentMtabStructPtr)
  164.         (WPSoundCClassData.parentMtab))->mtab)
  165.       return;
  166.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  167. }
  168.  
  169.  
  170. /* method: wpAddSoundWarningBeepPage */
  171. ULONG   wpAddSoundWarningBeepPage(HWND hwndNotebook)
  172. {
  173.    return SOM_ResolveD(this,WPSound,WPSound,wpAddSoundWarningBeepPage)
  174.     (this,hwndNotebook);
  175. }
  176.  
  177.  
  178. /* method: wpAddSoundSchemePage */
  179. ULONG   wpAddSoundSchemePage(HWND hwndNotebook)
  180. {
  181.    return SOM_ResolveD(this,WPSound,WPSound,wpAddSoundSchemePage)
  182.     (this,hwndNotebook);
  183. }
  184.  
  185.  
  186. /*
  187.  * Reintroduce inherited methods
  188.  */
  189.  
  190. /* method: somGetClass */
  191. M_WPSound*  somGetClass()
  192. {
  193. /*
  194.  *  Return the receiver's class.
  195.  */
  196.    return SOM_ResolveD(this,WPSound,SOMObject,somGetClass)
  197.     (this);
  198. }
  199.  
  200.  
  201.  
  202. };   /* WPSound */
  203.  
  204.  
  205.  
  206. #endif       /* SOM_WPSound_xh */
  207.  
  208. #ifndef SOM_M_WPSound_xh
  209. #define SOM_M_WPSound_xh
  210.  
  211. class M_WPSound;
  212.  
  213. #define M_WPSound_MajorVersion 1
  214. #define M_WPSound_MinorVersion 2
  215.  
  216. /* C++ SOM defs */
  217. #include <somcls.xh>
  218. #include <somcm.xh>
  219.  
  220. /* C++ parent defs */
  221. #ifndef SOM_M_WPAbstract_xh
  222. #include <wpabs.xh>
  223. #endif
  224.  
  225. #ifndef M_WPSound_API
  226. #define M_WPSound_API
  227. /*
  228.  * -- The Class API
  229.  */
  230.  
  231. /*
  232.  * Start of bindings for IDL types
  233.  */
  234.  
  235.  
  236. /*
  237.  * End of bindings for IDL types.
  238.  */
  239.  
  240. /*
  241.  * -- M_WPSound is a metaclass for WPSound. Make sure WPSound is known.
  242.  */
  243. class WPSound;
  244.  
  245.  
  246. /* A procedure to create the M_WPSound Class */
  247. SOMEXTERN SOMClass * SOMLINK M_WPSoundNewClass(
  248.         integer4 majorVersion,
  249.         integer4 minorVersion);
  250.  
  251. /* The API to the M_WPSound class object, and the methods it introduces. */
  252. SOMEXTERN struct M_WPSoundClassDataStructure {
  253.     SOMClass *classObject;
  254. } SOMDLINK M_WPSoundClassData;
  255. #define _M_WPSound M_WPSoundClassData.classObject
  256.  
  257. /* The API to parentMtabs for M_WPSound, and the instance data it introduces. */
  258. SOMEXTERN struct M_WPSoundCClassDataStructure {
  259.     somMethodTabs parentMtab;
  260.     somDToken              instanceDataToken;
  261. } SOMDLINK M_WPSoundCClassData;
  262.  
  263. /*
  264.  * -- Typedefs for M_WPSound Method Procedures
  265.  */
  266. SOMEXTERN {
  267.  
  268. /*
  269.  * -- Typedefs for Reintroduced Wrapper Methods
  270.  */
  271. typedef WPSound*   SOMLINK somTP_M_WPSound_somNew(M_WPSound *somSelf);
  272. typedef somTP_M_WPSound_somNew *somTD_M_WPSound_somNew;
  273. }
  274.  
  275. #endif /* M_WPSound_API */
  276.  
  277.  
  278. /*
  279.  * -- This emitter treats Method Tokens as Thunks by default.
  280.  * -- Use the sc modifier "nothunks" to change this default
  281.  */
  282. #undef somresolve_
  283. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  284.  
  285. /*
  286.  * -- The C++ Wrapper Class for M_WPSound
  287.  */
  288. class M_WPSound : public M_WPAbstract
  289. {
  290. public:
  291.  
  292. // M_WPSound::new creates the class object if necessary, and then uses somNewNoInit
  293. // to allocate memory and create the object. Initialization is in ctors.
  294. void *operator new(size_t)
  295. {
  296.    if (!_M_WPSound) M_WPSoundNewClass(M_WPSound_MajorVersion,M_WPSound_MinorVersion);
  297.    return (void*)
  298.       SOM_Resolve(_M_WPSound,SOMClass,somNewNoInit)
  299.          ((SOMClass *)((void*)_M_WPSound));
  300. }
  301.  
  302. // M_WPSound::delete uses somDestruct.
  303. void operator delete(void * obj)
  304. {
  305.    if (obj && *(void**)obj) {
  306.       SOM_Resolve(obj,SOMObject,somDestruct)
  307.          ((SOMObject*)obj, 1, 0);
  308.    }
  309. }
  310.  
  311. M_WPSound& operator=(M_WPSound& fromObj)
  312. {
  313.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  314.    return *this;
  315. }
  316.  
  317. M_WPSound()
  318. {
  319.    if (*(void**)this != 
  320.        ((somParentMtabStructPtr)
  321.         (M_WPSoundCClassData.parentMtab))->mtab)
  322.       return;
  323.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  324. }
  325.  
  326. M_WPSound(M_WPSound* fromObj)
  327. {
  328.    if (*(void**)this != 
  329.        ((somParentMtabStructPtr)
  330.         (M_WPSoundCClassData.parentMtab))->mtab)
  331.       return;
  332.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  333. }
  334.  
  335. M_WPSound(const M_WPSound* fromObj)
  336. {
  337.    if (*(void**)this != 
  338.        ((somParentMtabStructPtr)
  339.         (M_WPSoundCClassData.parentMtab))->mtab)
  340.       return;
  341.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  342. }
  343.  
  344.  
  345. /*
  346.  * Reintroduce inherited methods
  347.  */
  348.  
  349. /* method: somNew */
  350. WPSound*  somNew()
  351. {
  352.    return SOM_ResolveD(this,M_WPSound,SOMClass,somNew)
  353.     (this);
  354. }
  355.  
  356.  
  357.  
  358. };   /* M_WPSound */
  359.  
  360.  
  361.  
  362. #endif       /* SOM_M_WPSound_xh */
  363.