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.

67 lines
1.8 KiB

  1. /////////////////////////////////////////////////////////////////////////////////////
  2. // ATSCLocator.h : Declaration of the CATSCLocator
  3. // Copyright (c) Microsoft Corporation 2000.
  4. #ifndef __ATSCLOCATOR_H_
  5. #define __ATSCLOCATOR_H_
  6. #pragma once
  7. #include <objectwithsiteimplsec.h>
  8. #include "ATSClocatorimpl.h"
  9. /////////////////////////////////////////////////////////////////////////////
  10. // CATSCLocator
  11. class ATL_NO_VTABLE __declspec(uuid("8872FF1B-98FA-4d7a-8D93-C9F1055F85BB"))CATSCLocator :
  12. public CComObjectRootEx<CComMultiThreadModel>,
  13. public CComCoClass<CATSCLocator, &CLSID_ATSCLocator>,
  14. public IObjectWithSiteImplSec<CATSCLocator>,
  15. public IATSCLocatorImpl<CATSCLocator>,
  16. public ISupportErrorInfo
  17. {
  18. public:
  19. CATSCLocator() : m_bRequiresSave(false)
  20. {
  21. }
  22. REGISTER_AUTOMATION_OBJECT_WITH_TM(IDS_REG_TUNEROBJ,
  23. IDS_REG_ATSCLOCATOR_PROGID,
  24. IDS_REG_ATSCLOCATOR_DESC,
  25. LIBID_TunerLib,
  26. CLSID_ATSCLocator, tvBoth);
  27. DECLARE_PROTECT_FINAL_CONSTRUCT()
  28. BEGIN_COM_MAP(CATSCLocator)
  29. COM_INTERFACE_ENTRY(IATSCLocator)
  30. COM_INTERFACE_ENTRY(ILocator)
  31. COM_INTERFACE_ENTRY(IObjectWithSite)
  32. COM_INTERFACE_ENTRY(IPersistPropertyBag)
  33. COM_INTERFACE_ENTRY(IPersist)
  34. COM_INTERFACE_ENTRY(IDispatch)
  35. COM_INTERFACE_ENTRY(ISupportErrorInfo)
  36. END_COM_MAP_WITH_FTM()
  37. BEGIN_CATEGORY_MAP(CATSCLocator)
  38. IMPLEMENTED_CATEGORY(CATID_SafeForScripting)
  39. IMPLEMENTED_CATEGORY(CATID_SafeForInitializing)
  40. IMPLEMENTED_CATEGORY(CATID_PersistsToPropertyBag)
  41. END_CATEGORY_MAP()
  42. public:
  43. bool m_bRequiresSave;
  44. BEGIN_PROP_MAP(CATSCLocator)
  45. CHAIN_PROP_MAP(IATSCLocatorImpl<CATSCLocator>)
  46. END_PROPERTY_MAP()
  47. // ISupportsErrorInfo
  48. STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  49. };
  50. typedef CComQIPtr<IATSCLocator> PQATSCLocator;
  51. #endif //__ATSCLOCATOR_H_