Leaked source code of windows server 2003
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.
 
 
 
 
 
 

93 lines
1.8 KiB

/*++
Copyright (c) 1999 Microsoft Corporation
Abstract:
@doc
@module Diff.hxx | Declarations used by the Software Snapshot interface
@end
Author:
Adi Oltean [aoltean] 01/24/2000
Revision History:
Name Date Comments
aoltean 01/24/2000 Created.
--*/
#ifndef __VSSW_DIFF_HXX__
#define __VSSW_DIFF_HXX__
#if _MSC_VER > 1000
#pragma once
#endif
////////////////////////////////////////////////////////////////////////
// Standard foo for file name aliasing. This code block must be after
// all includes of VSS header files.
//
#ifdef VSS_FILE_ALIAS
#undef VSS_FILE_ALIAS
#endif
#define VSS_FILE_ALIAS "SPRDIFFH"
//
////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Classes
//
// @class CVsDiffArea | IVsDiffArea implementation
//
// @index method | CVsDiffArea
// @doc CVsDiffArea
//
class CVssDiffAreaAllocator;
class ATL_NO_VTABLE CVsDiffArea
{
// Constructors/ destructors
public:
CVsDiffArea();
~CVsDiffArea();
// Operations
public:
HRESULT Initialize(
IN LPCWSTR pwszVolumeMountPoint // DO NOT transfer ownership
);
// Ovverides
public:
//
// interface IVsDiffArea
//
STDMETHOD(AddVolume)(
IN VSS_PWSZ pwszVolumeMountPoint
);
STDMETHOD(Query)(
IN OUT CVssDiffAreaAllocator* pObj
);
STDMETHOD(Clear)(
);
// Data members
protected:
CVssIOCTLChannel m_volumeIChannel;
// Critical section or avoiding race between tasks
CVssCriticalSection m_cs;
};
#endif // __VSSW_DIFF_HXX__