VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/VBoxCredProv/VBoxCredProvFactory.h@ 69500

Last change on this file since 69500 was 69500, checked in by vboxsync, 7 years ago

*: scm --update-copyright-year

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.6 KB
Line 
1/* $Id: VBoxCredProvFactory.h 69500 2017-10-28 15:14:05Z vboxsync $ */
2/** @file
3 * VBoxCredentialProvFactory - The VirtualBox Credential Provider Factory.
4 */
5
6/*
7 * Copyright (C) 2012-2017 Oracle Corporation
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16 */
17
18#ifndef ___VBOX_CREDPROV_FACTORY_H___
19#define ___VBOX_CREDPROV_FACTORY_H___
20
21#include <iprt/win/windows.h>
22
23class VBoxCredProvFactory : public IClassFactory
24{
25private:
26 /*
27 * Make the constructors / destructors private so that
28 * this class cannot be instanciated directly by non-friends.
29 */
30 VBoxCredProvFactory(void);
31 virtual ~VBoxCredProvFactory(void);
32
33public:
34 /** @name IUnknown methods.
35 * @{ */
36 IFACEMETHODIMP_(ULONG) AddRef(void);
37 IFACEMETHODIMP_(ULONG) Release(void);
38 IFACEMETHODIMP QueryInterface(REFIID interfaceID, void **ppvInterface);
39 /** @} */
40
41 /** @name IClassFactory methods.
42 * @{ */
43 IFACEMETHODIMP CreateInstance(IUnknown *pUnkOuter, REFIID interfaceID, void **ppvInterface);
44 IFACEMETHODIMP LockServer(BOOL fLock);
45 /** @} */
46
47private:
48 LONG m_cRefs;
49 friend HRESULT VBoxCredentialProviderCreate(REFCLSID classID, REFIID interfaceID, void **ppvInterface);
50};
51#endif /* !___VBOX_CREDPROV_FACTORY_H___ */
52
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette