home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ddkx86v1.zip / DDKX86 / H / PMAVIO.H < prev    next >
C/C++ Source or Header  |  1995-04-14  |  7KB  |  183 lines

  1. /*DDK*************************************************************************/
  2. /*                                                                           */
  3. /* COPYRIGHT    Copyright (C) 1995 IBM Corporation                           */
  4. /*                                                                           */
  5. /*    The following IBM OS/2 WARP source code is provided to you solely for  */
  6. /*    the purpose of assisting you in your development of OS/2 WARP device   */
  7. /*    drivers. You may use this code in accordance with the IBM License      */
  8. /*    Agreement provided in the IBM Device Driver Source Kit for OS/2. This  */
  9. /*    Copyright statement may not be removed.                                */
  10. /*                                                                           */
  11. /*****************************************************************************/
  12. /****************************** Module Header ******************************\
  13. *
  14. * Module Name: PMAVIO.H
  15. *
  16. * OS/2 Presentation Manager AVIO constants, types and function declarations
  17. *
  18. *
  19. * ===========================================================================
  20. *
  21. * Comments at the end of each typedef line give the name tags used in
  22. * the assembler include version of this file.
  23. *
  24. * The assembler include version of this file excludes lines between XLATOFF
  25. * and XLATON comments.
  26. *
  27. #ifndef __IBMC__
  28.    * The public version of this file (as shipped with the OS/2 Toolkit
  29.    * product) excludes all non 32-bit material marked in this file
  30.    * as well as any areas specifically marked with __IBMC__ conditional
  31.    * sections - including this paragraph. The H2IBMH rexx command file
  32.    * removes these sections.
  33. #endif
  34. \***************************************************************************/
  35.  
  36. /* XLATOFF */
  37. #ifdef __IBMC__
  38.    #pragma checkout( suspend )
  39.       #ifndef __CHKHDR__
  40.          #pragma checkout( suspend )
  41.       #endif
  42.    #pragma checkout( resume )
  43. #endif
  44. /* XLATON */
  45.  
  46. #define AVIO_INCLUDED
  47.  
  48. #ifndef INCL_32         /* If neither INCL_32 or INCL_16 set already */
  49.    #ifndef INCL_16      /* find out from compiler if 32-bit or not.  */
  50.      #ifdef M_I386
  51.         #define INCL_32 /* Compiling for 32-bit */
  52.      #else
  53.         #define INCL_16 /* Compiling for 16-bit */
  54.      #endif
  55.   #endif
  56. #endif
  57.  
  58. /* XLATOFF */
  59. #ifndef INCL_32
  60.    #ifndef APIENTRY16
  61.       #define APIENTRY16 APIENTRY
  62.    #endif
  63. #endif
  64.  
  65. #define Vio16Associate         VIO16ASSOCIATE
  66. #define Vio16CreateLogFont     VIO16CREATELOGFONT
  67. #define Vio16CreatePS          VIO16CREATEPS
  68. #define Vio16DeleteSetId       VIO16DELETESETID
  69. #define Vio16DestroyPS         VIO16DESTROYPS
  70. #define Vio16GetDeviceCellSize VIO16GETDEVICECELLSIZE
  71. #define Vio16GetOrg            VIO16GETORG
  72. #define Vio16QueryFonts        VIO16QUERYFONTS
  73. #define Vio16QuerySetIds       VIO16QUERYSETIDS
  74. #define Vio16SetDeviceCellSize VIO16SETDEVICECELLSIZE
  75. #define Vio16SetOrg            VIO16SETORG
  76. #define Vio16ShowPS            VIO16SHOWPS
  77. #define Win16DefAVioWindowProc WIN16DEFAVIOWINDOWPROC
  78.  
  79. #define VioAssociate           VIO16ASSOCIATE
  80. #define VioCreateLogFont       VIO16CREATELOGFONT
  81. #define VioCreatePS            VIO16CREATEPS
  82. #define VioDeleteSetId         VIO16DELETESETID
  83. #define VioDestroyPS           VIO16DESTROYPS
  84. #define VioGetDeviceCellSize   VIO16GETDEVICECELLSIZE
  85. #define VioGetOrg              VIO16GETORG
  86. #define VioQueryFonts          VIO16QUERYFONTS
  87. #define VioQuerySetIds         VIO16QUERYSETIDS
  88. #define VioSetDeviceCellSize   VIO16SETDEVICECELLSIZE
  89. #define VioSetOrg              VIO16SETORG
  90. #define VioShowPS              VIO16SHOWPS
  91. #define WinDefAVioWindowProc   WIN16DEFAVIOWINDOWPROC
  92. /* XLATON */
  93.  
  94. typedef USHORT HVPS;        /* hpvs */
  95. typedef HVPS FAR *PHVPS;    /* phpvs */
  96.  
  97. USHORT  APIENTRY16 VioAssociate(HDC hdc,
  98.                                 HVPS hvps);
  99.  
  100. USHORT  APIENTRY16 VioCreateLogFont(PFATTRS pfatattrs,
  101.                                     LONG llcid,
  102.                                     PSTR8 pName,
  103.                                     HVPS hvps);
  104.  
  105. USHORT  APIENTRY16 VioCreatePS(PHVPS phvps,
  106.                                SHORT sdepth,
  107.                                SHORT swidth,
  108.                                SHORT sFormat,
  109.                                SHORT sAttrs,
  110.                                HVPS hvpsReserved);
  111.  
  112. USHORT  APIENTRY16 VioDeleteSetId(LONG llcid,
  113.                                   HVPS hvps);
  114.  
  115. USHORT  APIENTRY16 VioDestroyPS(HVPS hvps);
  116.  
  117. USHORT  APIENTRY16 VioGetDeviceCellSize(PSHORT psHeight,
  118.                                         PSHORT psWidth,
  119.                                         HVPS hvps);
  120.  
  121. USHORT  APIENTRY16 VioGetOrg(PSHORT psRow,
  122.                              PSHORT psColumn,
  123.                              HVPS hvps);
  124.  
  125. USHORT  APIENTRY16 VioQueryFonts(PLONG plRemfonts,
  126.                                  PFONTMETRICS afmMetrics,
  127.                                  LONG lMetricsLength,
  128.                                  PLONG plFonts,
  129.                                  PSZ pszFacename,
  130.                                  ULONG flOptions,
  131.                                  HVPS hvps);
  132.  
  133. USHORT  APIENTRY16 VioQuerySetIds(PLONG allcids,
  134.                                   PSTR8 pNames,
  135.                                   PLONG alTypes,
  136.                                   LONG lcount,
  137.                                   HVPS hvps);
  138.  
  139. USHORT  APIENTRY16 VioSetDeviceCellSize(SHORT sHeight,
  140.                                         SHORT sWidth,
  141.                                         HVPS hvps);
  142.  
  143. USHORT  APIENTRY16 VioSetOrg(SHORT sRow,
  144.                              SHORT sColumn,
  145.                              HVPS hvps);
  146.  
  147. USHORT  APIENTRY16 VioShowPS(SHORT sDepth,
  148.                              SHORT sWidth,
  149.                              SHORT soffCell,
  150.                              HVPS hvps);
  151.  
  152. /************************ Public Function *******************************
  153. * WinDefAVioWindowProc -- Default message processing for AVio PS's
  154. ************************************************************************/
  155. #ifdef INCL_32
  156.    /* mp1 and mp2 are defined as ULONG because MPARAM is a pointer type and */
  157.    /* 32-bit compilers will thunk pointer types passed to 16-bit routines.  */
  158.    /* This is not what is desired for WM_SIZE processing so we will declare */
  159.    /* the function with ULONGs, non-pointer types.                          */
  160.  
  161.    MRESULT APIENTRY16 WinDefAVioWindowProc(HWND hwnd,
  162.                                            USHORT msg,
  163.                                            ULONG mp1,
  164.                                            ULONG mp2);
  165. #else
  166.    MRESULT APIENTRY16 WinDefAVioWindowProc(HWND hwnd,
  167.                                            USHORT msg,
  168.                                            MPARAM mp1,
  169.                                            MPARAM mp2);
  170. #endif
  171.  
  172. /* XLATOFF */
  173. #ifdef __IBMC__
  174.    #pragma checkout( suspend )
  175.       #ifndef __CHKHDR__
  176.          #pragma checkout( resume )
  177.       #endif
  178.    #pragma checkout( resume )
  179. #endif
  180. /* XLATON */
  181.  
  182. /**************************** end of file **********************************/
  183.