1/*
2 * Copyright 2009, Haiku Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 *
5 * Authors:
6 *		Michael Lotz <mmlr@mlotz.ch>
7 */
8#ifndef VMWARE_MOUSE_H
9#define VMWARE_MOUSE_H
10
11#include <InputServerFilter.h>
12
13class VMWareMouseFilter : public BInputServerFilter {
14public:
15							VMWareMouseFilter();
16virtual						~VMWareMouseFilter();
17
18virtual	status_t			InitCheck();
19virtual	filter_result		Filter(BMessage *msg, BList *outList);
20
21private:
22		void				_ExecuteCommand(union packet_u &packet);
23
24		bool				_Enable();
25		void				_Disable();
26
27		void				_GetStatus(uint16 *status, uint16 *numWords);
28		void				_GetPosition(int32 &x, int32 &y);
29		void				_ScalePosition(int32 &x, int32 &y);
30
31		bool				fIsEnabled;
32};
33
34#endif // VMWARE_MOUSE_H
35