Open 3D Engine AzNetworking 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.
AzNetworking::ICompressorFactory Class Referenceabstract

Abstract factory to instantiate compressors. More...

#include <ICompressor.h>

Public Member Functions

virtual AZStd::unique_ptr< ICompressorCreate ()=0
 
virtual const AZStd::string_view GetFactoryName () const =0
 

Detailed Description

Abstract factory to instantiate compressors.

ICompressorFactory is an abstract compression interface meant for user provided GEMs to implement. ICompressorFactory implementations can be registered to classes implementing INetworking. Registered factories can then be used to create ICompressor implementations on demand. The Multiplayer Compression Gem is an example of an ICompressorFactory for an LZ4 Compressor. In it, MultiplayerCompressionSystemComponent registers its ICompressorFactory with NetworkingSystemComponent, which is an implementation of INetworking. Registered factories are keyed by an AZ::Crc32 of their string name accessed through the factory's GetFactoryName method.

Member Function Documentation

◆ Create()

virtual AZStd::unique_ptr< ICompressor > AzNetworking::ICompressorFactory::Create ( )
pure virtual

Instantiate a new compressor

Returns
A unique_ptr to a new Compressor

◆ GetFactoryName()

virtual const AZStd::string_view AzNetworking::ICompressorFactory::GetFactoryName ( ) const
pure virtual

Gets the string name of this compressor factory

Returns
the string name of this compressor factory

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