home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional Developers Kit 1992 November / Disc01 / Disc01.mdf / cppbeta / ibmcli / ievtparm.in_ / IEVTPARM.INL
Encoding:
Text File  |  1992-10-22  |  4.3 KB  |  117 lines

  1. inline IEventParam::IEventParam()
  2. /**************************************************************/
  3. /* Make void MPARAM.                                          */
  4. /**************************************************************/
  5.  : pvClMsg(0)
  6. {;}
  7.  
  8. inline IEventParam::IEventParam(void* pv)
  9. /**************************************************************/
  10. /* Make MPARAM from pointer.                                  */
  11. /**************************************************************/
  12. {
  13.    pvClMsg = (void*)((unsigned long)pv);
  14. }
  15.  
  16. inline IEventParam::IEventParam(unsigned long ul)
  17. /**************************************************************/
  18. /* Make MPARAM from long.                                     */
  19. /**************************************************************/
  20. {
  21.    pvClMsg = (void*)((unsigned long)ul);
  22. }
  23.  
  24. //inline IEventParam::IEventParam(unsigned char uch)
  25. /**************************************************************/
  26. /* Make MPARAM from char.                                     */
  27. /**************************************************************/
  28. //{
  29. //   pvClMsg = (void*)((unsigned short)uch);
  30. //}
  31.  
  32. inline IEventParam::IEventParam(const IEventParam& epCopy)
  33. /**************************************************************/
  34. /* Copy constructor.                                          */
  35. /**************************************************************/
  36. {
  37.   pvClMsg = epCopy.pvClMsg;
  38. }
  39.  
  40. inline unsigned char IEventParam::char1() const
  41. /**************************************************************/
  42. /* Extract unsigned char 1 from message param.                */
  43. /**************************************************************/
  44. {
  45.    return (unsigned char)(unsigned long)pvClMsg;
  46. }
  47.  
  48. inline unsigned char IEventParam::char2() const
  49. /**************************************************************/
  50. /* Extract unsigned char 2 from message param.                */
  51. /**************************************************************/
  52. {
  53.    return (unsigned char)((unsigned long)pvClMsg >> 8);
  54. }
  55.  
  56. inline unsigned char IEventParam::char3() const
  57. /**************************************************************/
  58. /* Extract unsigned char 3 from message param.                */
  59. /**************************************************************/
  60. {
  61.    return (unsigned char)((unsigned long)pvClMsg >> 16);
  62. }
  63.  
  64. inline unsigned char IEventParam::char4() const
  65. /**************************************************************/
  66. /* Extract unsigned char 4 from message param.                */
  67. /**************************************************************/
  68. {
  69.    return (unsigned char)((unsigned long)pvClMsg >> 24);
  70. }
  71.  
  72.  
  73. inline unsigned long IEventParam::number1() const
  74. /**************************************************************/
  75. /* Extract lower two bytes from message param.                */
  76. /**************************************************************/
  77. {
  78.    return (unsigned short)(unsigned long)pvClMsg;
  79. }
  80.  
  81. inline unsigned long IEventParam::number2() const
  82. /**************************************************************/
  83. /* Extract upper two bytes from message param.                */
  84. /**************************************************************/
  85. {
  86.    return ((unsigned long)pvClMsg >> 16);
  87. }
  88.  
  89. inline IEventParam& IEventParam::operator=(const IEventParam& ep)
  90. /**************************************************************/
  91. /* Assignment operator                                        */
  92. /**************************************************************/
  93. {
  94.    pvClMsg = ep.pvClMsg;
  95.    return *this;
  96. }
  97.  
  98. inline IEventParam::operator void*() const
  99. /**************************************************************/
  100. /* Cast operator to void pointer.                             */
  101. /**************************************************************/
  102. { return pvClMsg; }
  103.  
  104. inline IEventParam::operator char*() const
  105. /**************************************************************/
  106. /* Cast operator to char*                                     */
  107. /**************************************************************/
  108. { return (char*)pvClMsg; }
  109.  
  110. inline IEventParam::operator unsigned long() const
  111. /**************************************************************/
  112. /* Case message parameter to unsigned long.                   */
  113. /**************************************************************/
  114. {
  115.    return (unsigned long)pvClMsg;
  116. }
  117.