module.cpp revision f044158ee9eb7045a43f2c4ef2fbc07cb11329ae
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * XPCOM module implementation functions
3f1e0eea71cabeb90529e546f16eb7aee513fde9vboxsync * Copyright (C) 2006-2014 Oracle Corporation
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * available from http://www.virtualbox.org. This file is free software;
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * you can redistribute it and/or modify it under the terms of the GNU
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * General Public License (GPL) as published by the Free Software
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync/* Make sure all the stdint.h macros are included - must come first! */
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync// generated file
2634ec5cbf8f1fa0a968cd4664ead6df1fed730dvboxsync// XPCOM glue code unfolding
7666082b743c5e146a8cee6cc794ff4bc3fd0ffdvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(VirtualBoxClient, IVirtualBoxClient)
7666082b743c5e146a8cee6cc794ff4bc3fd0ffdvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS2_CI(Session, ISession, IInternalSessionControl)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS2_CI(GuestProcess, IGuestProcess, IProcess)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(GuestSession, IGuestSession)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(Keyboard, IKeyboard)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS2_CI(Display, IDisplay, IEventListener)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(MachineDebugger, IMachineDebugger)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(Progress, IProgress)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS2_CI(RemoteUSBDevice, IHostUSBDevice, IUSBDevice)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(SharedFolder, ISharedFolder)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(VRDEServerInfo, IVRDEServerInfo)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync// deliberately omit ExtPackFile as it's unusable in the client context
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync// NS_DECL_CLASSINFO(ExtPackFile)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync// NS_IMPL_THREADSAFE_ISUPPORTS2_CI(ExtPackFile, IExtPackFile, IExtPackBase)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_THREADSAFE_ISUPPORTS2_CI(ExtPack, IExtPack, IExtPackBase)
f351fab06d1e1507b72f5c574df71193061fd393vboxsyncNS_IMPL_THREADSAFE_ISUPPORTS1_CI(ExtPackManager, IExtPackManager)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync#endif /* VBOX_COM_INPROC_API_CLIENT */
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * Singleton class factory that holds a reference to the created instance
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * (preventing it from being destroyed) until the module is explicitly
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * unloaded by the XPCOM shutdown code.
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * Suitable for IN-PROC components.
b74ca013e5f201a2dd371e6c438433ceac12af30vboxsync/** @note this is for singleton; disabled for now */
576d4214137bce409cdcf01e8df4a0bca5e0b2d1vboxsync//Session *SessionClassFactory::instance = 0;
b74ca013e5f201a2dd371e6c438433ceac12af30vboxsync//NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR_WITH_RC (
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync// Session, SessionClassFactory::getInstance
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_GENERIC_FACTORY_CONSTRUCTOR_WITH_RC(VirtualBoxClient)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * Component definition table.
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * Lists all components defined in this module.
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync NS_SESSION_CID, NS_SESSION_CONTRACTID, // CID/ContractID
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync/** @note this is for singleton; disabled for now */
9e4166cf5ed4940f506bc718ea6c89bf7ed252c8vboxsync// SessionClassFactory::releaseInstance,
1e3cd9c9c95ff352da1331a1789b05fd012c880dvboxsync NS_CI_INTERFACE_GETTER_NAME(Session), // interfaces function
22e281e75ed636601178296c6daebda8f1d17c59vboxsync &NS_CLASSINFO_NAME(Session) // global class info & flags
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync NS_VIRTUALBOXCLIENT_CID, NS_VIRTUALBOXCLIENT_CONTRACTID, // CID/ContractID
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync VirtualBoxClientConstructor, // constructor function
2634ec5cbf8f1fa0a968cd4664ead6df1fed730dvboxsync NS_CI_INTERFACE_GETTER_NAME(VirtualBoxClient), // interfaces function
2634ec5cbf8f1fa0a968cd4664ead6df1fed730dvboxsync &NS_CLASSINFO_NAME(VirtualBoxClient) // global class info & flags
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncNS_IMPL_NSGETMODULE (VirtualBox_Client_Module, components)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync/* vi: set tabstop=4 shiftwidth=4 expandtab: */