VirtualBoxImpl.h revision c829b606c5535f37e00ffee381cca0815a57f319
/* $Id$ */
/** @file
*
* VirtualBox COM class implementation
*/
/*
* Copyright (C) 2006-2009 Sun Microsystems, Inc.
*
* 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.
*
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
* Clara, CA 95054 USA or visit http://www.sun.com if you need
* additional information or have any questions.
*/
#ifndef ____H_VIRTUALBOXIMPL
#define ____H_VIRTUALBOXIMPL
#include "VirtualBoxBase.h"
#ifdef RT_OS_WINDOWS
# include "win/resource.h"
#endif
{
}
#ifdef RT_OS_WINDOWS
#endif
struct VMClientWatcherData;
{
}
#ifdef RT_OS_WINDOWS
#endif
{
VirtualBox();
~VirtualBox();
void FinalRelease();
/* public initializer/uninitializer for internal purposes only */
void uninit();
/* IVirtualBox properties */
/* IVirtualBox methods */
IMedium **aFloppyImage);
/* public methods only for internal purposes */
/**
* Simple run-time type identification without having to enable C++ RTTI.
* The class IDs are defined in VirtualBoxBase.h.
* @return
*/
{
return clsidVirtualBox;
}
/**
* Override of the default locking class to be used for validating lock
* order with the standard member lock handle.
*/
{
return LOCKCLASS_VIRTUALBOXOBJECT;
}
#ifdef DEBUG
void dumpAllBackRefs();
#endif
#ifdef RT_OS_WINDOWS
#endif
void updateClientWatcher();
{
}
#ifdef VBOX_WITH_RESOURCE_USAGE_API
#endif /* VBOX_WITH_RESOURCE_USAGE_API */
const Utf8Str& getDefaultMachineFolder() const;
const Utf8Str& getDefaultHardDiskFolder() const;
const Utf8Str& getDefaultHardDiskFormat() const;
/** Returns the VirtualBox home directory */
const Utf8Str& settingsFilePath();
/* for VirtualBoxSupportErrorInfoImpl */
bool aSaveRegistry = true);
bool aSaveRegistry = true);
struct Data; // opaque data structure, defined in VirtualBoxImpl.cpp
Data *m;
/* static variables (defined in VirtualBoxImpl.cpp) */
static Bstr sPackageType;
#ifdef RT_OS_WINDOWS
#endif
};
////////////////////////////////////////////////////////////////////////////////
#endif // ____H_VIRTUALBOXIMPL