mirror of
https://github.com/reactos/reactos.git
synced 2025-02-22 16:36:33 +00:00
Additions to ntifs.h (just for reference)
svn path=/trunk/; revision=119
This commit is contained in:
parent
570be7966c
commit
f5d7376e5a
1 changed files with 209 additions and 0 deletions
|
@ -1,6 +1,215 @@
|
|||
#ifndef __INCLUDE_DDK_NTIFS_H
|
||||
#define __INCLUDE_DDK_NTIFS_H
|
||||
|
||||
|
||||
/*
|
||||
* Cache manager interfaces (unused)
|
||||
*/
|
||||
#if 0
|
||||
|
||||
typedef struct _CC_FILE_SIZES
|
||||
{
|
||||
LARGE_INTEGER AllocationSize;
|
||||
LARGE_INTEGER FileSize;
|
||||
LARGE_INTEGER ValidDataLength;
|
||||
} CC_FILE_SIZES, *PCC_FILE_SIZES;
|
||||
|
||||
typedef struct _CACHE_MANAGER_CALLBACKS
|
||||
{
|
||||
PACQUIRE_FOR_LAZY_WRITE AcquireForLazyWrite;
|
||||
PRELEASE_FROM_LAZY_WRITE ReleaseFromLazyWrite;
|
||||
PACQUIRE_FOR_READ_AHEAD AcquireForReadAhead;
|
||||
PRELEASE_FROM_READ_AHREAD ReleaseFromReadAhead;
|
||||
} CACHE_MANAGER_CALLBACKS, *PCACHE_MANAGER_CALLBACKS;
|
||||
|
||||
VOID CcInitializeCacheMap(PFILE_OBJECT FileObject,
|
||||
PCC_FILE_SIZES FIleSizes,
|
||||
BOOLEAN PinAccess,
|
||||
PCACHE_MANAGER_CALLBACKS CallBacks,
|
||||
PVOID LazyWriterContext);
|
||||
|
||||
BOOLEAN CcCopyRead(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
BOOLEAN Wait,
|
||||
PVOID Buffer,
|
||||
PIO_STATUS_BLOCK IoStatus);
|
||||
|
||||
VOID CcFastCopyRead(PFILE_OBJECT FileObject,
|
||||
ULONG FileOffset,
|
||||
ULONG Length,
|
||||
ULONG PageCount,
|
||||
PVOID Buffer,
|
||||
PIO_STATUS_BLOCK IoStatus);
|
||||
|
||||
BOOLEAN CcCopyWrite(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
BOOLEAN Wait,
|
||||
PVOID Buffer);
|
||||
|
||||
VOID CcFastCopyWrite(PFILE_OBJECT FileObject,
|
||||
ULONG FileOffset,
|
||||
ULONG Length,
|
||||
PVOID Buffer);
|
||||
|
||||
BOOLEAN CcCanIWrite(PFILE_OBJECT FileObject,
|
||||
ULONG BytesToWrite,
|
||||
BOOLEAN Wait,
|
||||
BOOLEAN Retrying);
|
||||
|
||||
typedef VOID (*PCC_DEFERRED_WRITE)(PVOID Context1,
|
||||
PVOID Context2);
|
||||
|
||||
VOID CcDeferWrite(PFILE_OBJECT FileObject,
|
||||
PCC_POST_DEFERRED_WRITE PostRoutine,
|
||||
PVOID Context1,
|
||||
PVOID Context2,
|
||||
ULONG BytesToWrite,
|
||||
BOOLEAN Retrying);
|
||||
|
||||
VOID CcSetReadAheadGranularity(PFILE_OBJECT FileObject,
|
||||
ULONG Granularity);
|
||||
|
||||
VOID CcScheduleReadAhead(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileObject,
|
||||
ULONG Length);
|
||||
|
||||
#define CcReadAhead(FO,FOFF,LEN) { \
|
||||
if ((LEN) >= 256) { \
|
||||
CcScheduleReadAhead((FO),(FOFF),(LEN)); \
|
||||
} \
|
||||
} \
|
||||
|
||||
BOOLEAN CcMapData(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
BOOLEAN Wait,
|
||||
PVOID* Bcb,
|
||||
PVOID* Buffer);
|
||||
|
||||
BOOLEAN CcPinMappedData(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
BOOLEAN Wait,
|
||||
PVOID* Bcb);
|
||||
|
||||
BOOLEAN CcPinRead(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FIleOffset,
|
||||
ULONG Length,
|
||||
BOOLEAN Wait,
|
||||
PVOID* Bcb,
|
||||
PVOID* Buffer);
|
||||
|
||||
VOID CcSetDirtyPinnedData(PVOID Bcb,
|
||||
PLARGE_INTEGER Lsn);
|
||||
|
||||
BOOLEAN CcPreparePinWrite(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
BOOLEAN Zero,
|
||||
BOOLEAN Wait,
|
||||
PVOID* Bcb,
|
||||
PVOID* Buffer);
|
||||
|
||||
VOID CcUnpinData(PVOID Bcb);
|
||||
|
||||
VOID CcUnpinDataForThread(PVOID Bcb,
|
||||
ERESOURCE_THREAD ResourceThreadId);
|
||||
|
||||
VOID CcRepinBcb(PVOID Bcb);
|
||||
|
||||
VOID CcUnpinRepinnedBcb(PVOID Bcb,
|
||||
BOOLEAN WriteThrough,
|
||||
PIO_STATUS_BLOCK IoStatus);
|
||||
|
||||
PFILE_OBJECT CcGetFileObjectFromBcb(PVOID Bcb);
|
||||
|
||||
VOID CcMdlRead(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
PMDL* MdlChain,
|
||||
PIO_STATUS_BLOCK IoStatus);
|
||||
|
||||
VOID CcMdlReadComplete(PFILE_OBJECT FileObject,
|
||||
PMDL MdlChain);
|
||||
|
||||
VOID CcPrepareMdlWrite(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
PMDL* MdlChain,
|
||||
PIO_STATUS_BLOCK IoStatus);
|
||||
|
||||
VOID CcMdlWriteComplete(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
PMDL MdlChain);
|
||||
|
||||
VOID CcFlushCache(PSECTION_OBJECT_POINTERS SectionObjectPointer,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
PIO_STATUS_BLOCK IoStatus);
|
||||
|
||||
typedef struct _CACHE_UNINITIALIZE_EVENT
|
||||
{
|
||||
struct _CACHE_UNINITIALIZE_EVENT* Next;
|
||||
KEVENT Event;
|
||||
} CACHE_UNINITIALIZE_EVENT, *PCACHE_UNINITIALIZE_EVENT;
|
||||
|
||||
BOOLEAN CcUninitializeCacheMap(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER TruncateSize,
|
||||
PCACHE_UNINITIALIZE_EVENT UninitializeCompleteEvent);
|
||||
|
||||
VOID CcSetFileSizes(PFILE_OBJECT FileObject,
|
||||
PCC_FILE_SIZES FileSizes);
|
||||
|
||||
BOOLEAN CcPurgeCacheSection(PSECTION_OBJECT_POINTERS SectionObjectPointer,
|
||||
PLARGE_INTEGER FileObject,
|
||||
ULONG Length,
|
||||
BOOLEAN UninitializeCacheMaps);
|
||||
|
||||
VOID CcSetDirtyPageThreshold(PFILE_OBJECT FileObject,
|
||||
ULONG DirtyPageThreshold);
|
||||
|
||||
BOOLEAN CcZeroData(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER StartOffset,
|
||||
PLARGE_INTEGER EndOffset,
|
||||
BOOLEAN Wait);
|
||||
|
||||
PFILE_OBJECT CcGetFileObjectFromSectionPtrs(
|
||||
PSECTION_OBJECT_POINTERS SectionObjectPointer);
|
||||
|
||||
typedef VOID (*PFLUSH_TO_LSN)(PVOID LogHandle, LARGE_INTEGER Lsn);
|
||||
|
||||
VOID CcSetLogHandle(PFILE_OBJECT FIleObject,
|
||||
PVOID LogHandle,
|
||||
PFLUSH_TO_LSN FlushToLsnRoutine);
|
||||
|
||||
VOID CcSetAdditionalCacheAttributes(PFILE_OBJECT FileObject,
|
||||
BOOLEAN DisableReadAhread,
|
||||
BOOLEAN DisableWriteBehind);
|
||||
|
||||
typedef VOID (*PDIRTY_PAGE_ROUTINE)(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER FileOffset,
|
||||
ULONG Length,
|
||||
PLARGE_INTEGER OldestLsn,
|
||||
PLARGE_INTEGER NewestLsn,
|
||||
PVOID Context1,
|
||||
PVOID Context2);
|
||||
|
||||
LARGE_INTEGER CcGetDirtyPages(PVOID LogHandle,
|
||||
PDIRTY_PAGE_ROUTINE DirtyPageRoutine,
|
||||
PVOID Context1,
|
||||
PVOID Context2);
|
||||
|
||||
BOOLEAN CcIsThereDirtyData(PVPB Vpb);
|
||||
|
||||
LARGE_INTEGER CcGetLsnForFileObject(PFILE_OBJECT FileObject,
|
||||
PLARGE_INTEGER OldestLsn);
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
typedef struct
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue