BazisLib::DDK::_File< _Base > Class Template Reference

#include <file.h>

Inherits _Base.

Collaboration diagram for BazisLib::DDK::_File< _Base >:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 _File ()
 _File (const FilePath &Path, FileFlags::FileAccess Access=FileFlags::ReadAccess, FileFlags::OpenMode OpenMode=FileFlags::OpenExisting, FileFlags::ShareMode ShareMode=FileFlags::ShareRead, FileFlags::FileAttribute Attributes=FileFlags::NormalFile, ActionStatus *pStatus=NULL, ULONG AdditionalFlags=FILE_NON_DIRECTORY_FILE|FILE_RANDOM_ACCESS|FILE_SYNCHRONOUS_IO_NONALERT|FILE_NO_INTERMEDIATE_BUFFERING)
 ~_File ()
size_t _ReadHelper (void *pBuffer, size_t size, ActionStatus *pStatus, bool IncompleteReadSupported, PLARGE_INTEGER ByteOffset)
size_t Read (void *pBuffer, size_t size, ActionStatus *pStatus=NULL, bool IncompleteReadSupported=false)
size_t _WriteHelper (const void *pBuffer, size_t size, ActionStatus *pStatus, PLARGE_INTEGER ByteOffset)
size_t Write (const void *pBuffer, size_t size, ActionStatus *pStatus=NULL)
LONGLONG GetSize (ActionStatus *pStatus=NULL)
LONGLONG Seek (LONGLONG Offset, FileFlags::SeekType seekType, ActionStatus *pStatus=NULL)
LONGLONG GetPosition (ActionStatus *pStatus=NULL)
void Close ()
bool Valid ()
SecurityDescriptor * GetFileSecurity (ActionStatus *pStatus=NULL)
ActionStatus SetFileSecurity (SecurityDescriptor *pDescriptor)
ActionStatus GetFileTimes (DateTime *pCreationTime, DateTime *pLastWriteTime, DateTime *pLastReadTime)
ActionStatus SetFileTimes (const DateTime *pCreationTime, const DateTime *pLastWriteTime, const DateTime *pLastReadTime)
FileFlags::FileAttribute GetFileAttributes (ActionStatus *pStatus=NULL)
ActionStatus AddFileAttributes (FileFlags::FileAttribute Attributes)
ActionStatus RemoveFileAttributes (FileFlags::FileAttribute Attributes)
ActionStatus Delete ()
ActionStatus Move (const FilePath &NewPath, bool DeleteIfExists)
ActionStatus QueryDirectoryFile (FILE_INFORMATION_CLASS InformationClass, void *pBuffer, unsigned BufferSize, PCUNICODE_STRING pMask=NULL, bool ResetScan=false)
ActionStatus QueryDirectoryFile (FILE_FULL_DIR_INFORMATION *pInfo, unsigned BufferSize, PCUNICODE_STRING pMask=NULL, bool ResetScan=false)
ActionStatus Crop ()
bool AsynchronousIOSupported ()
size_t ReadAt (void *pBuffer, ULONGLONG offset, size_t size, IoCompletion *pCompletion=NULL, ActionStatus *pStatus=NULL)
size_t WriteAt (const void *pBuffer, ULONGLONG offset, size_t size, IoCompletion *pCompletion=NULL, ActionStatus *pStatus=NULL)

Static Public Member Functions

static bool Exists (const FilePath &Path)

Protected Attributes

HANDLE m_hFile

Private Member Functions

 _File (const _File &)
_Fileoperator= (_File &)

template<class _Base>
class BazisLib::DDK::_File< _Base >


Constructor & Destructor Documentation

template<class _Base >
BazisLib::DDK::_File< _Base >::_File ( const _File< _Base > &   )  [inline, private]

template<class _Base >
BazisLib::DDK::_File< _Base >::_File (  )  [inline]

template<class _Base >
BazisLib::DDK::_File< _Base >::_File ( const FilePath Path,
FileFlags::FileAccess  Access = FileFlags::ReadAccess,
FileFlags::OpenMode  OpenMode = FileFlags::OpenExisting,
FileFlags::ShareMode  ShareMode = FileFlags::ShareRead,
FileFlags::FileAttribute  Attributes = FileFlags::NormalFile,
ActionStatus pStatus = NULL,
ULONG  AdditionalFlags = FILE_NON_DIRECTORY_FILE | FILE_RANDOM_ACCESS | FILE_SYNCHRONOUS_IO_NONALERT | FILE_NO_INTERMEDIATE_BUFFERING 
) [inline]

template<class _Base >
BazisLib::DDK::_File< _Base >::~_File (  )  [inline]


Member Function Documentation

template<class _Base >
size_t BazisLib::DDK::_File< _Base >::_ReadHelper ( void *  pBuffer,
size_t  size,
ActionStatus pStatus,
bool  IncompleteReadSupported,
PLARGE_INTEGER  ByteOffset 
) [inline]

template<class _Base >
size_t BazisLib::DDK::_File< _Base >::_WriteHelper ( const void *  pBuffer,
size_t  size,
ActionStatus pStatus,
PLARGE_INTEGER  ByteOffset 
) [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::AddFileAttributes ( FileFlags::FileAttribute  Attributes  )  [inline]

template<class _Base >
bool BazisLib::DDK::_File< _Base >::AsynchronousIOSupported (  )  [inline]

template<class _Base >
void BazisLib::DDK::_File< _Base >::Close (  )  [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::Crop (  )  [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::Delete (  )  [inline]

template<class _Base >
static bool BazisLib::DDK::_File< _Base >::Exists ( const FilePath Path  )  [inline, static]

template<class _Base >
FileFlags::FileAttribute BazisLib::DDK::_File< _Base >::GetFileAttributes ( ActionStatus pStatus = NULL  )  [inline]

template<class _Base >
SecurityDescriptor* BazisLib::DDK::_File< _Base >::GetFileSecurity ( ActionStatus pStatus = NULL  )  [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::GetFileTimes ( DateTime pCreationTime,
DateTime pLastWriteTime,
DateTime pLastReadTime 
) [inline]

template<class _Base >
LONGLONG BazisLib::DDK::_File< _Base >::GetPosition ( ActionStatus pStatus = NULL  )  [inline]

template<class _Base >
LONGLONG BazisLib::DDK::_File< _Base >::GetSize ( ActionStatus pStatus = NULL  )  [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::Move ( const FilePath NewPath,
bool  DeleteIfExists 
) [inline]

template<class _Base >
_File& BazisLib::DDK::_File< _Base >::operator= ( _File< _Base > &   )  [inline, private]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::QueryDirectoryFile ( FILE_FULL_DIR_INFORMATION pInfo,
unsigned  BufferSize,
PCUNICODE_STRING  pMask = NULL,
bool  ResetScan = false 
) [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::QueryDirectoryFile ( FILE_INFORMATION_CLASS  InformationClass,
void *  pBuffer,
unsigned  BufferSize,
PCUNICODE_STRING  pMask = NULL,
bool  ResetScan = false 
) [inline]

template<class _Base >
size_t BazisLib::DDK::_File< _Base >::Read ( void *  pBuffer,
size_t  size,
ActionStatus pStatus = NULL,
bool  IncompleteReadSupported = false 
) [inline]

template<class _Base >
size_t BazisLib::DDK::_File< _Base >::ReadAt ( void *  pBuffer,
ULONGLONG  offset,
size_t  size,
IoCompletion *  pCompletion = NULL,
ActionStatus pStatus = NULL 
) [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::RemoveFileAttributes ( FileFlags::FileAttribute  Attributes  )  [inline]

template<class _Base >
LONGLONG BazisLib::DDK::_File< _Base >::Seek ( LONGLONG  Offset,
FileFlags::SeekType  seekType,
ActionStatus pStatus = NULL 
) [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::SetFileSecurity ( SecurityDescriptor *  pDescriptor  )  [inline]

template<class _Base >
ActionStatus BazisLib::DDK::_File< _Base >::SetFileTimes ( const DateTime pCreationTime,
const DateTime pLastWriteTime,
const DateTime pLastReadTime 
) [inline]

template<class _Base >
bool BazisLib::DDK::_File< _Base >::Valid (  )  [inline]

template<class _Base >
size_t BazisLib::DDK::_File< _Base >::Write ( const void *  pBuffer,
size_t  size,
ActionStatus pStatus = NULL 
) [inline]

template<class _Base >
size_t BazisLib::DDK::_File< _Base >::WriteAt ( const void *  pBuffer,
ULONGLONG  offset,
size_t  size,
IoCompletion *  pCompletion = NULL,
ActionStatus pStatus = NULL 
) [inline]


Member Data Documentation

template<class _Base >
HANDLE BazisLib::DDK::_File< _Base >::m_hFile [protected]


The documentation for this class was generated from the following file:
SourceForge.net Logo