3
* VBox frontends: Basic Frontend (BFE):
4
* Declaration of Keyboard class and related things
8
* Copyright (C) 2006-2007 innotek GmbH
10
* This file is part of VirtualBox Open Source Edition (OSE), as
11
* available from http://www.virtualbox.org. This file is free software;
12
* you can redistribute it and/or modify it under the terms of the GNU
13
* General Public License as published by the Free Software Foundation,
14
* in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
15
* distribution. VirtualBox OSE is distributed in the hope that it will
16
* be useful, but WITHOUT ANY WARRANTY of any kind.
19
#ifndef ____H_KEYBOARDIMPL
20
#define ____H_KEYBOARDIMPL
24
/** Simple keyboard event class. */
28
KeyboardEvent() : scan(-1) {}
29
KeyboardEvent(int _scan) : scan(_scan) {}
32
return (scan & ~0x80) && !(scan & ~0xFF);
45
STDMETHOD(PutScancode)(LONG scancode);
46
STDMETHOD(PutScancodes)(LONG *scancodes,
51
static const PDMDRVREG DrvReg;
55
static DECLCALLBACK(void *) drvQueryInterface(PPDMIBASE pInterface, PDMINTERFACE enmInterface);
56
static DECLCALLBACK(int) drvConstruct(PPDMDRVINS pDrvIns, PCFGMNODE pCfgHandle);
57
static DECLCALLBACK(void) drvDestruct(PPDMDRVINS pDrvIns);
59
/** Pointer to the associated keyboard driver. */
60
struct DRVMAINKEYBOARD *mpDrv;
61
/** Pointer to the device instance for the VMM Device. */
63
/** Set after the first attempt to find the VMM Device. */
67
extern Keyboard *gKeyboard;
69
#endif // ____H_KEYBOARDIMPL