IOSS 2.0
Loading...
Searching...
No Matches
Ioexnl_IOFactory.h
Go to the documentation of this file.
1// Copyright(C) 1999-2020, 2022, 2023, 2024 National Technology & Engineering Solutions
2// of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
3// NTESS, the U.S. Government retains certain rights in this software.
4//
5// See packages/seacas/LICENSE for details
6
7#pragma once
8
9#include "Ioss_CodeTypes.h"
10#include "Ioss_DBUsage.h" // for DatabaseUsage
11#include "Ioss_IOFactory.h" // for IOFactory
12#include <string> // for string
13
14#include "Ioss_DatabaseIO.h" // for DatabaseIO
15#include "ioexnl_export.h"
16
17namespace Ioss {
18 class PropertyManager;
19} // namespace Ioss
20
21namespace Ioexnl {
22
23 class IOEXNL_EXPORT IOFactory : public Ioss::IOFactory
24 {
25 public:
26 static const IOFactory *factory();
27
28 private:
29 IOFactory();
31 make_IO(const std::string &filename, Ioss::DatabaseUsage db_usage, Ioss_MPI_Comm communicator,
32 const Ioss::PropertyManager &properties) const override;
33 IOSS_NODISCARD std::string show_config() const override;
34 };
35} // namespace Ioexnl
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:55
int Ioss_MPI_Comm
Definition Ioss_CodeTypes.h:64
Definition Ioexnl_IOFactory.h:24
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
A collection of Ioss::Property objects.
Definition Ioss_PropertyManager.h:36
A namespace for the exodus database format.
Definition Ioexnl_BaseDatabaseIO.C:93
The main namespace for the Ioss library.
Definition Ioad_DatabaseIO.C:40
DatabaseUsage
Specifies how an Ioss::DatabaseIO object will be used.
Definition Ioss_DBUsage.h:13