move Drivers -> drivers
[AROS.git] / arch / i386-pc / drivers / vga.hidd / vga.h
blob759054a31847e8dbd7fd3bc31b9c8fc15064732d
1 #ifndef HIDD_VGA_H
2 #define HIDD_VGA_H
4 /*
5 Copyright © 1995-2007, 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 /***** Mouse HIDD *******************/
29 /* IDs */
30 #define IID_Hidd_HwMouse "hidd.mouse.hw"
31 #define CLID_Hidd_HwMouse "hidd.mouse.hw"
33 /* Methods */
34 enum
36 moHidd_Mouse_HandleEvent
39 struct pHidd_Mouse_HandleEvent
41 OOP_MethodID mID;
42 ULONG event;
45 VOID Hidd_Mouse_HandleEvent(OOP_Object *o, ULONG event);
47 /***** VGA gfx HIDD *******************/
49 /* IDs */
50 #define IID_Hidd_VGAgfx "hidd.gfx.vga"
51 #define CLID_Hidd_VGAgfx "hidd.gfx.vga"
53 struct MouseShape {
54 ULONG width;
55 ULONG height;
56 ULONG bpp;
57 UBYTE *data;
60 /* misc */
62 struct vga_staticdata
64 struct SignalSemaphore sema; /* Protecting this whole struct */
65 struct SignalSemaphore HW_acc; /* Exclusive hardware use */
66 struct List modelist; /* List of modes supported */
67 struct bitmap_data *visible; /* Point to visible bitmap */
69 OOP_Class *vgaclass;
70 OOP_Class *onbmclass;
71 OOP_Class *offbmclass;
72 #if 0
73 OOP_Class *mouseclass;
74 #endif
75 OOP_Object *vgahidd;
76 #if 0
77 OOP_Object *mousehidd;
78 #endif
79 LONG mouseX; /* Pointer X position on screen */
80 ULONG mouseW; /* Pointer width */
81 LONG mouseY; /* Pointer Y position on screen */
82 ULONG mouseH; /* Pointer height */
83 ULONG mouseVisible; /* Is pointer visible flag */
84 UBYTE *mouseShape; /* Points to pointer shape */
86 VOID (*activecallback)(APTR, OOP_Object *, BOOL);
87 APTR callbackdata;
90 struct vgabase
92 struct Library library;
94 struct vga_staticdata vsd;
97 #if 0
98 /* nlorentz: This function is no lonfger necessary */
99 BOOL set_pixelformat(OOP_Object *);
101 #endif
103 void draw_mouse (struct vga_staticdata *);
105 #define XSD(cl) (&((struct vgabase *)cl->UserData)->vsd)
107 #endif /* HIDD_VGA_H */