Leaked source code of windows server 2003
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.

55 lines
974 B

  1. /*++
  2. Copyright (C) 1999- Microsoft Corporation
  3. Module Name:
  4. factory.h
  5. Abstract:
  6. Header file that declares CClassFactory object
  7. Author:
  8. William Hsieh (williamh) created
  9. Revision History:
  10. --*/
  11. #ifndef __FACTORY_H_
  12. #define __FACTORY_H_
  13. class CClassFactory : public IClassFactory
  14. {
  15. public:
  16. CClassFactory();
  17. ~CClassFactory();
  18. STDMETHOD(QueryInterface) (REFIID riid, LPVOID FAR* ppvObj);
  19. STDMETHOD_(ULONG, AddRef) ();
  20. STDMETHOD_(ULONG, Release) ();
  21. STDMETHOD(CreateInstance)(IUnknown* pUnkOuter, REFIID riid, LPVOID* ppvObj);
  22. STDMETHOD(LockServer)(BOOL fLock);
  23. static HRESULT GetClassObject(REFCLSID rclsid, REFIID riid, void** ppv);
  24. static HRESULT RegisterAll();
  25. static HRESULT UnregisterAll();
  26. static HRESULT CanUnloadNow(void);
  27. static LONG s_Locks;
  28. static LONG s_Objects;
  29. private:
  30. ULONG m_Refs;
  31. };
  32. #endif // __FACTORY_H_