Open 3D Engine AzCore API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::IO::FileIOStream Class Reference

#include <FileIO.h>

Inherits AZ::IO::GenericStream.

Public Member Functions

 AZ_CLASS_ALLOCATOR (FileIOStream, SystemAllocator)
 
 FileIOStream (HandleType fileHandle, AZ::IO::OpenMode mode, bool ownsHandle)
 
 FileIOStream (const char *path, AZ::IO::OpenMode mode, bool errorOnFailure=false)
 
bool Open (const char *path, AZ::IO::OpenMode mode)
 
bool ReOpen () override
 
void Close () override
 
HandleType GetHandle () const
 
const char * GetFilename () const override
 
OpenMode GetModeFlags () const override
 
bool IsOpen () const override
 
bool CanSeek () const override
 
bool CanRead () const override
 
bool CanWrite () const override
 
void Seek (OffsetType bytes, SeekMode mode) override
 
SizeType Read (SizeType bytes, void *oBuffer) override
 
SizeType Write (SizeType bytes, const void *iBuffer) override
 
SizeType GetCurPos () const override
 
SizeType GetLength () const override
 
virtual void Flush ()
 
- Public Member Functions inherited from AZ::IO::GenericStream
virtual bool IsOpen () const =0
 
virtual bool CanSeek () const =0
 
virtual bool CanRead () const =0
 
virtual bool CanWrite () const =0
 
virtual void Seek (OffsetType bytes, SeekMode mode)=0
 
virtual SizeType Read (SizeType bytes, void *oBuffer)=0
 
virtual SizeType Write (SizeType bytes, const void *iBuffer)=0
 
virtual SizeType WriteFromStream (SizeType bytes, GenericStream *inputStream)
 
virtual SizeType GetCurPos () const =0
 
virtual SizeType GetLength () const =0
 
virtual SizeType ReadAtOffset (SizeType bytes, void *oBuffer, OffsetType offset=-1)
 
virtual SizeType WriteAtOffset (SizeType bytes, const void *iBuffer, OffsetType offset=-1)
 
virtual bool IsCompressed () const
 
virtual const char * GetFilename () const
 
virtual OpenMode GetModeFlags () const
 
virtual bool ReOpen ()
 
virtual void Close ()
 

Additional Inherited Members

- Public Types inherited from AZ::IO::GenericStream
enum  SeekMode { ST_SEEK_BEGIN , ST_SEEK_CUR , ST_SEEK_END }
 
- Static Public Attributes inherited from AZ::IO::GenericStream
static constexpr size_t StreamToStreamCopyBufferSize = 256
 
- Protected Member Functions inherited from AZ::IO::GenericStream
SizeType ComputeSeekPosition (OffsetType bytes, SeekMode mode)
 

Detailed Description

Stream implementation for reading/writing to/from a FileIO handle. This may be used alongside ObjectStream, or in async asset tasks.

Member Function Documentation

◆ CanRead()

bool AZ::IO::FileIOStream::CanRead ( ) const
overridevirtual

Implements AZ::IO::GenericStream.

◆ CanSeek()

bool AZ::IO::FileIOStream::CanSeek ( ) const
overridevirtual

Implements AZ::IO::GenericStream.

◆ CanWrite()

bool AZ::IO::FileIOStream::CanWrite ( ) const
overridevirtual

Implements AZ::IO::GenericStream.

◆ Close()

void AZ::IO::FileIOStream::Close ( )
overridevirtual

Reimplemented from AZ::IO::GenericStream.

◆ GetCurPos()

SizeType AZ::IO::FileIOStream::GetCurPos ( ) const
overridevirtual

Implements AZ::IO::GenericStream.

◆ GetFilename()

const char * AZ::IO::FileIOStream::GetFilename ( ) const
overridevirtual

Reimplemented from AZ::IO::GenericStream.

◆ GetLength()

SizeType AZ::IO::FileIOStream::GetLength ( ) const
overridevirtual

Implements AZ::IO::GenericStream.

◆ GetModeFlags()

OpenMode AZ::IO::FileIOStream::GetModeFlags ( ) const
overridevirtual

Reimplemented from AZ::IO::GenericStream.

◆ IsOpen()

bool AZ::IO::FileIOStream::IsOpen ( ) const
overridevirtual

Implements AZ::IO::GenericStream.

◆ Read()

SizeType AZ::IO::FileIOStream::Read ( SizeType  bytes,
void *  oBuffer 
)
overridevirtual

Implements AZ::IO::GenericStream.

◆ ReOpen()

bool AZ::IO::FileIOStream::ReOpen ( )
overridevirtual

Reimplemented from AZ::IO::GenericStream.

◆ Seek()

void AZ::IO::FileIOStream::Seek ( OffsetType  bytes,
SeekMode  mode 
)
overridevirtual

Implements AZ::IO::GenericStream.

◆ Write()

SizeType AZ::IO::FileIOStream::Write ( SizeType  bytes,
const void *  iBuffer 
)
overridevirtual

Implements AZ::IO::GenericStream.


The documentation for this class was generated from the following file: