MouseImpl.h revision d578610de5e6c148ec4136f7eb3401767c772648
/* $Id$ */
/** @file
* VirtualBox COM class implementation
*/
/*
* Copyright (C) 2006-2011 Oracle Corporation
*
* This file is part of VirtualBox Open Source Edition (OSE), as
* available from http://www.virtualbox.org. This file is free software;
* General Public License (GPL) as published by the Free Software
* Foundation, in version 2 as it comes in the "COPYING" file of the
* VirtualBox OSE distribution. VirtualBox OSE is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*/
#ifndef ____H_MOUSEIMPL
#define ____H_MOUSEIMPL
#include "VirtualBoxBase.h"
#include "ConsoleEvents.h"
#include "ConsoleImpl.h"
#include "EventImpl.h"
/** Maximum number of devices supported */
enum { MOUSE_MAX_DEVICES = 3 };
/** Mouse driver instance data. */
{
void FinalRelease();
// public initializer/uninitializer for internal purposes only
void uninit();
// IMouse properties
// IMouse methods
ConsoleMouseInterface *getParent() const
{
return mParent;
}
/** notify the front-end of guest capability changes */
{
}
static DECLCALLBACK(void) mouseReportModes (PPDMIMOUSECONNECTOR pInterface, bool fRel, bool fAbs, bool fMT);
bool fContact);
bool *pfValid);
void sendMouseCapsNotifications(void);
bool guestNeedsHostCursor(void);
bool vmmdevCanAbs(void);
bool deviceCanAbs(void);
bool supportsAbs(void);
bool supportsRel(void);
bool supportsMT(void);
ConsoleMouseInterface * const mParent;
/** Pointer to the associated mouse driver. */
};
#endif // !____H_MOUSEIMPL
/* vi: set tabstop=4 shiftwidth=4 expandtab: */