rename the directory
[AROS.git] / arch / all-native / hidd / vga / vga.h
bloba96435c103cbe47b7a4ebf95033cf8ecf74e0822
1 #ifndef HIDD_VGA_H
2 #define HIDD_VGA_H
4 /*
5 Copyright © 1995-2015, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: Include for the vga gfx HIDD.
9 Lang: English.
13 #ifndef EXEC_LIBRARIES_H
14 # include <exec/libraries.h>
15 #endif
17 #ifndef OOP_OOP_H
18 # include <oop/oop.h>
19 #endif
21 #ifndef EXEC_SEMAPHORES_H
22 # include <exec/semaphores.h>
23 #endif
25 #include "bitmap.h"
27 /***** VGA gfx HIDD *******************/
29 /* IDs */
30 #define IID_Hidd_Gfx_VGA "hidd.gfx.vga"
31 #define CLID_Hidd_Gfx_VGA "hidd.gfx.vga"
33 /* misc */
35 struct vga_staticdata
37 OOP_Class *vgaclass;
38 OOP_Class *bmclass;
39 OOP_Object *vgahidd;
40 struct SignalSemaphore sema; /* Protecting this whole struct */
41 struct List modelist; /* List of modes supported */
43 /* The following should be object data, not class data! */
44 struct SignalSemaphore HW_acc; /* Exclusive hardware use */
45 OOP_Object *visible; /* Points to visible bitmap */
47 LONG mouseX; /* Pointer X position on screen */
48 ULONG mouseW; /* Pointer width */
49 LONG mouseY; /* Pointer Y position on screen */
50 ULONG mouseH; /* Pointer height */
51 ULONG mouseVisible; /* Is pointer visible flag */
52 UBYTE *mouseShape; /* Points to pointer shape */
53 UBYTE mouseBase; /* Pointer base color */
55 /* baseclass for CreateObject */
56 OOP_Class *basebm;
59 struct vgabase
61 struct Library library;
63 struct vga_staticdata vsd;
66 void draw_mouse (struct vga_staticdata *);
67 void erase_mouse (struct vga_staticdata *);
68 int vgaBlankScreen(int on);
70 #define XSD(cl) (&((struct vgabase *)cl->UserData)->vsd)
72 #endif /* HIDD_VGA_H */