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.

34 lines
898 B

  1. // PageFact.h: interface for the CPageFactory class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_PAGEFACT_H__13C333CD_90F7_42E8_B819_075B4D2B16F5__INCLUDED_)
  5. #define AFX_PAGEFACT_H__13C333CD_90F7_42E8_B819_075B4D2B16F5__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. class CPageFactory :
  10. public CComObjectRoot,
  11. public ITaskPageFactory
  12. {
  13. public:
  14. DECLARE_NOT_AGGREGATABLE(CPageFactory)
  15. BEGIN_COM_MAP(CPageFactory)
  16. COM_INTERFACE_ENTRY(ITaskPageFactory)
  17. END_COM_MAP()
  18. // ITaskPageFactory
  19. STDMETHOD(CreatePage)(REFCLSID rclsidPage, REFIID riid, void **ppv);
  20. template <class Q>
  21. static HRESULT CreateInstance(Q** pp)
  22. {
  23. return CPageFactory::_CreatorClass::CreateInstance(NULL, __uuidof(Q), (void**) pp);
  24. }
  25. };
  26. #endif // !defined(AFX_PAGEFACT_H__13C333CD_90F7_42E8_B819_075B4D2B16F5__INCLUDED_)