home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / DC-POS24.LZX / pOS / Guide.lzx / Guide / pLayer / Clip.h next >
Encoding:
C/C++ Source or Header  |  1997-03-11  |  7.1 KB  |  189 lines

  1. @DATABASE "pLayer/Clip.h"
  2. @MASTER   "Work2:AD/IInc/pLayer/Clip.h"
  3. @REMARK   This file was created by ADtoHT 2.0 on 11-Mär-97  13:35:17
  4. @REMARK   Do not edit
  5. @REMARK   ADtoHT is © 1993-1995 Christian Stieber
  6.  
  7. @NODE MAIN "pLayer/Clip.h"
  8. @TOC "__pOS_Dev.guide/MAIN"
  9.  
  10. @{"pLayer/Clip.h" LINK File}
  11.  
  12.  
  13. @{b}Structures@{ub}
  14.  
  15. @{"pOS_ClipRect" LINK "pLayer/Clip.h/File" 28}       @{"pOS_Layer" LINK "pLayer/Clip.h/File" 63}      @{"pOS_LayerClip" LINK "pLayer/Clip.h/File" 52}  @{"pOS_LayerHide" LINK "pLayer/Clip.h/File" 40}
  16. @{"pOS_LayerHookData" LINK "pLayer/Clip.h/File" 119}  @{"pOS_LayerInfo" LINK "pLayer/Clip.h/File" 101}  
  17.  
  18. @ENDNODE
  19. @NODE File "pLayer/Clip.h"
  20. #ifndef __INC_POS_PLAYER_CLIP_H
  21. #define __INC_POS_PLAYER_CLIP_H
  22. /*******************************************************************
  23.  Includes Release 24
  24.  (C) Copyright 1995-1997 proDAD
  25.      All Rights Reserved
  26.  
  27.  $AUT Holger Burkarth
  28.  $DAT >>Clip.h<<   24 Jan 1997    09:38:26 - (C) ProDAD
  29. *******************************************************************/
  30. #ifndef __INC_POS_PEXEC_LIST_H
  31. #include <@{"pExec/List.h" LINK "pExec/List.h/File"}>
  32. #endif
  33. #ifndef __INC_POS_PLAYER_RECT_H
  34. #include <@{"pLayer/Rect.h" LINK "pLayer/Rect.h/File"}>
  35. #endif
  36. #ifndef __INC_POS_PLAYER_REGION_H
  37. #include <@{"pLayer/Region.h" LINK "pLayer/Region.h/File"}>
  38. #endif
  39. #ifndef __INC_POS_PEXEC_SEMA_H
  40. #include <@{"pExec/Sema.h" LINK "pExec/Sema.h/File"}>
  41. #endif
  42.  
  43.  
  44.  
  45. /*----------------------------------
  46. -----------------------------------*/
  47. struct pOS_ClipRect
  48. {
  49.   @{"struct pOS_Node" LINK "pExec/List.h/File" 18}      cr_Node;       /* kompatiebel zu (@{"struct pOS_RegionRectangle" LINK "pLayer/Region.h/File" 21}) */
  50.   @{"struct pOS_Rectangle" LINK "pLayer/Rect.h/File" 17} cr_Bounds;     /* bounds of cliprect */
  51.   @{"struct pOS_GfxMap" LINK "pGFX/GfxMap.h/File" 18}   *cr_GfxMap;     /* */
  52. };
  53.  
  54.  
  55.  
  56. /*----------------------------------
  57. @{"pOS_LockHideLayer()" LINK "pLayerD/pOS_LockHideLayer"}, @{"pOS_UnlockHideLayer()" LINK "pLayerD/pOS_UnlockHideLayer"}
  58. -----------------------------------*/
  59. struct pOS_LayerHide
  60. {
  61.   @{"struct pOS_List" LINK "pExec/List.h/File" 26}          lyh_ClipList;
  62.   const @{"struct pOS_Region" LINK "pLayer/Region.h/File" 30} *lyh_Region;
  63.   @{"UBYTE" LINK "pExec/Types.h/File" 95}                    lyh_Mode;  /* 0x01 = LAYERF_InRefMode, 0x02 = Quick */
  64.   @{"UBYTE" LINK "pExec/Types.h/File" 95}                    lyh_Cnt;
  65. };
  66.  
  67.  
  68.  
  69. /*----------------------------------
  70. -----------------------------------*/
  71. struct pOS_LayerClip
  72. {
  73.   @{"struct pOS_LayerHide" LINK File 40} lyc_Hide;
  74.   @{"UBYTE" LINK "pExec/Types.h/File" 95}                lyc_Reserved[32];
  75. };
  76.  
  77.  
  78.  
  79.  
  80. /*----------------------------------
  81. -----------------------------------*/
  82. struct pOS_Layer
  83. {
  84.   @{"struct pOS_ExNode" LINK "pExec/List.h/File" 37}     ly_Node;
  85.   struct pOS_Layer     *ly_Parent;
  86.   struct pOS_Layer     *ly_Next;        /* nur im Child-Verbund */
  87.   struct pOS_Layer     *ly_Child;       /* First Child */
  88.   @{"struct pOS_Semaphore" LINK "pExec/Sema.h/File" 36}  ly_Lock;
  89.   @{"struct pOS_Rectangle" LINK "pLayer/Rect.h/File" 17}  ly_Bounds;
  90.   @{"struct pOS_Rectangle" LINK "pLayer/Rect.h/File" 17}  ly_ChildBounds; /* echte Maße, ohne das Clipping von Parent */
  91.   @{"struct pOS_Region" LINK "pLayer/Region.h/File" 30}     ly_DamageList;  /* list of rectangles to refresh through */
  92.   @{"struct pOS_LayerInfo" LINK File 101} *ly_LayerInfo;   /* (home) points to head of the list */
  93.   @{"ULONG" LINK "pExec/Types.h/File" 91}                 ly_Flags;       /* (enum pOS_LayerFlags) */
  94.   @{"struct pOS_RastPort" LINK "pGFX/RastPort.h/File" 18}  *ly_RP;
  95.   @{"struct pOS_List" LINK "pExec/List.h/File" 26}       ly_VisClipList; /* List of visible clips */
  96.   @{"struct pOS_List" LINK "pExec/List.h/File" 26}       ly_SupClipList; /* List of super clips */
  97.   @{"SWORD" LINK "pExec/Types.h/File" 92}                 ly_ScrollX;     /* wird zu jeder Zeichenoperation addiert */
  98.   @{"SWORD" LINK "pExec/Types.h/File" 92}                 ly_ScrollY;
  99.   @{"struct pOS_GfxMap" LINK "pGFX/GfxMap.h/File" 18}    *ly_SupGfxMap;
  100.   @{"struct pOS_Window" LINK "pScreen/Window.h/File" 18}    *ly_Win;         /* home link for intui (private) */
  101.  
  102. /** SYSTEM-PRIVATE-DATAS **/
  103. };
  104.  
  105.  
  106. /*\\
  107. *** Nach BeginRefresh() ist in ly_Flags das LAYERF_InRefMode-Bit gesetzt.
  108. *** Gleichzeitig zeigt das LAYERF_DamageLst-Bit, daß die ly_DamageList-List
  109. *** mit ly_DamUseList getauscht wurde. Progs, die auf diese Daten zurückgreifen,
  110. *** müssen ly_DamUseList verwenden, da zur gleichen Zeit ly_DamageList genullt wird.
  111. \\*/
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118. /*----------------------------------
  119. -----------------------------------*/
  120. struct pOS_LayerInfo
  121. {
  122.   @{"struct pOS_ExNode" LINK "pExec/List.h/File" 37}    li_Node;
  123.   @{"struct pOS_ExList" LINK "pExec/List.h/File" 50}    li_List;   /* (pOS_Layer*) List */
  124.   @{"struct pOS_Semaphore" LINK "pExec/Sema.h/File" 36} li_Lock;
  125.   @{"struct pOS_GfxMap" LINK "pGFX/GfxMap.h/File" 18}   *li_GfxMap;
  126.   @{"UWORD" LINK "pExec/Types.h/File" 93}                li_Flags;
  127.  
  128. /** SYSTEM-PRIVATE-DATAS **/
  129.  
  130. };
  131.  
  132.  
  133.  
  134.  
  135. /*----------------------------------
  136.   @{"BOOL" LINK "pExec/Types.h/File" 99} (*cb_Code)(@{"_R_A0" LINK "pExec/Types.h/File" 28} const pOS_Callback*,@{"_R_A1" LINK "pExec/Types.h/File" 29} const pOS_LayerHookData*);
  137. -----------------------------------*/
  138. struct pOS_LayerHookData
  139. {
  140.   @{"struct pOS_RastPort" LINK "pGFX/RastPort.h/File" 18}  *lyhd_RastPort;
  141.   @{"struct pOS_LayerInfo" LINK File 101} *lyhd_LayerInfo;
  142.   @{"struct pOS_Layer" LINK File 63}     *lyhd_Layer;
  143.   @{"SLONG" LINK "pExec/Types.h/File" 90}                 lyhd_OriginX, lyhd_OriginY;
  144.   @{"struct pOS_Rectangle" LINK "pLayer/Rect.h/File" 17}  lyhd_Bounds;
  145.   @{"UWORD" LINK "pExec/Types.h/File" 93}                 lyhd_Flags;      /* (enum pOS_LayerHookFlags) */
  146.   @{"struct pOS_GfxMap" LINK "pGFX/GfxMap.h/File" 18}    *lyhd_GfxMap;
  147. };
  148.  
  149.  
  150. enum pOS_LayerHookFlags /* lyhd_Flags */
  151. {
  152.   LAYERHOOKF_FirstDraw  =0x0001, /* *** erster Durchlauf */
  153.   LAYERHOOKF_Border     =0x0002, /* *** Border zeichnen */
  154. };
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162. enum pOS_LayerFlags /* ly_Flags */
  163. {
  164.   LAYERF_Simple=        0x0001,
  165.   LAYERF_Smart=         0x0002,
  166.   LAYERF_Super=         0x0004,
  167.   LAYERF_NoCLTS=        0x0010,   /* no @{"pOS_CopyLayerToSup()" LINK "pLayerD/pOS_CopyLayerToSup"} */
  168.   LAYERF_DrawInLy=      0x000020, /* es wurde gezeichnet => wichtig für SuperBM */
  169.   LAYERF_Refresh=       0x000080,
  170.   LAYERF_InRefMode=     0x000100, /* Begin-Refresh */
  171.   LAYERF_DamageLst=     0x000200, /* pflegt die Damage-List */
  172.   LAYERF_2thDamLst=     0x000400, /* ly_DamUseList wurde gebildet */
  173.   LAYERF_RembDamLst=    0x000800, /* ly_DamRememberList wird verwendet */
  174.   LAYERF_FixChWidth=    0x001000, /* Kind-Width ist an Parent gebunden */
  175.   LAYERF_FixChHeight=   0x002000, /* Kind-Height ist an Parent gebunden */
  176.   LAYERF_SaveVCList=    0x004000, /* SaveVisClipList ist belegt */
  177.   LAYERF_FixChLeft=     0x008000, /* Kind-Left wird an Parent-Right gebunden */
  178.   LAYERF_FixChTop=      0x010000, /* Kind-Top wird an Parent-Bottom gebunden */
  179.   LAYERF_SzDamgHoriz=   0x020000, /* eine horizontale Größenänderung macht den
  180.                                   ** gesamten Layer ungültig
  181.                                   */
  182.   LAYERF_SzDamgVert=    0x040000, /* =>LAYERF_SzDamgHoriz (vert) */
  183. };
  184.  
  185.  
  186.  
  187. #endif
  188. @ENDNODE
  189.