13 #include "oops/util/Logger.h"
23 throw eckit::BadParameter(name +
" already registered in ufo::ProfileCheckFactory.", Here());
27 std::unique_ptr<ProfileCheckBase>
31 oops::Log::trace() <<
"ProfileCheckBase::create starting" << std::endl;
32 typename std::map<std::string, ProfileCheckFactory*>::iterator jloc =
35 std::string makerNameList;
36 for (
const auto& makerDetails :
getMakers()) makerNameList +=
"\n " + makerDetails.first;
37 throw eckit::BadParameter(name +
" does not exist in ufo::ProfileCheckFactory. "
38 "Possible values:" + makerNameList, Here());
40 std::unique_ptr<ProfileCheckBase> ptr = jloc->second->make(options);
41 oops::Log::trace() <<
"ProfileCheckBase::create done" << std::endl;
Options controlling the operation of the ConventionalProfileProcessing filter.
ProfileCheckBase(const ConventionalProfileProcessingParameters &options)
ProfileCheckFactory(const std::string &)
static std::unique_ptr< ProfileCheckBase > create(const std::string &, const ConventionalProfileProcessingParameters &)
static std::map< std::string, ProfileCheckFactory * > & getMakers()