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