KeyboardImpl.h revision ba07e624035c1a7b83315677c0750e70f5300bf9
a0f8619bc2bbe3614578c21b5b50a88d2841e7aavboxsync * VirtualBox COM class implementation
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync * Copyright (C) 2006-2011 Oracle Corporation
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync * available from http://www.virtualbox.org. This file is free software;
a0f8619bc2bbe3614578c21b5b50a88d2841e7aavboxsync * you can redistribute it and/or modify it under the terms of the GNU
c58f1213e628a545081c70e26c6b67a841cff880vboxsync * General Public License (GPL) as published by the Free Software
a0f8619bc2bbe3614578c21b5b50a88d2841e7aavboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
a0f8619bc2bbe3614578c21b5b50a88d2841e7aavboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
a0f8619bc2bbe3614578c21b5b50a88d2841e7aavboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync/** Limit of simultaneously attached devices (just USB and/or PS/2). */
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync/** Simple keyboard event class. */
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync// template instantiation
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsynctypedef ConsoleEventBuffer<KeyboardEvent> KeyboardEventBuffer;
0493c79a1867f7760af6bc330c8c42a09da852abvboxsync VIRTUALBOXBASE_ADD_ERRORINFO_SUPPORT(Keyboard, IKeyboard)
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync // public initializer/uninitializer for internal purposes only
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync STDMETHOD(PutScancodes)(ComSafeArrayIn(LONG, scancodes),
a0ed9c35186427ae0abbd14b1cfdf43bf2dc8659vboxsync STDMETHOD(COMGETTER(EventSource))(IEventSource ** aEventSource);
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync static DECLCALLBACK(void) keyboardLedStatusChange(PPDMIKEYBOARDCONNECTOR pInterface, PDMKEYBLEDS enmLeds);
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync static DECLCALLBACK(void) keyboardSetActive(PPDMIKEYBOARDCONNECTOR pInterface, bool fActive);
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync static DECLCALLBACK(void *) drvQueryInterface(PPDMIBASE pInterface, const char *pszIID);
021c939a9e3f688c0c3bbd759354be906bb2dcabvboxsync static DECLCALLBACK(int) drvConstruct(PPDMDRVINS pDrvIns, PCFGMNODE pCfg, uint32_t fFlags);
021c939a9e3f688c0c3bbd759354be906bb2dcabvboxsync static DECLCALLBACK(void) drvDestruct(PPDMDRVINS pDrvIns);
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync /** Pointer to the associated keyboard driver(s). */
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync struct DRVMAINKEYBOARD *mpDrv[KEYBOARD_MAX_DEVICES];
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync /** Pointer to the device instance for the VMM Device. */
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync /** Set after the first attempt to find the VMM Device. */
021c939a9e3f688c0c3bbd759354be906bb2dcabvboxsync#endif // !____H_KEYBOARDIMPL
632b4638bd18092c6b8edb4e1028c9be112f5076vboxsync/* vi: set tabstop=4 shiftwidth=4 expandtab: */