atlas::field::MultiFieldCreator class

Base class for creating new multifields based on Configuration.

Example to create field[100][3] of default type double:

FieldImpl* field = Field::create(
     Config
       ("creator","ArraySpec")             // ArraySpec MultiFieldCreator
       ("shape",array::make_shape(100,3))  // Rank 2 field with indexing [100][3]
     );

Derived classes

class MultiFieldCreatorArray
MultiField creator using datatype, shape, variable names as arguments.
class MultiFieldCreatorIFS
MultiField creator using IFS parametrisation.

Constructors, destructors, conversion operators

MultiFieldCreator()
MultiFieldCreator(const eckit::Configuration& config)
~MultiFieldCreator() virtual

Public functions

auto create(const eckit::Configuration& config = util::Config()) const -> MultiFieldImpl* pure virtual
auto create(const array::DataType datatype, const std::vector<int>& shape, const std::vector<std::string>& var_names) const -> MultiFieldImpl* pure virtual