1 #ifndef _COMPOSITING_INTERN_H
2 #define _COMPOSITING_INTERN_H
4 Copyright © 2010, The AROS Development Team. All rights reserved.
8 #include "compositing.h"
10 #include <exec/lists.h>
20 struct StackBitMapNode
24 struct _Rectangle screenvisiblerect
;
30 struct HIDDCompositingData
32 OOP_Object
*screenbitmap
;
33 OOP_Object
*directbitmap
;
34 HIDDT_ModeID screenmodeid
;
35 struct _Rectangle screenrect
;
37 struct List bitmapstack
;
39 struct SignalSemaphore semaphore
;
41 OOP_Object
*gfx
; /* GFX driver object */
42 OOP_Object
*gc
; /* GC object used for drawing operations */
45 extern const struct OOP_InterfaceDescr Compositing_ifdescr
[];
47 #define METHOD(base, id, name) \
48 base ## __ ## id ## __ ## name (OOP_Class *cl, OOP_Object *o, struct p ## id ## _ ## name *msg)
50 //#define SD(cl) (&BASE(cl->UserData)->sd)
52 #define LOCK_COMPOSITING_READ { ObtainSemaphoreShared(&compdata->semaphore); }
53 #define LOCK_COMPOSITING_WRITE { ObtainSemaphore(&compdata->semaphore); }
54 #define UNLOCK_COMPOSITING { ReleaseSemaphore(&compdata->semaphore); }
56 #endif /* _COMPOSITING_INTERN_H */