PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
pism::surface::Factory Class Reference

#include <Factory.hh>

+ Inheritance diagram for pism::surface::Factory:

Classes

class  SurfaceModelCreator
 

Public Types

typedef std::shared_ptr< atmosphere::AtmosphereModelAtmospherePtr
 

Public Member Functions

 Factory (std::shared_ptr< const Grid > g, AtmospherePtr input)
 
 ~Factory ()=default
 
- Public Member Functions inherited from pism::PCFactory< SurfaceModel >
 PCFactory (std::shared_ptr< const Grid > g, const std::string &parameter)
 
 ~PCFactory ()
 
virtual std::shared_ptr< SurfaceModel > create ()
 Creates a boundary model. Processes command-line options. More...
 
virtual std::shared_ptr< SurfaceModel > create (const std::string &type)
 Creates a boundary model. More...
 
void validate (const std::string &list) const
 

Private Member Functions

template<class M >
void add_surface_model (const std::string &name)
 

Private Attributes

AtmospherePtr m_input
 

Additional Inherited Members

- Protected Member Functions inherited from pism::PCFactory< SurfaceModel >
void add_model (const std::string &name)
 Adds a boundary model to the dictionary. More...
 
void add_modifier (const std::string &name)
 
std::string key_list (std::map< std::string, T > list) const
 
std::shared_ptr< SurfaceModel > model (const std::string &type)
 
std::shared_ptr< SurfaceModel > modifier (const std::string &type, std::shared_ptr< T > input)
 
- Protected Attributes inherited from pism::PCFactory< SurfaceModel >
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

Definition at line 28 of file Factory.hh.


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