9#include "ioss_export.h"
28 using IOFactoryMap = std::map<std::string, IOFactory *, std::less<>>;
39 create(
const std::string &type,
const std::string &filename,
DatabaseUsage db_usage,
43 static int describe(
NameList *names);
49 explicit IOFactory(
const std::string &type);
57 static void alias(
const std::string &base,
const std::string &syn);
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:55
int Ioss_MPI_Comm
Definition Ioss_CodeTypes.h:64
An input or output Database.
Definition Ioss_DatabaseIO.h:63
The main public user interface for creating Ioss::DatabaseIO objects.
Definition Ioss_IOFactory.h:35
virtual ~IOFactory()=default
virtual IOSS_NODISCARD std::string show_config() const
Definition Ioss_IOFactory.h:55
virtual IOSS_NODISCARD DatabaseIO * make_IO(const std::string &filename, DatabaseUsage db_usage, Ioss_MPI_Comm communicator, const Ioss::PropertyManager &properties) const =0
static IOSS_NODISCARD constexpr Ioss_MPI_Comm comm_world()
Definition Ioss_ParallelUtils.h:48
A collection of Ioss::Property objects.
Definition Ioss_PropertyManager.h:36
The main namespace for the Ioss library.
Definition Ioad_DatabaseIO.C:40
Ioss::NameList NameList
Definition Ioss_ChangeSetFactory.h:25
DatabaseUsage
Specifies how an Ioss::DatabaseIO object will be used.
Definition Ioss_DBUsage.h:13
std::map< std::string, IOFactory *, std::less<> > IOFactoryMap
Definition Ioss_IOFactory.h:28