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
16class EventStream;
17
18class 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
36extern InputManager* gInputManager;
37
38#endif	/* INPUT_MANAGER_H */
39