BazisLib::BasicFileBase Class Reference

#include <file.h>

Inherits BazisLib::AIFile.

Inherited by BazisLib::ACMemoryFile, and BazisLib::Network::HTTP::HTTPFile.

Collaboration diagram for BazisLib::BasicFileBase:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual size_t Read (void *pBuffer, size_t size, ActionStatus *pStatus=NULL, bool IncompleteReadSupported=false) override
 Reads data from the file (or stream).
virtual size_t Write (const void *pBuffer, size_t size, ActionStatus *pStatus=NULL) override
virtual LONGLONG GetSize (ActionStatus *pStatus=NULL) override
virtual LONGLONG Seek (LONGLONG Offset, FileFlags::SeekType seekType, ActionStatus *pStatus=NULL) override
virtual LONGLONG GetPosition (ActionStatus *pStatus=NULL) override
virtual void Close () override
virtual bool Valid () override=0
virtual ActionStatus Crop ()
 Sets the end of file to current position.
virtual SecurityDescriptor * GetFileSecurity (ActionStatus *pStatus=NULL) override
virtual ActionStatus SetFileSecurity (SecurityDescriptor *pDescriptor) override
virtual ActionStatus GetFileTimes (DateTime *pCreationTime, DateTime *pLastWriteTime, DateTime *pLastReadTime) override
virtual ActionStatus SetFileTimes (const DateTime *pCreationTime, const DateTime *pLastWriteTime, const DateTime *pLastReadTime) override
virtual bool AsynchronousIOSupported () override
virtual size_t ReadAt (void *pBuffer, ULONGLONG offset, size_t size, IoCompletion *pCompletion=NULL, ActionStatus *pStatus=NULL) override
virtual size_t WriteAt (const void *pBuffer, ULONGLONG offset, size_t size, IoCompletion *pCompletion=NULL, ActionStatus *pStatus=NULL) override

Static Public Member Functions

static LONGLONG DoSeek (ULONGLONG *RealOffset, ULONGLONG FileSize, LONGLONG Offset, FileFlags::SeekType seekType, bool CheckForEnd, ActionStatus *pStatus=NULL)
static size_t DoReadFromMemoryLite (void *pBufferToWrite, size_t MaxSize, const void *pBufferWithData, size_t BufferWithDataSize, size_t *pOffset, size_t *OffsetInTargetBuffer=NULL)
static size_t DoReadFromMemory (void *pBufferToWrite, size_t MaxSize, const void *pBufferWithData, size_t BufferWithDataSize, size_t *pOffset)


Member Function Documentation

virtual bool BazisLib::BasicFileBase::AsynchronousIOSupported (  )  [inline, override, virtual]

Implements BazisLib::AIFile.

virtual void BazisLib::BasicFileBase::Close (  )  [inline, override, virtual]

Implements BazisLib::AIFile.

Reimplemented in BazisLib::ACMemoryFile.

virtual ActionStatus BazisLib::BasicFileBase::Crop (  )  [inline, virtual]

Sets the end of file to current position.

Implements BazisLib::AIFile.

static size_t BazisLib::BasicFileBase::DoReadFromMemory ( void *  pBufferToWrite,
size_t  MaxSize,
const void *  pBufferWithData,
size_t  BufferWithDataSize,
size_t *  pOffset 
) [inline, static]

Here is the call graph for this function:

static size_t BazisLib::BasicFileBase::DoReadFromMemoryLite ( void *  pBufferToWrite,
size_t  MaxSize,
const void *  pBufferWithData,
size_t  BufferWithDataSize,
size_t *  pOffset,
size_t *  OffsetInTargetBuffer = NULL 
) [inline, static]

static LONGLONG BazisLib::BasicFileBase::DoSeek ( ULONGLONG *  RealOffset,
ULONGLONG  FileSize,
LONGLONG  Offset,
FileFlags::SeekType  seekType,
bool  CheckForEnd,
ActionStatus *  pStatus = NULL 
) [inline, static]

virtual SecurityDescriptor* BazisLib::BasicFileBase::GetFileSecurity ( ActionStatus *  pStatus = NULL  )  [inline, override, virtual]

Implements BazisLib::AIFile.

virtual ActionStatus BazisLib::BasicFileBase::GetFileTimes ( DateTime *  pCreationTime,
DateTime *  pLastWriteTime,
DateTime *  pLastReadTime 
) [inline, override, virtual]

Implements BazisLib::AIFile.

virtual LONGLONG BazisLib::BasicFileBase::GetPosition ( ActionStatus *  pStatus = NULL  )  [inline, override, virtual]

virtual LONGLONG BazisLib::BasicFileBase::GetSize ( ActionStatus *  pStatus = NULL  )  [inline, override, virtual]

virtual size_t BazisLib::BasicFileBase::Read ( void *  pBuffer,
size_t  size,
ActionStatus *  pStatus = NULL,
bool  IncompleteReadSupported = false 
) [inline, override, virtual]

Reads data from the file (or stream).

Parameters:
IncompleteReadSupported If this parameter is true, the Read() method can return a value different from the size parameter even when the EOF is not reached. For example, this can happen if a file is actually a network stream and some data is already in the buffer. However, if this parameter is false, the stream will wait till the end of connection, or till the requested amount of bytes will be received. Non-stream implementations can safely ignore this parameter and always wait for the end-of-file, or exactly the requested number of bytes.

Implements BazisLib::AIFile.

Reimplemented in BazisLib::ACMemoryFile, and BazisLib::Network::HTTP::HTTPFile.

virtual size_t BazisLib::BasicFileBase::ReadAt ( void *  pBuffer,
ULONGLONG  offset,
size_t  size,
IoCompletion *  pCompletion = NULL,
ActionStatus *  pStatus = NULL 
) [inline, override, virtual]

Implements BazisLib::AIFile.

Reimplemented in BazisLib::Network::HTTP::HTTPFile.

virtual LONGLONG BazisLib::BasicFileBase::Seek ( LONGLONG  Offset,
FileFlags::SeekType  seekType,
ActionStatus *  pStatus = NULL 
) [inline, override, virtual]

virtual ActionStatus BazisLib::BasicFileBase::SetFileSecurity ( SecurityDescriptor *  pDescriptor  )  [inline, override, virtual]

Implements BazisLib::AIFile.

virtual ActionStatus BazisLib::BasicFileBase::SetFileTimes ( const DateTime *  pCreationTime,
const DateTime *  pLastWriteTime,
const DateTime *  pLastReadTime 
) [inline, override, virtual]

Implements BazisLib::AIFile.

virtual bool BazisLib::BasicFileBase::Valid (  )  [override, pure virtual]

virtual size_t BazisLib::BasicFileBase::Write ( const void *  pBuffer,
size_t  size,
ActionStatus *  pStatus = NULL 
) [inline, override, virtual]

Implements BazisLib::AIFile.

Reimplemented in BazisLib::ACMemoryFile.

virtual size_t BazisLib::BasicFileBase::WriteAt ( const void *  pBuffer,
ULONGLONG  offset,
size_t  size,
IoCompletion *  pCompletion = NULL,
ActionStatus *  pStatus = NULL 
) [inline, override, virtual]

Implements BazisLib::AIFile.


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