netxsimdg
Loading...
Searching...
No Matches
Module::Module< I > Class Template Reference
Inheritance diagram for Module::Module< I >:
Inheritance graph
Collaboration diagram for Module::Module< I >:
Collaboration graph

Public Types

typedef std::function< std::unique_ptr< I >()> fn
 
typedef std::map< std::string, fn > map
 

Public Member Functions

std::string moduleName ()
 
std::string moduleName ()
 
std::string moduleName ()
 
std::string moduleName ()
 
std::string moduleName ()
 
std::string moduleName ()
 

Static Public Member Functions

static void setExternalImplementation (fn generator)
 
static void setImplementation (const std::string &implName)
 
static std::unique_ptr< I > getInstance ()
 
static I & getImplementation ()
 
static std::list< std::string > listImplementations ()
 
static std::string implementation ()
 
static std::string moduleName ()
 

Detailed Description

template<typename I>
class Module::Module< I >

Definition at line 49 of file Module.hpp.

Member Typedef Documentation

◆ fn

template<typename I >
std::function<std::unique_ptr<I>()> Module::Module< I >::fn

Definition at line 51 of file Module.hpp.

◆ map

template<typename I >
std::map<std::string, fn> Module::Module< I >::map

Definition at line 52 of file Module.hpp.

Member Function Documentation

◆ getImplementation()

template<typename I >
static I & Module::Module< I >::getImplementation ( )
inlinestatic

Definition at line 73 of file Module.hpp.

◆ getInstance()

template<typename I >
static std::unique_ptr< I > Module::Module< I >::getInstance ( )
inlinestatic

Definition at line 71 of file Module.hpp.

◆ implementation()

template<typename I >
static std::string Module::Module< I >::implementation ( )
inlinestatic

Definition at line 84 of file Module.hpp.

◆ listImplementations()

template<typename I >
static std::list< std::string > Module::Module< I >::listImplementations ( )
inlinestatic

Definition at line 75 of file Module.hpp.

◆ moduleName() [1/6]

std::string Module::Module< Nextsim::IDiagnosticOutput >::moduleName ( )

Definition at line 32 of file DiagnosticOutputModule.cpp.

◆ moduleName() [2/6]

std::string Module::Module< Nextsim::IDynamics >::moduleName ( )

Definition at line 35 of file DynamicsModule.cpp.

◆ moduleName() [3/6]

std::string Module::Module< Nextsim::IFreezingPoint >::moduleName ( )

Definition at line 32 of file IFreezingPointModule.cpp.

◆ moduleName() [4/6]

std::string Module::Module< Nextsim::IStructure >::moduleName ( )

Definition at line 32 of file IStructureModule.cpp.

◆ moduleName() [5/6]

std::string Module::Module< ITest >::moduleName ( )

Definition at line 37 of file ConfiguredModule_test.cpp.

◆ moduleName() [6/6]

std::string Module::Module< Nextsim::IDynamics >::moduleName ( )

Definition at line 28 of file DynamicsModuleForPDtest.cpp.

◆ setExternalImplementation()

template<typename I >
static void Module::Module< I >::setExternalImplementation ( fn generator)
inlinestatic

Definition at line 54 of file Module.hpp.

◆ setImplementation()

template<typename I >
static void Module::Module< I >::setImplementation ( const std::string & implName)
inlinestatic

Definition at line 60 of file Module.hpp.


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