windows-nt/Source/XPSP1/NT/inetsrv/query/cifrmwrk/indexing/notifdoc.hxx
2020-09-26 16:20:57 +08:00

86 lines
2.3 KiB
C++

//+------------------------------------------------------------------
//
// Copyright (C) Microsoft Corporation, 1991 - 1997
//
// File: notifdoc.hxx
//
// Contents: Notification opened document interface
//
// Classes: CINOpenedDoc
//
// History: 24-Feb-97 SitaramR Created
//
//-------------------------------------------------------------------
#pragma once
#include <ciintf.h>
#include "docname.hxx"
#include "idxnotif.hxx"
//+---------------------------------------------------------------------------
//
// Class: CINOpenedDoc
//
// Purpose: OpenedDoc interface to entries in buffer
//
// History: 24-Feb-97 SitaramR Created
//
//----------------------------------------------------------------------------
class CINOpenedDoc : public ICiCOpenedDoc
{
public:
//
// From IUnknown
//
virtual SCODE STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject );
virtual ULONG STDMETHODCALLTYPE AddRef();
virtual ULONG STDMETHODCALLTYPE Release();
//
// From ICiCOpenedDoc
//
virtual SCODE STDMETHODCALLTYPE Open( BYTE const * pbDocName, ULONG cbDocName );
virtual SCODE STDMETHODCALLTYPE Close( void );
virtual SCODE STDMETHODCALLTYPE GetDocumentName( ICiCDocName ** ppIDocName );
virtual SCODE STDMETHODCALLTYPE GetStatPropertyEnum( IPropertyStorage ** ppIStatPropEnum );
virtual SCODE STDMETHODCALLTYPE GetPropertySetEnum( IPropertySetStorage ** ppIPropSetEnum );
virtual SCODE STDMETHODCALLTYPE GetPropertyEnum( REFFMTID refGuidPropSet,
IPropertyStorage **ppIPropEnum ) ;
virtual SCODE STDMETHODCALLTYPE GetIFilter( IFilter ** ppIFilter );
virtual SCODE STDMETHODCALLTYPE GetSecurity( BYTE * pbData, ULONG *pcbData );
virtual SCODE STDMETHODCALLTYPE IsInUseByAnotherProcess( BOOL *pfInUse );
//
// Local methods
//
CINOpenedDoc( XInterface<CIndexNotificationTable> & xNotifTable );
private:
virtual ~CINOpenedDoc( ) { }
WORKID _widOpened; // Wid of opened document
XInterface<CIndexNotificationTable> _xNotifTable;
XInterface<CCiCDocName> _xName; // Name of opened document
ULONG _cRefs; // Ref count
};