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.
 
 
 
 
 
 

71 lines
2.5 KiB

// Copyright (C) 1995-1999 Microsoft Corporation. All rights reserved.
// -----------------------------------------------------------------------
// Microsoft Distributed Transaction Coordinator (Microsoft Confidential)
// @doc
// @module ILGSTOR.H | Header for interface <i ILogStorage>.<nl><nl>
// Usage:<nl>
// Clients of this DLL require this file.
// @rev 0 | 10/18/94 | rcraig | Created: For WPGEP COM lab.
// @rev 1 | 04/04/95 | rcraig | Updated: For Viper COM DLL templates.
// @rev 2 | 05/09/95 | rbarnes | Cloned: For LOGMGR.DLL
// -----------------------------------------------------------------------
#ifndef _ILGSTOR_H
# define _ILGSTOR_H
// ===============================
// INCLUDES:
// ===============================
#include <objbase.h>
typedef enum _tagSTREAMMODE
{
STRMMODEREAD = 0x00000001, //@emem READ mode
STRMMODEWRITE = 0x00000002 //@emem WRITE mode
} STRMMODE;
// ===============================
// INTERFACE: ILogStorage
// ===============================
// -----------------------------------------------------------------------
// @interface ILogStorage | See also <c CILogStorage>.<nl><nl>
// Description:<nl>
// Provide the physical log storage abstraction<nl><nl>
// Usage:<nl>
// Useless, but for an example.
// -----------------------------------------------------------------------
DECLARE_INTERFACE_ (ILogStorage, IUnknown)
{
// @comm IUnknown methods: See <c CILogStorage>.
STDMETHOD (QueryInterface) (THIS_ REFIID i_riid, LPVOID FAR* o_ppv) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
// @comm ILogStorage methods: See <c CILogStorage>.
STDMETHOD (OpenLogStream) (LPSTR lpszStreamName, DWORD grfMode, LPVOID FAR* ppvStream) PURE;
STDMETHOD (OpenLogStreamByClassID) (CLSID clsClassID, DWORD grfMode, LPVOID FAR* ppvStream) PURE;
STDMETHOD (LogFlush) (void) PURE;
virtual ULONG (GetLogSpaceNeeded) (ULONG ulRecSize) PURE;
};
DECLARE_INTERFACE_ (ILogStorageInfo, IUnknown)
{
// @comm IUnknown methods: See <c CILogStorage>.
STDMETHOD (QueryInterface) (THIS_ REFIID i_riid, LPVOID FAR* o_ppv) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
virtual ULONG (GetLogGenerationNum) () PURE;
virtual ULONGLONG (GetTimeTakenToWrap) () PURE;
};
#endif _ILGSTOR_H