#ifndef GRAPHICS_CLIP_H
#define GRAPHICS_CLIP_H

/*******************************************************************
 pOS / Amiga adapt
*******************************************************************/

#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef __INC_POS_PLAYER_CLIP_H
#include <pLayer/Clip.h>
#endif
#ifndef GRAPHICS_GFX_H
#include <graphics/gfx.h>
#endif
#ifndef EXEC_SEMAPHORES_H
#include <exec/semaphores.h>
#endif
#ifndef GRAPHICS_REGIONS_H
#include <graphics/regions.h>
#endif


struct Layer
{
  struct Node          ly_Node;
  struct Layer        *ly_Parent;
  struct Layer        *ly_Next;
  struct Layer        *ly_Child;
  struct SignalSemaphore Lock;
  struct Rectangle     bounds;
  struct Rectangle     ly_ChildBounds;
  struct Region        ly_DamageList;
  struct LayerInfo   *ly_LayerInfo;
  ULONG               Flags;
  struct RastPort    *rp;
  struct MinList      ly_VisClipList;
  struct MinList      ly_SupClipList;
  SWORD               ly_ScrollX;
  SWORD               ly_ScrollY;
  APTR                ly_SupGfxMap;
  APTR                Window;
/* ... */
};


struct ClipRect
{
  struct MinNode   cr_Node;
  struct Rectangle bounds;
  APTR             cr_GfxMap;
};





#ifdef __IGNORE_NOT_SUPPORTED__

 #define NEWLOCKS
 #define CR_NEEDS_NO_CONCEALED_RASTERS  0
 #define CR_NEEDS_NO_LAYERBLIT_DAMAGE   0
 #define ISLESSX 0
 #define ISLESSY 0
 #define ISGRTRX 0
 #define ISGRTRY 0

#endif /** __IGNORE_NOT_SUPPORTED__ **/







#endif  /* GRAPHICS_CLIP_H */
