ConsoleImpl.h revision 7258e84ec2fa7ecaf94e1a244bd6d2cf6b3a40a4
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * VBox Console COM Class definition
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * Copyright (C) 2006 InnoTek Systemberatung GmbH
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * available from http://www.virtualbox.org. This file is free software;
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * you can redistribute it and/or modify it under the terms of the GNU
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * General Public License as published by the Free Software Foundation,
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * distribution. VirtualBox OSE is distributed in the hope that it will
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * be useful, but WITHOUT ANY WARRANTY of any kind.
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * If you received this file as part of a commercial VirtualBox
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * distribution, then only the terms of your commercial VirtualBox
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * license agreement apply instead of the previous paragraph.
a82212bd36e1074408974b466798b9966bbaf49bvboxsync///////////////////////////////////////////////////////////////////////////////
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * Checks the availability of the underlying VM device driver corresponding
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * to the COM interface (IKeyboard, IMouse, IDisplay, etc.). When the driver is
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * not available (NULL), sets error info and returns returns E_ACCESSDENIED.
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * The translatable error message is defined in null context.
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * Intended to used only within Console children (i,e. Keyboard, Mouse,
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * Display, etc.).
a82212bd36e1074408974b466798b9966bbaf49bvboxsync * @param drv driver pointer to check (compare it with NULL)
if (!(drv)) \
* used by NetworkAdapterImpl.h/cpp.
#ifdef __DOXYGEN__
# define VBOX_WITH_UNIXY_TAP_NETWORKING
Console();
~Console();
void FinalRelease();
// public initializers/uninitializers for internal purposes only
void uninit();
#ifdef VRDP_MC
void processRemoteUSBDevices (uint32_t u32ClientId, VRDPUSBDEVICEDESC *pDevList, uint32_t cbDevList);
void *pShape);
void onAdditionsStateChange();
void onAdditionsOutdated();
setError (E_FAIL, tr("Could not load the external authentication library '%s' (%Vrc)"), filename, rc);
void release()
void add()
void releaseVMCaller();
bool aSetError = false);
bool fPassthrough);
static DECLCALLBACK(int)
static DECLCALLBACK(int)
static DECLCALLBACK (int)
static DECLCALLBACK(void)
static DECLCALLBACK(void)
const char *pszErrorID,
void releaseAllUSBDevices (void);
static DECLCALLBACK(void *) drvStatus_QueryInterface(PPDMIBASE pInterface, PDMINTERFACE enmInterface);
#ifdef VRDP_MC
int m_cAudioRefs;
static DECLCALLBACK(int) vrdp_ClientLogon (void *pvUser, uint32_t u32ClientId, const char *pszUser, const char *pszPassword, const char *pszDomain);
static DECLCALLBACK(void) vrdp_ClientDisconnect (void *pvUser, uint32_t u32ClientId, uint32_t fu32Intercepted);
static DECLCALLBACK(void) vrdp_InterceptUSB (void *pvUser, uint32_t u32ClientId, PFNVRDPUSBCALLBACK *ppfn, void **ppv);
static DECLCALLBACK(int) vrdp_ClientLogon (void *pvUser, const char *pszUser, const char *pszPassword, const char *pszDomain);
static const char *sSSMConsoleUnit;
bool valid;
bool visible;
bool alpha;
mpsc;
bool valid;
mcc;
bool valid;
bool numLock;
bool capsLock;
bool scrollLock;
klc;