home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / DC-POS24.LZX / pOS / IncPOS.lzx / pGFX / MonForm.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-03-18  |  3.6 KB  |  145 lines

  1. #ifndef __INC_POS_PGFX_MONFORM_H
  2. #define __INC_POS_PGFX_MONFORM_H
  3. /*******************************************************************
  4.  Includes Release 24
  5.  (C) Copyright 1995-1997 proDAD
  6.      All Rights Reserved
  7.  
  8.  $AUT Holger Burkarth
  9.  $DAT >>MonForm.h<<   12 Sep 1996    10:46:44 - (C) ProDAD
  10. *******************************************************************/
  11. #ifndef __INC_POS_PEXEC_TYPES_H
  12. #include <pExec/Types.h>
  13. #endif
  14.  
  15.  
  16. /*----------------------------------
  17. -----------------------------------*/
  18. struct pOS_MonForm
  19. {
  20.   UWORD                  mf_Command;  /* (enum pOS_MonFormCommands) */
  21.   struct pOS_MonDevice  *mf_Dev;
  22.   struct pOS_GfxLibrary *mf_Lib;
  23.   APTR                   mf_Reply;
  24.   ULONG                  mf_Length;
  25.  
  26.   UBYTE mf_Reserved1[12];
  27.  
  28.   union {
  29.     UBYTE mf_Reserved2[64];
  30.  
  31.     struct { /* MFRMCM_DrawLine */
  32.       struct pOS_RastPort   *mfdl_RastPort;
  33.       struct pOS_GfxMap     *mfdl_GfxMap;
  34.       SLONG                  mfdl_X1,mfdl_Y1,mfdl_X2,mfdl_Y2;
  35.     } mf_DrawLine;
  36.  
  37.     struct { /* MFRMCM_AllocGfx */
  38.       APTR                 mfag_Data;
  39.       struct pOS_GfxMap   *mfag_ResGfxMap;
  40.     } mf_AllocGfx;
  41.  
  42.     struct { /* MFRMCM_FreeGfx */
  43.       struct pOS_GfxMap   *mffg_GfxMap;
  44.     } mf_FreeGfx;
  45.  
  46.     struct {  /*** MFRMCM_OpenFH ***/
  47.       const struct pOS_MonLock       *mfop_CurrLock;
  48.       const CHAR                     *mfop_Name;
  49.             UWORD                     mfop_Mode;
  50.             UBYTE mrop_d[2];
  51.             struct pOS_MonFile       *mfop_ResFH;
  52.     } mf_OpenFH;
  53.  
  54.     struct {  /*** MFRMCM_CloseFH ***/
  55.             struct pOS_MonFile    *mfcl_FH;
  56.     } mf_CloseFH;
  57.  
  58.  
  59.     struct { /* MFRMCM_AllocCM */
  60.       APTR                 mfac_Data;
  61.       struct pOS_ColorMap *mfac_ResColorMap;
  62.     } mf_AllocCM;
  63.  
  64.     struct { /* MFRMCM_FreeCM */
  65.       struct pOS_ColorMap *mffc_ColorMap;
  66.     } mf_FreeCM;
  67.  
  68.     struct { /* MFRMCM_AllocRP */
  69.       APTR                 mfar_Data;
  70.       struct pOS_RastPort *mfar_ResRastPort;
  71.     } mf_AllocRP;
  72.  
  73.     struct { /* MFRMCM_FreeRP */
  74.       struct pOS_RastPort *mffr_RastPort;
  75.     } mf_FreeRP;
  76.  
  77.     struct { /* MFRMCM_SetRP */
  78.       APTR         mfsr_Data;
  79.       ULONG        mfsr_Cnt;
  80.     } mf_SetRP;
  81.  
  82.     struct { /* MFRMCM_DrawRectFill */
  83.       struct pOS_RastPort   *mfdr_RastPort;
  84.       struct pOS_GfxMap     *mfdr_GfxMap;
  85.       SLONG                  mfdr_X1,mfdr_Y1,mfdr_X2,mfdr_Y2;
  86.     } mf_DrawRectFill;
  87.  
  88.     struct { /* MFRMCM_SetAPen, MFRMCM_SetBPen, MFRMCM_SetOPen */
  89.       struct pOS_RastPort   *mfsp_RastPort;
  90.       ULONG                  mfsp_Pen;
  91.     } mf_SetPen;
  92.  
  93.     struct { /* MFRMCM_SetDrMd */
  94.       struct pOS_RastPort   *mfsd_RastPort;
  95.       ULONG                  mfsd_Mode;
  96.     } mf_SetDrMd;
  97.  
  98.     struct { /* MFRMCM_SetFont */
  99.       struct pOS_RastPort   *mfsf_RastPort;
  100.       APTR                   mfsf_Data;
  101.     } mf_SetFont;
  102.  
  103.     struct { /* MFRMCM_BltTemplate */
  104.       struct pOS_RastPort   *mfbt_RastPort;
  105.       const UBYTE           *mfbt_Scr;
  106.       ULONG                  mfbt_OfX, mfbt_Modulo;
  107.       struct pOS_GfxMap     *mfbt_GfxMap;
  108.       SLONG                  mfbt_DestX, mfbt_DestY, mfbt_Width, mfbt_Height;
  109.       ULONG                  mfbt_ScrLength;
  110.     } mf_BltTemplate;
  111.  
  112.  
  113.   } mf_U;
  114.  
  115. };
  116.  
  117.  
  118.  
  119. enum pOS_MonFormCommands
  120. {
  121.   MFRMCM_DrawLine = 0x81, /** pre 0x80 are handlers own commands **/
  122.   MFRMCM_AllocGfx,
  123.   MFRMCM_FreeGfx,
  124.   MFRMCM_OpenFH,
  125.   MFRMCM_CloseFH,
  126.   MFRMCM_AllocCM,
  127.   MFRMCM_FreeCM,
  128.   MFRMCM_AllocRP,
  129.   MFRMCM_FreeRP,
  130.   MFRMCM_SetRP,
  131.   MFRMCM_DrawRectFill,
  132.   MFRMCM_SetAPen,
  133.   MFRMCM_SetBPen,
  134.   MFRMCM_SetOPen,
  135.   MFRMCM_SetDrMd,
  136.   MFRMCM_SetFont,
  137.   MFRMCM_BltTemplate,
  138.  
  139.  
  140.   MFRMCM_Reply = 0x8000,
  141. };
  142.  
  143.  
  144. #endif
  145.