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.

55 lines
1.4 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1999-2000 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // NotificationMgr.h
  7. //
  8. // Description:
  9. // Notification Manager implementation.
  10. //
  11. // Maintained By:
  12. // Geoffrey Pease (GPease) 22-NOV-1999
  13. //
  14. //////////////////////////////////////////////////////////////////////////////
  15. #pragma once
  16. class CConnPointEnum;
  17. // CNotificationManager
  18. class
  19. CNotificationManager:
  20. public INotificationManager,
  21. public IConnectionPointContainer
  22. {
  23. private:
  24. // IUnknown
  25. LONG m_cRef; // Reference counter
  26. // IConnectionPointContainer
  27. CConnPointEnum * m_penumcp; // CP Enumerator and list
  28. private: // Methods
  29. CNotificationManager( );
  30. ~CNotificationManager();
  31. STDMETHOD(Init)( );
  32. public: // Methods
  33. static HRESULT
  34. S_HrCreateInstance( IUnknown ** ppunkOut );
  35. // IUnknown
  36. STDMETHOD( QueryInterface )( REFIID riid, LPVOID *ppv );
  37. STDMETHOD_( ULONG, AddRef )(void);
  38. STDMETHOD_( ULONG, Release )(void);
  39. // INotificationManager
  40. STDMETHOD( AddConnectionPoint )( REFIID riidIn, IConnectionPoint * pcpIn );
  41. // IConnectionPointContainer
  42. STDMETHOD( EnumConnectionPoints )( IEnumConnectionPoints **ppEnumOut );
  43. STDMETHOD( FindConnectionPoint )( REFIID riidIn, IConnectionPoint **ppCPOut );
  44. }; // class CNotificationManager