Open 3D Engine Compression Gem API Reference  23.05.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
Compression::DecompressionRegistrarInterface Class Referenceabstract

Inherited by Compression::DecompressionRegistrarImpl.

Public Types

using VisitDecompressionInterfaceCallback = AZStd::function< bool(IDecompressionInterface &)>
 

Public Member Functions

 AZ_RTTI (DecompressionRegistrarInterface,"{DB1ACA55-B36F-469B-9704-EC486D9FC810}")
 
virtual void VisitDecompressionInterfaces (const VisitDecompressionInterfaceCallback &) const =0
 Invokes the supplied visitor for each register decompression interface that is non-nullptr.
 
virtual AZ::Outcome< void,
AZStd::unique_ptr
< IDecompressionInterface > > 
RegisterDecompressionInterface (CompressionAlgorithmId compressionAlgorithmId, AZStd::unique_ptr< IDecompressionInterface > decompressionInterface)=0
 
virtual bool RegisterDecompressionInterface (CompressionAlgorithmId compressionAlgorithmId, IDecompressionInterface &decompressionInterface)=0
 
virtual bool UnregisterDecompressionInterface (CompressionAlgorithmId compressionAlgorithmId)=0
 
virtual IDecompressionInterfaceFindDecompressionInterface (CompressionAlgorithmId compressionAlgorithmId) const =0
 
virtual bool IsRegistered (CompressionAlgorithmId compressionAlgorithmId) const =0
 

Member Typedef Documentation

Callback function that is invoked for every registered decompression interface return true to indicate that visitation of decompression interfaces should continue returning false halts iteration

Member Function Documentation

virtual IDecompressionInterface* Compression::DecompressionRegistrarInterface::FindDecompressionInterface ( CompressionAlgorithmId  compressionAlgorithmId) const
pure virtual

Queries the decompression interface with the decompression algorithmd Id

Parameters
compressionAlgorithmIdunique Id of decompression interface to query
Returns
pointer to the decompression tnterface or nullptr if not found

Implemented in Compression::DecompressionRegistrarImpl.

virtual bool Compression::DecompressionRegistrarInterface::IsRegistered ( CompressionAlgorithmId  compressionAlgorithmId) const
pure virtual

Return true if there is an decompression interface registered with the specified id

Parameters
compressionAlgorithmIdCompressionAlgorithmId to determine if an decompression interface is registered
Returns
bool indicating if there is an decompression interface with the id registered

Implemented in Compression::DecompressionRegistrarImpl.

virtual AZ::Outcome<void, AZStd::unique_ptr<IDecompressionInterface> > Compression::DecompressionRegistrarInterface::RegisterDecompressionInterface ( CompressionAlgorithmId  compressionAlgorithmId,
AZStd::unique_ptr< IDecompressionInterface decompressionInterface 
)
pure virtual

Registers decompression interface and takes ownership of it if registration is successful

Parameters
compressionAlgorithmIdUnique id to associate with decompression interface
decompressionInterfacedecompression interface to register
Returns
Success outcome if the decompression interface was successfully registered Otherwise, a failure outcome with the decompression interface is forward back to the caller

Implemented in Compression::DecompressionRegistrarImpl.

virtual bool Compression::DecompressionRegistrarInterface::RegisterDecompressionInterface ( CompressionAlgorithmId  compressionAlgorithmId,
IDecompressionInterface decompressionInterface 
)
pure virtual

Registers decompression interface, but does not take ownership of it If a decompression interface with a CompressionAlgorithmId is registered that matches the input decompression interface, then registration does not occur

Registers decompression interface, but does not take ownership of it

Parameters
compressionAlgorithmIdUnique id to associate with decompression interface
decompressionInterfacedecompression interface to register
Returns
true if the ICompressionInterface was successfully registered

Implemented in Compression::DecompressionRegistrarImpl.

virtual bool Compression::DecompressionRegistrarInterface::UnregisterDecompressionInterface ( CompressionAlgorithmId  compressionAlgorithmId)
pure virtual

Unregisters the decompression interface with the specified id

Parameters
decompressionAlgorithmIdunique Id that identifies the decompression interface
Returns
true if the unregistration is successful

Implemented in Compression::DecompressionRegistrarImpl.


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