Distribution factory.
More...
#include <DistributionFactory.h>
|
| static std::unique_ptr< Distribution > | create (const eckit::mpi::Comm &comm, const eckit::Configuration &config) |
| | Create a Distribution object implementing a particular method of distributing observations across multiple process elements.. More...
|
| |
|
| virtual std::unique_ptr< Distribution > | make (const eckit::mpi::Comm &comm, const eckit::Configuration &config)=0 |
| |
Distribution factory.
Definition at line 24 of file DistributionFactory.h.
◆ ~DistributionFactory()
| virtual ioda::DistributionFactory::~DistributionFactory |
( |
| ) |
|
|
virtualdefault |
◆ DistributionFactory()
| ioda::DistributionFactory::DistributionFactory |
( |
const std::string & |
name | ) |
|
|
explicitprotected |
◆ create()
| std::unique_ptr< Distribution > ioda::DistributionFactory::create |
( |
const eckit::mpi::Comm & |
comm, |
|
|
const eckit::Configuration & |
config |
|
) |
| |
|
static |
Create a Distribution object implementing a particular method of distributing observations across multiple process elements..
This method creates an instance of the Distribution subclass indicated by the value of the distribution option in config. If this option is not present, an instance of the RoundRobin distribution is returned.
- Parameters
-
| [in] | comm | Local MPI communicator |
| [in] | config | Top-level ObsSpace configuration. |
Definition at line 24 of file DistributionFactory.cc.
◆ getMakers()
| static std::map< std::string, DistributionFactory * >& ioda::DistributionFactory::getMakers |
( |
| ) |
|
|
inlinestaticprivate |
◆ make()
| virtual std::unique_ptr<Distribution> ioda::DistributionFactory::make |
( |
const eckit::mpi::Comm & |
comm, |
|
|
const eckit::Configuration & |
config |
|
) |
| |
|
privatepure virtual |
The documentation for this class was generated from the following files: