Authors: Chris Morgan <cmorgan@wpi.edu>, James Abbatiello <abbeyj@wpi.edu>
[wine/multimedia.git] / include / message.h
blob6c54bb4b6f0a9bde00309fc025b7d8bb7b6d4d15
1 /*
2 * Message definitions
4 * Copyright 1993 Alexandre Julliard
5 */
7 #ifndef __WINE_MESSAGE_H
8 #define __WINE_MESSAGE_H
10 #include "win.h"
11 #include "queue.h"
13 extern DWORD MSG_WineStartTicks; /* Ticks at Wine startup */
15 /* message.c */
16 extern BOOL MSG_InternalGetMessage( MSG *msg, HWND hwnd,
17 HWND hwndOwner, WPARAM code,
18 WORD flags, BOOL sendIdle );
20 /* timer.c */
21 extern BOOL TIMER_Init( void );
22 extern void TIMER_RemoveWindowTimers( HWND hwnd );
23 extern void TIMER_RemoveQueueTimers( HQUEUE16 hqueue );
24 extern void TIMER_SwitchQueue( HQUEUE16 hOldQueue, HQUEUE16 hNewQueue );
25 extern LONG TIMER_GetNextExpiration(void);
26 extern void TIMER_ExpireTimers(void);
27 extern BOOL TIMER_GetTimerMsg( MSG *msg, HWND hwnd,
28 HQUEUE16 hQueue, BOOL remove );
30 #define EVENT_IO_READ 0
31 #define EVENT_IO_WRITE 1
32 #define EVENT_IO_EXCEPT 2
34 /* event.c */
36 typedef struct _EVENT_DRIVER {
37 BOOL (*pInit)(void);
38 void (*pAddIO)(int, unsigned);
39 void (*pDeleteIO)(int, unsigned);
40 BOOL (*pWaitNetEvent)(BOOL, BOOL);
41 void (*pSynchronize)(void);
42 BOOL (*pCheckFocus)(void);
43 BOOL (*pQueryPointer)(DWORD *, DWORD *, DWORD *);
44 void (*pDummyMotionNotify)(void);
45 BOOL (*pPending)(void);
46 BOOL16 (*pIsUserIdle)(void);
47 void (*pWakeUp)(void);
48 } EVENT_DRIVER;
50 extern void EVENT_AddIO( int fd, unsigned flag );
51 extern void EVENT_DeleteIO( int fd, unsigned flag );
52 extern BOOL EVENT_Init( void );
53 extern BOOL EVENT_WaitNetEvent( BOOL sleep, BOOL peek );
54 extern void EVENT_Synchronize(void);
55 extern BOOL EVENT_CheckFocus( void );
56 extern BOOL EVENT_QueryPointer(DWORD *posX, DWORD *posY, DWORD *state);
57 extern void EVENT_DummyMotionNotify(void);
58 extern BOOL EVENT_Pending(void);
59 extern void EVENT_WakeUp(void);
61 /* input.c */
63 extern HWND EVENT_Capture( HWND, INT16 );
64 extern BOOL EVENT_QueryPointer( DWORD *posX, DWORD *posY, DWORD *state );
66 extern void joySendMessages(void);
68 #endif /* __WINE_MESSAGE_H */