5 Copyright © 1995-2018, The AROS Development Team. All rights reserved.
8 Desc: Include for the kbd HIDD.
12 #ifndef EXEC_LIBRARIES_H
13 # include <exec/libraries.h>
20 #ifndef EXEC_SEMAPHORES_H
21 # include <exec/semaphores.h>
24 #ifndef EXEC_INTRERRUPTS_H
25 # include <exec/interrupts.h>
30 /****************************************************************************************/
32 /***** Kbd HIDD *******************/
35 #define IID_Hidd_HwKbd "hidd.kbd.hw"
36 #define CLID_Hidd_HwKbd "hidd.kbd.hw"
41 moHidd_Kbd_HandleEvent
44 struct pHidd_Kbd_HandleEvent
55 OOP_AttrBase
*attrbase
;
60 struct SignalSemaphore sema
; /* Protexting this whole struct */
61 struct Interrupt kbint
;
62 struct Resource
*ciares
;
63 struct timerequest
*timerio
;
64 struct Library
*TimerBase
;
70 OOP_AttrBase hiddKbdAB
;
72 OOP_MethodID hiddKbdBase
;
75 struct Library
*cs_OOPBase
;
80 struct Library library
;
81 struct kbd_staticdata ksd
;
86 VOID (*kbd_callback
)(APTR
, UWORD
);
88 struct Library
*TimerBase
;
92 /****************************************************************************************/
94 BOOL
obtainattrbases(struct abdescr
*abd
, struct Library
*OOPBase
);
95 VOID
releaseattrbases(struct abdescr
*abd
, struct Library
*OOPBase
);
97 /****************************************************************************************/
99 #define XSD(cl) (&((struct kbdbase *)cl->UserData)->ksd)
102 #define HiddAttrBase (XSD(cl)->hiddAB)
105 #define HiddKbdAB (XSD(cl)->hiddKbdAB)
108 #define HiddKbdBase (XSD(cl)->hiddKbdBase)
110 #define OOPBase (XSD(cl)->cs_OOPBase)
112 /****************************************************************************************/
114 #endif /* HIDD_KBD_H */