PISM, A Parallel Ice Sheet Model  stable v2.1.1 committed by Constantine Khrulev on 2024-12-04 13:36:58 -0900
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
pism::PCFactory< Model > Class Template Reference

#include <PCFactory.hh>

+ Inheritance diagram for pism::PCFactory< Model >:

Classes

class  ModelCreator
 
class  ModifierCreator
 
class  SpecificModelCreator
 
class  SpecificModifierCreator
 

Public Member Functions

 PCFactory (std::shared_ptr< const Grid > g, const std::string &parameter)
 
 ~PCFactory ()
 
virtual std::shared_ptr< Model > create ()
 Creates a boundary model. Processes command-line options. More...
 
void validate (const std::string &list) const
 
virtual std::shared_ptr< Model > create (const std::string &type)
 Creates a boundary model. More...
 

Protected Member Functions

template<class M >
void add_model (const std::string &name)
 Adds a boundary model to the dictionary. More...
 
template<class M >
void add_modifier (const std::string &name)
 
template<typename T >
std::string key_list (std::map< std::string, T > list) const
 
std::shared_ptr< Model > model (const std::string &type)
 
template<class T >
std::shared_ptr< Model > modifier (const std::string &type, std::shared_ptr< T > input)
 

Protected Attributes

std::string m_parameter
 
std::map< std::string, std::shared_ptr< ModelCreator > > m_models
 
std::map< std::string, std::shared_ptr< ModifierCreator > > m_modifiers
 
std::shared_ptr< const Gridm_grid
 

Detailed Description

template<class Model>
class pism::PCFactory< Model >

Definition at line 34 of file PCFactory.hh.


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