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::Data::AssetDataStream Class Reference

Inherits AZ::IO::GenericStream.

Public Types

using VectorDataSource = AZStd::vector< AZ::u8, AZStd::allocator >
 
using OnCompleteCallback = AZStd::function< void(AZ::IO::IStreamerTypes::RequestStatus)>
 
- Public Types inherited from AZ::IO::GenericStream
enum  SeekMode { ST_SEEK_BEGIN , ST_SEEK_CUR , ST_SEEK_END }
 

Public Member Functions

 AssetDataStream (AZ::IO::IStreamerTypes::RequestMemoryAllocator *bufferAllocator=nullptr)
 Construct a new AssetDataStream.
 
void Open (const VectorDataSource &data)
 
void Open (VectorDataSource &&data)
 
void Open (const AZStd::string &filePath, size_t fileOffset, size_t assetSize, AZ::IO::IStreamerTypes::Deadline deadline=AZ::IO::IStreamerTypes::s_noDeadline, AZ::IO::IStreamerTypes::Priority priority=AZ::IO::IStreamerTypes::s_priorityMedium, OnCompleteCallback loadCallback={})
 
void Reschedule (AZ::IO::IStreamerTypes::Deadline newDeadline, AZ::IO::IStreamerTypes::Priority newPriority)
 
void BlockUntilLoadComplete ()
 
bool IsOpen () const override
 
bool CanSeek () const override
 
bool CanRead () const override
 
bool CanWrite () const override
 
void Seek (AZ::IO::OffsetType bytes, AZ::IO::GenericStream::SeekMode mode) override
 
AZ::IO::SizeType Write (AZ::IO::SizeType bytes, const void *iBuffer) override
 
AZ::IO::SizeType Read (AZ::IO::SizeType bytes, void *oBuffer) override
 
AZ::IO::SizeType GetCurPos () const override
 
AZ::IO::SizeType GetLength () const override
 
void Close () override
 
const char * GetFilename () const override
 
AZ::IO::IStreamerTypes::Deadline GetStreamingDeadline () const
 
AZ::IO::IStreamerTypes::Priority GetStreamingPriority () const
 
bool IsFullyLoaded () const
 Whether or not all data has been loaded.
 
size_t GetLoadedSize () const
 Gets the size of data loaded (so far).
 
void RequestCancel ()
 
- 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

- 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)
 

Member Function Documentation

◆ CanRead()

bool AZ::Data::AssetDataStream::CanRead ( ) const
inlineoverridevirtual

Implements AZ::IO::GenericStream.

◆ CanSeek()

bool AZ::Data::AssetDataStream::CanSeek ( ) const
inlineoverridevirtual

Implements AZ::IO::GenericStream.

◆ CanWrite()

bool AZ::Data::AssetDataStream::CanWrite ( ) const
inlineoverridevirtual

Implements AZ::IO::GenericStream.

◆ Close()

void AZ::Data::AssetDataStream::Close ( )
overridevirtual

Reimplemented from AZ::IO::GenericStream.

◆ GetCurPos()

AZ::IO::SizeType AZ::Data::AssetDataStream::GetCurPos ( ) const
inlineoverridevirtual

Implements AZ::IO::GenericStream.

◆ GetFilename()

const char * AZ::Data::AssetDataStream::GetFilename ( ) const
inlineoverridevirtual

Reimplemented from AZ::IO::GenericStream.

◆ GetLength()

AZ::IO::SizeType AZ::Data::AssetDataStream::GetLength ( ) const
inlineoverridevirtual

Implements AZ::IO::GenericStream.

◆ IsOpen()

bool AZ::Data::AssetDataStream::IsOpen ( ) const
inlineoverridevirtual

Implements AZ::IO::GenericStream.

◆ Read()

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

Implements AZ::IO::GenericStream.

◆ RequestCancel()

void AZ::Data::AssetDataStream::RequestCancel ( )

Request a cancellation of any current IO streamer requests. Note: This is asynchronous and not guaranteed to cancel if the request is already in-process.

◆ Seek()

void AZ::Data::AssetDataStream::Seek ( AZ::IO::OffsetType  bytes,
AZ::IO::GenericStream::SeekMode  mode 
)
overridevirtual

Implements AZ::IO::GenericStream.

◆ Write()

AZ::IO::SizeType AZ::Data::AssetDataStream::Write ( AZ::IO::SizeType  bytes,
const void *  iBuffer 
)
inlineoverridevirtual

Implements AZ::IO::GenericStream.


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