Lumiera  0.pre.03
»edit your freedom«
STypeManager Class Reference

Description

Definition at line 38 of file stypemanager.hpp.

Public Types

typedef StreamType::ImplFacade ImplFacade
 

Public Member Functions

ImplFacade const & getImpl (Symbol libID, StreamType::Prototype const &protoType)
 build or retrieve an implementation (facade) utilizing a specific MediaImplLib and implementing the given Prototype. More...
 
template<class TY >
ImplFacade const & getImpl (Symbol libID, TY &rawType)
 build or retrieve an implementation (facade) wrapping up the actual implementation as designated by the rawType tag, which needs to be an implementation type of the mentioned MediaImplLib
 
template<class TY >
StreamType::ImplFacade const & getImpl (Symbol libID, TY &rawType)
 
StreamType const & getType (Symbol sTypeID)
 (re)-access a media stream type using just a symbolic ID. More...
 
StreamType const & getType (StreamType::ID stID)
 
StreamType const & getType (StreamType::Prototype const &protoType)
 build or retrieve a complete StreamType implementing the given Prototype
 
StreamType const & getType (StreamType::ImplFacade const &implType)
 build or retrieve a complete StreamType incorporating the given implementation type
 

Static Public Attributes

static lib::Depend< STypeManagerinstance
 access the system-wide stream type manager instance. More...
 

Classes

class  Registry
 

Friends

class lib::DependencyFactory< STypeManager >
 

Protected Member Functions

void reset ()
 Lifecycle: reset all type registration information to the generic pristine default state. More...
 

Private Member Functions

ImplFacade const & fetchImpl (StreamType::ImplFacade::TypeTag)
 

Private Attributes

std::unique_ptr< Registryreg_
 

Member Function Documentation

◆ getType()

StreamType const & getType ( Symbol  sTypeID)

(re)-access a media stream type using just a symbolic ID.

Effectively this queries a default

Definition at line 72 of file stypemanager.cpp.

◆ getImpl()

StreamType::ImplFacade const & getImpl ( Symbol  libID,
StreamType::Prototype const &  protoType 
)

build or retrieve an implementation (facade) utilizing a specific MediaImplLib and implementing the given Prototype.

Todo:
find out if this one is really necessary, because it is especially tricky

Definition at line 101 of file stypemanager.cpp.

◆ reset()

void reset ( )
protected

Lifecycle: reset all type registration information to the generic pristine default state.

This includes hard wired defaults and defaults provided by type plugins, but excludes everything added by the session

Definition at line 49 of file stypemanager.cpp.

References steam::control::ON_STREAMTYPES_RESET(), and LifecycleHook::trigger().

+ Here is the call graph for this function:

Member Data Documentation

◆ instance

lib::Depend< STypeManager > instance
static

access the system-wide stream type manager instance.

Implemented as singleton.

Definition at line 45 of file stypemanager.hpp.

Referenced by StreamTypeLifecycle_test::register_additional_TypeInfo(), and steam::test_format::test_createImplType().

+ Collaboration diagram for STypeManager:

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