/*++ Copyright (C) 1996-2001 Microsoft Corporation Module Name: Exclusion.h Abstract: History: --*/ #ifndef _Exclusion_H #define _Exclusion_H #include #include "ProvCache.h" /****************************************************************************** * * Name: * * * Description: * * *****************************************************************************/ class Exclusion : public ExclusionCacheElement { private: WmiMultiReaderMultiWriter m_Exclusion ; public: Exclusion ( const ULONG &a_ReaderSize , const ULONG &a_WriterSize , const GUID &a_Guid , const ULONG &a_Period , CWbemGlobal_ExclusionController *a_Controller ) ; ~Exclusion () ; STDMETHODIMP QueryInterface ( REFIID , LPVOID FAR * ) ; STDMETHODIMP_( ULONG ) AddRef () ; STDMETHODIMP_( ULONG ) Release () ; WmiMultiReaderMultiWriter &GetExclusion () { return m_Exclusion ; } static HRESULT CreateAndCache ( const GUID &a_Clsid , Exclusion *&a_Exclusion ) ; } ; #endif _Exclusion_H