Added missing properties.
[AROS.git] / rom / graphics / compositor_driver.h
blob6d29ee32b93258ae0d277d908cc5fd95058b9d0c
1 #include <hidd/compositor.h>
2 #include <hidd/graphics.h>
3 #include <oop/oop.h>
5 /* Inline stubs for calling the driver */
7 static inline OOP_Object *compositor_LoadViewPorts(OOP_Object *o, struct HIDD_ViewPortData *Data, BOOL *Active, struct GfxBase *GfxBase)
9 struct pHidd_Compositor_BitMapStackChanged bscmsg =
11 mID : PrivGBase(GfxBase)->HiddCompositorMethodBase + moHidd_Compositor_BitMapStackChanged,
12 data : Data,
13 active : Active
16 return (OOP_Object *)OOP_DoMethod(o, &bscmsg.mID);
19 static inline BOOL compositor_ScrollBitMap(OOP_Object *o, OOP_Object *bitmap, SIPTR *x, SIPTR *y, struct GfxBase *GfxBase)
21 struct pHidd_Compositor_BitMapPositionChange msg =
23 mID : PrivGBase(GfxBase)->HiddCompositorMethodBase + moHidd_Compositor_BitMapPositionChange,
24 bm : bitmap,
25 newxoffset : x,
26 newyoffset : y
29 return OOP_DoMethod(o, &msg.mID);
32 static inline void compositor_UpdateBitMap(OOP_Object *o, OOP_Object *bitmap, UWORD x, UWORD y, UWORD w, UWORD h, struct GfxBase *GfxBase)
34 struct pHidd_Compositor_BitMapRectChanged msg =
36 mID : PrivGBase(GfxBase)->HiddCompositorMethodBase + moHidd_Compositor_BitMapRectChanged,
37 bm : bitmap,
38 x : x,
39 y : y,
40 width : w,
41 height : h
44 OOP_DoMethod(o, &msg.mID);
47 /* Service functions defined in compositor_driver.c */
49 ULONG compositor_Install(OOP_Class *cl, struct GfxBase *GfxBase);
50 void compositor_Setup(struct monitor_driverdata *mdd, struct GfxBase *GfxBase);
51 /* Validate and enable composition of alien bitmap formats */
52 BOOL compositor_IsBMCompositable(struct BitMap *bm, DisplayInfoHandle, struct GfxBase *GfxBase);
53 BOOL compositor_SetBMCompositable(struct BitMap *bm, DisplayInfoHandle, struct GfxBase *GfxBase);