xref: /haiku/src/servers/app/InputManager.h (revision 21258e2674226d6aa732321b6f8494841895af5f)
1 /*
2  * Copyright 2005, Haiku, Inc. All Rights Reserved.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  *		Axel Dörfler, axeld@pinc-software.de
7  */
8 #ifndef INPUT_MANAGER_H
9 #define INPUT_MANAGER_H
10 
11 
12 #include <Locker.h>
13 #include <ObjectList.h>
14 
15 
16 class EventStream;
17 
18 class InputManager : public BLocker {
19 	public:
20 		InputManager();
21 		virtual ~InputManager();
22 
23 		void UpdateScreenBounds(BRect bounds);
24 
25 		bool AddStream(EventStream* stream);
26 		void RemoveStream(EventStream* stream);
27 
28 		EventStream* GetStream();
29 		void PutStream(EventStream* stream);
30 
31 	private:
32 		BObjectList<EventStream> fFreeStreams;
33 		BObjectList<EventStream> fUsedStreams;
34 };
35 
36 extern InputManager* gInputManager;
37 
38 #endif	/* INPUT_MANAGER_H */
39