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.
66 lines
1.8 KiB
66 lines
1.8 KiB
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright (c) 1999-2002 Microsoft Corporation
|
|
//
|
|
// Module Name:
|
|
// NotificationMgr.h
|
|
//
|
|
// Description:
|
|
// Notification Manager implementation.
|
|
//
|
|
// Maintained By:
|
|
// David Potter (DavidP) 19-JUN-2001
|
|
// Geoffrey Pease (GPease) 22-NOV-1999
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
#pragma once
|
|
|
|
class CConnPointEnum;
|
|
|
|
// CNotificationManager
|
|
class CNotificationManager
|
|
: public INotificationManager
|
|
, public IConnectionPointContainer
|
|
{
|
|
private:
|
|
// IUnknown
|
|
LONG m_cRef; // Reference counter
|
|
|
|
// IConnectionPointContainer
|
|
CConnPointEnum * m_penumcp; // CP Enumerator and list
|
|
CCriticalSection m_csInstanceGuard;
|
|
|
|
private: // Methods
|
|
CNotificationManager( void );
|
|
~CNotificationManager( void );
|
|
STDMETHOD( HrInit )( void );
|
|
|
|
// Private copy constructor to prevent copying.
|
|
CNotificationManager( const CNotificationManager & );
|
|
|
|
// Private assignment operator to prevent copying.
|
|
CNotificationManager & operator=( const CNotificationManager & );
|
|
|
|
public: // Methods
|
|
static HRESULT S_HrCreateInstance( IUnknown ** ppunkOut );
|
|
|
|
//
|
|
// IUnknown
|
|
//
|
|
STDMETHOD( QueryInterface )( REFIID riidIn, LPVOID * ppvOut );
|
|
STDMETHOD_( ULONG, AddRef )( void );
|
|
STDMETHOD_( ULONG, Release )( void );
|
|
|
|
//
|
|
// INotificationManager
|
|
//
|
|
STDMETHOD( AddConnectionPoint )( REFIID riidIn, IConnectionPoint * pcpIn );
|
|
|
|
//
|
|
// IConnectionPointContainer
|
|
//
|
|
STDMETHOD( EnumConnectionPoints )( IEnumConnectionPoints ** ppEnumOut );
|
|
STDMETHOD( FindConnectionPoint )( REFIID riidIn, IConnectionPoint ** ppCPOut );
|
|
|
|
}; //*** class CNotificationManager
|