33 #ifndef IOSS_Ioss_IOFactory_h 34 #define IOSS_Ioss_IOFactory_h 51 using NameList = std::vector<std::string>;
52 using IOFactoryMap = std::map<std::string, IOFactory *, std::less<std::string>>;
62 static DatabaseIO *
create(
const std::string &type,
const std::string &filename,
71 explicit IOFactory(
const std::string &type);
79 static void alias(
const std::string &base,
const std::string &syn);
std::vector< std::string > NameList
Definition: Ioss_CodeTypes.h:45
#define MPI_COMM_WORLD
Definition: Ut_ioad.C:65
static int describe(NameList *names)
Get the names of database formats known to IOSS.
Definition: Ioss_IOFactory.C:131
The main namespace for the Ioss library.
Definition: Ioad_DatabaseIO.C:66
An input or output Database.
Definition: Ioss_DatabaseIO.h:82
virtual void show_config() const
Definition: Ioss_IOFactory.h:77
IOFactory(const std::string &type)
Definition: Ioss_IOFactory.C:162
The main public user interface for creating Ioss::DatabaseIO objects.
Definition: Ioss_IOFactory.h:58
static void clean()
Empty method.
Definition: Ioss_IOFactory.C:181
virtual DatabaseIO * make_IO(const std::string &filename, DatabaseUsage db_usage, MPI_Comm communicator, const Ioss::PropertyManager &properties) const =0
DatabaseUsage
Specifies how an Ioss::DatabaseIO object will be used.
Definition: Ioss_DBUsage.h:40
static DatabaseIO * create(const std::string &type, const std::string &filename, DatabaseUsage db_usage, MPI_Comm communicator=MPI_COMM_WORLD, const Ioss::PropertyManager &properties=Ioss::PropertyManager())
Create an IO database.
Definition: Ioss_IOFactory.C:89
std::map< std::string, IOFactory *, std::less< std::string > > IOFactoryMap
Definition: Ioss_IOFactory.h:52
static IOFactoryMap * registry()
Definition: Ioss_IOFactory.C:173
static void show_configuration()
Definition: Ioss_IOFactory.C:137
static void alias(const std::string &base, const std::string &syn)
Definition: Ioss_IOFactory.C:167
int MPI_Comm
Definition: Ioss_CodeTypes.h:88
virtual ~IOFactory()=default
A collection of Ioss::Property objects.
Definition: Ioss_PropertyManager.h:49