StormByte C++ Library: Multimedia module 0.0.9999
StormByte-Multimedia is a StormByte library module for parsing configuration files
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | List of all members
StormByte::Multimedia::Registry Class Reference

Process-wide catalog of codecs and containers. More...

#include <StormByte/multimedia/registry.hxx>

Public Member Functions

 Registry (const Registry &)=delete
 Copy is disabled.
 
 Registry (Registry &&)=delete
 Move is disabled.
 
 ~Registry () noexcept=default
 Destructor.
 
Registryoperator= (const Registry &)=delete
 Copy assignment is disabled.
 
Registryoperator= (Registry &&)=delete
 Move assignment is disabled.
 
CodecRefs CodecList (Type type) const noexcept
 Codecs of one Type.
 
ContainerRefs ContainerList () const noexcept
 All loaded containers.
 
ExpectedCodec FindCodec (std::string_view name) const noexcept
 Looks up by StormByte name or FFmpeg codec id.
 
ExpectedContainer FindContainer (std::string_view name) const noexcept
 Looks up by StormByte name or FFmpeg format id.
 

Static Public Member Functions

static RegistryInstance () noexcept
 Process-wide instance.
 

Detailed Description

Process-wide catalog of codecs and containers.

First Instance() loads the private tables and probes FFmpeg.

Constructor & Destructor Documentation

◆ Registry() [1/2]

StormByte::Multimedia::Registry::Registry ( const Registry )
delete

Copy is disabled.

◆ Registry() [2/2]

StormByte::Multimedia::Registry::Registry ( Registry &&  )
delete

Move is disabled.

◆ ~Registry()

StormByte::Multimedia::Registry::~Registry ( )
defaultnoexcept

Destructor.

Member Function Documentation

◆ CodecList()

CodecRefs StormByte::Multimedia::Registry::CodecList ( Type  type) const
noexcept

Codecs of one Type.

Parameters
typeKind to list.
Returns
References into the registry storage.

◆ ContainerList()

ContainerRefs StormByte::Multimedia::Registry::ContainerList ( ) const
noexcept

All loaded containers.

Returns
References into the registry storage.

◆ FindCodec()

ExpectedCodec StormByte::Multimedia::Registry::FindCodec ( std::string_view  name) const
noexcept

Looks up by StormByte name or FFmpeg codec id.

Parameters
nameKey (H.265 or hevc).
Returns
Codec or CodecNotFoundException.

◆ FindContainer()

ExpectedContainer StormByte::Multimedia::Registry::FindContainer ( std::string_view  name) const
noexcept

Looks up by StormByte name or FFmpeg format id.

Parameters
nameKey (Matroska or matroska).
Returns
Container or ContainerNotFoundException.

◆ Instance()

static Registry & StormByte::Multimedia::Registry::Instance ( )
staticnoexcept

Process-wide instance.

Returns
The singleton.

◆ operator=() [1/2]

Registry & StormByte::Multimedia::Registry::operator= ( const Registry )
delete

Copy assignment is disabled.

Returns
*this.

◆ operator=() [2/2]

Registry & StormByte::Multimedia::Registry::operator= ( Registry &&  )
delete

Move assignment is disabled.

Returns
*this.

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