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: