Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

42 lines
1.2 KiB

#ifndef SCCLS_H
#define SCCLS_H
STDAPI CZaxxon_CreateInstance(IUnknown *punk, REFIID riid, void **ppv);
STDAPI CZaxxonPlayer_CreateInstance(IUnknown *punk, REFIID riid, void **ppv);
STDAPI CMegaMan_CreateInstance(IUnknown *punk, REFIID riid, void **ppv);
/*****************************************************************************
*
* CFactory
*
*
*****************************************************************************/
class CFactory : public IClassFactory
{
public:
//////////////////////////////////////////////////////
// Public Interfaces
//////////////////////////////////////////////////////
// *** IUnknown ***
virtual STDMETHODIMP_(ULONG) AddRef(void);
virtual STDMETHODIMP_(ULONG) Release(void);
virtual STDMETHODIMP QueryInterface(REFIID riid, void ** ppv);
// *** IClassFactory ***
virtual STDMETHODIMP CreateInstance(IUnknown *pUnkOuter, REFIID riid, void **ppv);
virtual STDMETHODIMP LockServer(BOOL fLock);
public:
CFactory(REFCLSID rclsid);
// Friend Functions
friend HRESULT CFactory_Create(REFCLSID rclsid, REFIID riid, void ** ppv);
protected:
~CFactory(void);
int _cRef;
CLSID _rclsid;
};
#endif