79 lines
1.2 KiB
C
79 lines
1.2 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 1998
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
arbitrate.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
These are the structures and defines that are used in the
|
||
|
arbitration code.
|
||
|
|
||
|
Authors:
|
||
|
|
||
|
Gor Nishanov (t-gorn) 5-Jun-1998
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
#ifndef ARBITRATE_H
|
||
|
#define ARBITRATE_H
|
||
|
|
||
|
#define DEFAULT_SECTOR_SIZE 512 // must be a power of two //
|
||
|
#define BLOCK_X 11
|
||
|
#define BLOCK_Y 12
|
||
|
|
||
|
DWORD
|
||
|
DiskArbitration(
|
||
|
IN OUT PDISK_RESOURCE ResourceEntry,
|
||
|
IN HANDLE FileHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
StartPersistentReservations(
|
||
|
IN OUT PDISK_RESOURCE ResourceEntry,
|
||
|
IN HANDLE FileHandle
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
StopPersistentReservations(
|
||
|
IN OUT PDISK_RESOURCE ResourceEntry
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ArbitrationInitialize(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ArbitrationCleanup(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
ArbitrationInfoInit(
|
||
|
IN OUT PDISK_RESOURCE ResourceEntry
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ArbitrationInfoCleanup(
|
||
|
IN OUT PDISK_RESOURCE ResourceEntry
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
DestroyArbWorkQueue(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
CreateArbWorkQueue(
|
||
|
IN RESOURCE_HANDLE ResourceHandle
|
||
|
);
|
||
|
|
||
|
|
||
|
#define ReservationInProgress(ResEntry) ( (ResEntry)->ArbitrationInfo.ControlHandle )
|
||
|
|
||
|
#endif // ARBITRATE_H
|