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.
|
|
/*++
Copyright (c) 1998 Microsoft Corporation
Module Name:
rafile.hxx
Abstract:
This module contains the declarations for the RA_PROCESS_FILE class which handles the read ahead approach in file verification stage.
Author:
Daniel Chan (danielch) 08-Dec-97
--*/
#if !defined(_RA_PROCESS_FILE_DEFN_)
#define _RA_PROCESS_FILE_DEFN_
#include "supera.hxx"
#include "hmem.hxx"
#include "untfs.hxx"
#include "message.hxx"
#include "ntfsbit.hxx"
#include "numset.hxx"
DECLARE_CLASS( WSTRING ); DECLARE_CLASS( NTFS_ATTRIBUTE ); DECLARE_CLASS( NTFS_FRS_STRUCTURE ); DECLARE_CLASS( NUMBER_SET ); DECLARE_CLASS( NTFS_UPCASE_TABLE ); DECLARE_CLASS( RA_PROCESS_FILE ); DECLARE_CLASS( NTFS_SA );
class RA_PROCESS_FILE : public OBJECT {
public:
UNTFS_EXPORT DECLARE_CONSTRUCTOR(RA_PROCESS_FILE);
VIRTUAL UNTFS_EXPORT ~RA_PROCESS_FILE( );
STATIC NONVIRTUAL UNTFS_EXPORT BOOLEAN Initialize( IN PNTFS_SA Sa, IN BIG_INT TotalNumberOfFrs, IN PVCN FirstFrsNumber, IN PULONG NumberOfFrsToRead, IN PNTFS_FRS_STRUCTURE FrsStruc1, IN PNTFS_FRS_STRUCTURE FrsStruc2, IN PHMEM Hmem1, IN PHMEM Hmem2, IN HANDLE ReadAheadEvent, IN HANDLE ReadReadyEvent, IN PNTFS_ATTRIBUTE MftData, IN PNTFS_UPCASE_TABLE UpcaseTable );
STATIC NTSTATUS ProcessFilesWrapper( IN OUT PVOID lpParameter );
STATIC NONVIRTUAL PNTFS_SA GetSa( );
STATIC NONVIRTUAL BIG_INT GetTotalNumberOfFrs( );
STATIC NONVIRTUAL PVCN GetFirstFrsNumber( );
STATIC NONVIRTUAL PULONG GetNumberOfFrsToRead( );
STATIC NONVIRTUAL PNTFS_FRS_STRUCTURE GetFrsStruc1( );
STATIC NONVIRTUAL PNTFS_FRS_STRUCTURE GetFrsStruc2( );
STATIC NONVIRTUAL PHMEM GetHmem1( );
STATIC NONVIRTUAL PHMEM GetHmem2( );
STATIC NONVIRTUAL HANDLE GetReadAheadEvent( );
STATIC NONVIRTUAL HANDLE GetReadReadyEvent( );
STATIC NONVIRTUAL PNTFS_ATTRIBUTE GetMftData( );
STATIC NONVIRTUAL PNTFS_UPCASE_TABLE GetUpcaseTable( );
private:
NONVIRTUAL VOID Construct ( );
NONVIRTUAL VOID Destroy( );
STATIC PNTFS_SA _sa; STATIC ULONG64 _total_number_of_frs; STATIC PVCN _first_frs_number; STATIC PULONG _number_of_frs_to_read; STATIC PNTFS_FRS_STRUCTURE _frsstruc1; STATIC PNTFS_FRS_STRUCTURE _frsstruc2; STATIC PHMEM _hmem1; STATIC PHMEM _hmem2; STATIC HANDLE _read_ahead_event; STATIC HANDLE _read_ready_event; STATIC PNTFS_ATTRIBUTE _mft_data; STATIC PNTFS_UPCASE_TABLE _upcase_table; };
INLINE BIG_INT RA_PROCESS_FILE::GetTotalNumberOfFrs( ) { return _total_number_of_frs; }
INLINE PVCN RA_PROCESS_FILE::GetFirstFrsNumber( ) { return _first_frs_number; }
INLINE PULONG RA_PROCESS_FILE::GetNumberOfFrsToRead( ) { return _number_of_frs_to_read; }
INLINE PNTFS_FRS_STRUCTURE RA_PROCESS_FILE::GetFrsStruc1( ) { return _frsstruc1; }
INLINE PNTFS_FRS_STRUCTURE RA_PROCESS_FILE::GetFrsStruc2( ) { return _frsstruc2; }
INLINE PHMEM RA_PROCESS_FILE::GetHmem1( ) { return _hmem1; }
INLINE PHMEM RA_PROCESS_FILE::GetHmem2( ) { return _hmem2; }
INLINE HANDLE RA_PROCESS_FILE::GetReadAheadEvent( ) { return _read_ahead_event; }
INLINE HANDLE RA_PROCESS_FILE::GetReadReadyEvent( ) { return _read_ready_event; }
INLINE PNTFS_SA RA_PROCESS_FILE::GetSa( ) { return _sa; }
INLINE PNTFS_ATTRIBUTE RA_PROCESS_FILE::GetMftData( ) { return _mft_data; }
INLINE PNTFS_UPCASE_TABLE RA_PROCESS_FILE::GetUpcaseTable( ) { return _upcase_table; }
#endif // _RA_PROCESS_FILE_DEFN_
|