Go to the documentation of this file.
34 #ifndef IOSS_Iofx_DatabaseIO_h
35 #define IOSS_Iofx_DatabaseIO_h
69 class StructuredBlock;
71 class ElementTopology;
75 struct CommunicationMetaData;
97 bool open_input_file(
bool write_message, std::string *error_msg,
int *bad_count,
98 bool abort_if_error)
const override;
100 bool overwrite,
bool abort_if_error)
const override;
102 bool abort_if_error)
const;
105 size_t data_size)
const override;
107 size_t data_size)
const override;
109 size_t data_size)
const override;
111 size_t data_size)
const override;
113 size_t data_size)
const override;
116 size_t )
const override
122 size_t data_size)
const override;
124 size_t data_size)
const override;
126 size_t data_size)
const override;
128 size_t data_size)
const override;
130 size_t data_size)
const override;
132 size_t data_size)
const override;
134 size_t data_size)
const override;
137 size_t data_size)
const override;
139 size_t data_size)
const override;
141 size_t data_size)
const override;
143 size_t data_size)
const override;
145 size_t data_size)
const override;
147 size_t data_size)
const override;
149 size_t data_size)
const override;
151 size_t data_size)
const override;
153 size_t data_size)
const override;
155 size_t data_size)
const override;
157 size_t data_size)
const override;
159 size_t data_size)
const override;
163 size_t )
const override
194 std::vector<int> &is_valid_side)
const;
199 void *variables)
const;
203 void *variables)
const;
216 template <
typename T>
217 void get_sets(ex_entity_type type, int64_t count,
const std::string &base,
229 ex_inquiry inquiry_type)
const;
238 void *fconnect,
bool map_ids)
const;
239 template <
typename INT>
241 int64_t side_count,
INT *fconnect,
bool map_ids)
const;
243 double *dist_fact,
size_t data_size)
const;
246 size_t data_size)
const;
248 size_t data_size)
const;
int64_t get_side_distributions(const Ioss::SideBlock *fb, int64_t id, int64_t my_side_count, double *dist_fact, size_t data_size) const
Definition: Iofx_DatabaseIO.C:3643
A namespace for the file-per-process version of the parallel exodus database format.
Definition: Iofx_DatabaseIO.C:176
Holds metadata for bulk data associated with a GroupingEntity.
Definition: Ioss_Field.h:47
int64_t read_nodal_coordinates()
int64_t handle_element_ids(const Ioss::ElementBlock *eb, void *ids, size_t num_to_get) const
Definition: Iofx_DatabaseIO.C:4305
void get_blocks(ex_entity_type entity_type, int rank_offset, const std::string &basename)
Definition: Iofx_DatabaseIO.C:994
int64_t read_transient_field(ex_entity_type type, const Ioex::VariableNameMap &variables, const Ioss::Field &field, const Ioss::GroupingEntity *ge, void *data) const
Definition: Iofx_DatabaseIO.C:3377
std::map< std::string, int, std::less< std::string > > VariableNameMap
Definition: Ioex_DatabaseIO.h:80
int64_t get_side_connectivity(const Ioss::SideBlock *fb, int64_t id, int64_t my_side_count, void *fconnect, bool map_ids) const
Definition: Iofx_DatabaseIO.C:3631
int64_t handle_face_ids(const Ioss::FaceBlock *eb, void *ids, size_t num_to_get) const
Definition: Iofx_DatabaseIO.C:4313
void get_faceblocks()
Definition: Iofx_DatabaseIO.C:990
int64_t put_field_internal(const Ioss::StructuredBlock *, const Ioss::Field &, void *, size_t) const override
Definition: Iofx_DatabaseIO.h:161
void write_meta_data() override
Definition: Iofx_DatabaseIO.C:5014
Definition: Iofx_DatabaseIO.h:82
A collection of element edges with the same topology.
Definition: Ioss_EdgeBlock.h:53
DatabaseUsage
Specifies how an Ioss::DatabaseIO object will be used.
Definition: Ioss_DBUsage.h:40
The main namespace for the Ioss library.
Definition: Ioad_DatabaseIO.C:66
Definition: Ioex_DatabaseIO.h:96
void write_entity_transient_field(ex_entity_type type, const Ioss::Field &field, const Ioss::GroupingEntity *ge, int64_t count, void *variables) const
Definition: Iofx_DatabaseIO.C:4419
entity_type
Definition: Iovs_DatabaseIO.C:81
void compute_node_status() const
Definition: Iofx_DatabaseIO.C:1274
A grouping entity that contains other grouping entities.
Definition: Ioss_Region.h:98
A collection of nodes.
Definition: Ioss_NodeSet.h:53
A collection of element faces.
Definition: Ioss_FaceSet.h:54
A structured zone – i,j,k.
Definition: Ioss_StructuredBlock.h:103
DatabaseIO & operator=(const DatabaseIO &from)=delete
void get_step_times__() override
Definition: Iofx_DatabaseIO.C:620
void read_meta_data__() override
Definition: Iofx_DatabaseIO.C:445
int INT
Definition: Ioss_StructuredBlock.h:53
A collection of Ioss::Property objects.
Definition: Ioss_PropertyManager.h:49
A collection of element edges.
Definition: Ioss_EdgeSet.h:54
A collection of elements.
Definition: Ioss_ElementSet.h:54
Definition: Ioss_CommSet.h:51
const Ioss::Map & get_map(ex_entity_type type) const
Definition: Iofx_DatabaseIO.C:889
int64_t handle_edge_ids(const Ioss::EdgeBlock *eb, void *ids, size_t num_to_get) const
Definition: Iofx_DatabaseIO.C:4320
void get_sets(ex_entity_type type, int64_t count, const std::string &base, const T *)
Definition: Iofx_DatabaseIO.C:1755
void get_sidesets()
Definition: Iofx_DatabaseIO.C:1323
A collection of element faces with the same topology.
Definition: Ioss_FaceBlock.h:53
void get_facesets()
Definition: Iofx_DatabaseIO.C:1897
int64_t get_field_internal(const Ioss::Region *reg, const Ioss::Field &field, void *data, size_t data_size) const override
Definition: Iofx_DatabaseIO.C:1983
A namespace for the exodus database format.
Definition: Ioex_IOFactory.C:62
~DatabaseIO() override
Definition: Iofx_DatabaseIO.h:89
void get_elemblocks()
Definition: Iofx_DatabaseIO.C:988
A collection of element sides having the same topology.
Definition: Ioss_SideBlock.h:59
void get_edgeblocks()
Definition: Iofx_DatabaseIO.C:992
void gather_communication_metadata(Ioex::CommunicationMetaData *meta)
Definition: Iofx_DatabaseIO.C:5205
void read_elements(const Ioss::ElementBlock &block)
bool open_input_file(bool write_message, std::string *error_msg, int *bad_count, bool abort_if_error) const override
Definition: Iofx_DatabaseIO.C:290
int64_t put_Xset_field_internal(ex_entity_type type, const Ioss::EntitySet *ns, const Ioss::Field &field, void *data, size_t data_size) const
Definition: Iofx_DatabaseIO.C:4539
int get_file_pointer() const override
Definition: Iofx_DatabaseIO.C:422
int64_t read_ss_transient_field(const Ioss::Field &field, int64_t id, void *variables, std::vector< int > &is_valid_side) const
Definition: Iofx_DatabaseIO.C:3458
Base class for all 'set'-type grouping entities, which means that members of the set are not necessar...
Definition: Ioss_EntitySet.h:61
A collection of elements having the same topology.
Definition: Ioss_ElementBlock.h:48
int64_t get_Xset_field_internal(ex_entity_type type, const Ioss::EntitySet *ns, const Ioss::Field &field, void *data, size_t data_size) const
Definition: Iofx_DatabaseIO.C:2495
bool isSerialParallel
true if application code is controlling the processor id.
Definition: Iofx_DatabaseIO.h:250
void get_edgesets()
Definition: Iofx_DatabaseIO.C:1892
int64_t put_field_internal(const Ioss::Region *reg, const Ioss::Field &field, void *data, size_t data_size) const override
Definition: Iofx_DatabaseIO.C:3823
bool check_valid_file_ptr(bool write_message, std::string *error_msg, int *bad_count, bool abort_if_error) const
Definition: Iofx_DatabaseIO.C:210
Definition: Ioss_Map.h:52
int64_t get_side_field(const Ioss::SideBlock *ef_blk, const Ioss::Field &field, void *data, size_t data_size) const
std::vector< char > data
Definition: cth_pressure_map.C:74
void get_commsets()
Definition: Iofx_DatabaseIO.C:1907
void get_nodesets()
Definition: Iofx_DatabaseIO.C:1887
void write_nodal_transient_field(ex_entity_type type, const Ioss::Field &field, const Ioss::NodeBlock *ge, int64_t count, void *variables) const
Definition: Iofx_DatabaseIO.C:4327
A collection of all nodes in the region.
Definition: Ioss_NodeBlock.h:53
int MPI_Comm
Definition: Ioss_CodeTypes.h:96
void read_communication_metadata()
Definition: Iofx_DatabaseIO.C:744
bool handle_output_file(bool write_message, std::string *error_msg, int *bad_count, bool overwrite, bool abort_if_error) const override
Definition: Iofx_DatabaseIO.C:332
int64_t read_attribute_field(ex_entity_type type, const Ioss::Field &field, const Ioss::GroupingEntity *ge, void *data) const
Definition: Iofx_DatabaseIO.C:3312
int64_t put_side_field(const Ioss::SideBlock *fb, const Ioss::Field &field, void *data, size_t data_size) const
A collection of element sides.
Definition: Ioss_SideSet.h:53
Base class for all 'grouping' entities. The following derived classes are typical:
Definition: Ioss_GroupingEntity.h:93
int64_t write_attribute_field(ex_entity_type type, const Ioss::Field &field, const Ioss::GroupingEntity *ge, void *data) const
Definition: Iofx_DatabaseIO.C:3218
int64_t get_side_connectivity_internal(const Ioss::SideBlock *fb, int64_t id, int64_t side_count, INT *fconnect, bool map_ids) const
Definition: Iofx_DatabaseIO.C:3532
void read_region()
Definition: Iofx_DatabaseIO.C:506
void get_elemsets()
Definition: Iofx_DatabaseIO.C:1902
int64_t get_field_internal(const Ioss::StructuredBlock *, const Ioss::Field &, void *, size_t) const override
Definition: Iofx_DatabaseIO.h:114
int64_t handle_node_ids(void *ids, int64_t num_to_get) const
Definition: Iofx_DatabaseIO.C:4242