35 #ifndef IOSS_Ioex_Internals_h 36 #define IOSS_Ioex_Internals_h 115 :
name(
""),
id(0), entityCount(0), localOwnedCount(0), attributeCount(0), procOffset(0)
120 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
121 localOwnedCount(other.localOwnedCount), attributeCount(other.attributeCount),
122 procOffset(other.procOffset)
132 bool operator==(
const NodeBlock &)
const;
148 :
name(
""),
id(0), entityCount(0), nodesPerEntity(0), attributeCount(0), procOffset(0)
150 std::strcpy(elType,
"");
154 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
155 nodesPerEntity(other.nodesPerEntity), attributeCount(other.attributeCount),
156 procOffset(other.procOffset)
158 std::strcpy(elType, other.
elType);
167 bool operator==(
const EdgeBlock & )
const;
170 char elType[MAX_STR_LENGTH + 1]{};
184 :
name(
""),
id(0), entityCount(0), nodesPerEntity(0), edgesPerEntity(0), attributeCount(0),
187 std::strcpy(elType,
"");
191 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
192 nodesPerEntity(other.nodesPerEntity), edgesPerEntity(other.edgesPerEntity),
193 attributeCount(other.attributeCount), procOffset(other.procOffset)
195 std::strcpy(elType, other.
elType);
204 bool operator==(
const FaceBlock & )
const;
207 char elType[MAX_STR_LENGTH + 1]{};
222 :
name(
""),
id(0), entityCount(0), nodesPerEntity(0), edgesPerEntity(0), facesPerEntity(0),
223 attributeCount(0), offset_(-1), procOffset(0)
225 std::strcpy(elType,
"");
229 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
230 nodesPerEntity(other.nodesPerEntity), edgesPerEntity(other.edgesPerEntity),
231 facesPerEntity(other.facesPerEntity), attributeCount(other.attributeCount),
232 offset_(other.offset_), procOffset(other.procOffset)
234 std::strcpy(elType, other.
elType);
243 bool operator==(
const ElemBlock & )
const;
246 char elType[MAX_STR_LENGTH + 1]{};
260 NodeSet() :
name(
""),
id(0), entityCount(0), localOwnedCount(0), dfCount(0), procOffset(0) {}
262 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
263 localOwnedCount(other.localOwnedCount), attributeCount(other.attributeCount),
264 dfCount(other.dfCount), procOffset(other.procOffset)
268 bool operator==(
const NodeSet & )
const;
275 int64_t attributeCount{};
284 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
285 attributeCount(other.attributeCount), dfCount(other.dfCount), procOffset(other.procOffset)
289 bool operator==(
const EdgeSet & )
const;
295 int64_t attributeCount{};
304 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
305 attributeCount(other.attributeCount), dfCount(other.dfCount), procOffset(other.procOffset)
309 bool operator==(
const FaceSet & )
const;
315 int64_t attributeCount{};
324 :
name(other.
name),
id(other.
id), entityCount(other.entityCount),
325 attributeCount(other.attributeCount), dfCount(other.dfCount), procOffset(other.procOffset)
329 bool operator==(
const ElemSet & )
const;
335 int64_t attributeCount{};
342 SideSet() :
name(
""),
id(0), entityCount(0), dfCount(0), procOffset(0), dfProcOffset(0) {}
345 bool operator==(
const SideSet & )
const;
360 :
id(the_id), entityCount(count), type(the_type)
373 : processorId(0), processorCount(0), globalNodes(0), globalElements(0),
374 globalElementBlocks(0), globalNodeSets(0), globalSideSets(0), nodesInternal(0),
375 nodesBorder(0), nodesExternal(0), elementsInternal(0), elementsBorder(0),
415 Mesh() : title(), dimensionality(0), file_per_processor(true) {}
417 Mesh(
int dim,
char *the_title,
bool file_pp) : dimensionality(dim), file_per_processor(file_pp)
419 std::strncpy(title, the_title, MAX_LINE_LENGTH + 1);
420 title[MAX_LINE_LENGTH] =
'\0';
423 char title[MAX_LINE_LENGTH + 1]{};
446 int write_meta_data(
Mesh &mesh);
460 void get_global_counts(
Mesh &mesh);
463 int put_metadata(
const std::vector<NodeBlock> &nodeblocks);
464 int put_metadata(
const std::vector<EdgeBlock> &blocks);
465 int put_metadata(
const std::vector<FaceBlock> &blocks);
466 int put_metadata(
const std::vector<ElemBlock> &blocks);
468 int put_metadata(
const std::vector<NodeSet> &nodesets);
469 int put_metadata(
const std::vector<EdgeSet> &edgesets);
470 int put_metadata(
const std::vector<FaceSet> &facesets);
471 int put_metadata(
const std::vector<ElemSet> &elemsets);
473 int put_metadata(
const std::vector<SideSet> &sidesets);
476 int put_non_define_data(
const std::vector<NodeBlock> &nodeblocks);
477 int put_non_define_data(
const std::vector<EdgeBlock> &blocks);
478 int put_non_define_data(
const std::vector<FaceBlock> &blocks);
479 int put_non_define_data(
const std::vector<ElemBlock> &blocks);
481 int put_non_define_data(
const std::vector<NodeSet> &nodesets);
482 int put_non_define_data(
const std::vector<EdgeSet> &edgesets);
483 int put_non_define_data(
const std::vector<FaceSet> &facesets);
484 int put_non_define_data(
const std::vector<ElemSet> &elemsets);
486 int put_non_define_data(
const std::vector<SideSet> &sidesets);
492 int elementMapVarID[2];
494 int elemCommIndexVar{0};
495 int maximumNameLength{32};
int64_t attributeCount
Definition: Ioex_Internals.h:139
std::string name
Definition: Ioex_Internals.h:135
SideSet()
Definition: Ioex_Internals.h:342
FaceBlock(const FaceBlock &other)
Definition: Ioex_Internals.h:190
int64_t procOffset
Definition: Ioex_Internals.h:297
int64_t edgesPerEntity
Definition: Ioex_Internals.h:212
bool operator!=(const NodeSet &other) const
Definition: Ioex_Internals.h:269
Definition: Ioex_Internals.h:400
int64_t nodesPerEntity
Definition: Ioex_Internals.h:250
int64_t offset_
Definition: Ioex_Internals.h:254
int dimensionality
Definition: Ioex_Internals.h:424
CommunicationMetaData comm
Definition: Ioex_Internals.h:436
int64_t dfCount
Definition: Ioex_Internals.h:316
entity_id id
Definition: Ioex_Internals.h:172
char elType[MAX_STR_LENGTH+1]
Definition: Ioex_Internals.h:170
Definition: Ioex_Internals.h:412
The main namespace for the Ioss library.
Definition: Iocgns_DatabaseIO.h:50
int64_t procOffset
Definition: Ioex_Internals.h:176
char elType[MAX_STR_LENGTH+1]
Definition: Ioex_Internals.h:207
bool operator!=(const FaceBlock &other) const
Definition: Ioex_Internals.h:205
int64_t entityCount
Definition: Ioex_Internals.h:249
int64_t attributeCount
Definition: Ioex_Internals.h:253
std::string name
Definition: Ioex_Internals.h:208
int64_t attributeCount
Definition: Ioex_Internals.h:175
int64_t procOffset
Definition: Ioex_Internals.h:255
int64_t procOffset
Definition: Ioex_Internals.h:214
int64_t localOwnedCount
Definition: Ioex_Internals.h:274
A collection of nodes.
Definition: Ioss_NodeSet.h:53
int64_t procOffset
Definition: Ioex_Internals.h:140
A collection of element faces with the same topology.
Definition: Ioss_FaceBlock.h:53
A collection of element faces.
Definition: Ioss_FaceSet.h:54
ElemSet(const ElemSet &other)
Definition: Ioex_Internals.h:323
Definition: Ioex_Internals.h:112
int64_t attributeCount
Definition: Ioex_Internals.h:213
ElemSet()
Definition: Ioex_Internals.h:322
Definition: Ioex_Internals.h:181
int64_t localOwnedCount
Definition: Ioex_Internals.h:138
entity_id id
Definition: Ioex_Internals.h:349
A collection of element edges.
Definition: Ioss_EdgeSet.h:54
int64_t entityCount
Definition: Ioex_Internals.h:137
int64_t entityCount
Definition: Ioex_Internals.h:366
entity_id id
Definition: Ioex_Internals.h:209
bool operator!=(const CommunicationMap &other) const
Definition: Ioex_Internals.h:364
A collection of element sides having the same topology.
Definition: Ioss_SideBlock.h:61
ElemBlock()
Definition: Ioex_Internals.h:221
int64_t procOffset
Definition: Ioex_Internals.h:317
int64_t entityCount
Definition: Ioex_Internals.h:334
int64_t dfCount
Definition: Ioex_Internals.h:296
bool operator!=(const ElemSet &other) const
Definition: Ioex_Internals.h:330
entity_id id
Definition: Ioex_Internals.h:365
Definition: Ioss_ParallelUtils.h:45
std::vector< FaceSet > facesets
Definition: Ioex_Internals.h:433
FaceSet(const FaceSet &other)
Definition: Ioex_Internals.h:303
int64_t entityCount
Definition: Ioex_Internals.h:314
ElemBlock(const ElemBlock &other)
Definition: Ioex_Internals.h:228
std::string name
Definition: Ioex_Internals.h:271
Definition: Ioex_Internals.h:300
std::vector< EdgeSet > edgesets
Definition: Ioex_Internals.h:432
NodeBlock()
Definition: Ioex_Internals.h:114
A collection of elements having the same topology.
Definition: Ioss_ElementBlock.h:48
int64_t nodesPerEntity
Definition: Ioex_Internals.h:211
Ioss::ParallelUtils parallelUtil
Definition: Ioex_Internals.h:496
Definition: Ioex_Internals.h:356
std::string name
Definition: Ioex_Internals.h:247
A collection of elements.
Definition: Ioss_ElementSet.h:54
int64_t entityCount
Definition: Ioex_Internals.h:210
int64_t procOffset
Definition: Ioex_Internals.h:352
bool operator!=(const EdgeSet &other) const
Definition: Ioex_Internals.h:290
int64_t entityCount
Definition: Ioex_Internals.h:294
Mesh(int dim, char *the_title, bool file_pp)
Definition: Ioex_Internals.h:417
int64_t procOffset
Definition: Ioex_Internals.h:277
std::string name
Definition: Ioex_Internals.h:332
std::string name
Definition: Ioex_Internals.h:171
bool operator!=(const SideSet &other) const
Definition: Ioex_Internals.h:346
int64_t entityCount
Definition: Ioex_Internals.h:273
entity_id id
Definition: Ioex_Internals.h:313
bool operator!=(const FaceSet &other) const
Definition: Ioex_Internals.h:310
int64_t entity_id
Definition: Ioex_Internals.h:75
Definition: Ioex_Internals.h:439
A namespace for the exodus database format.
Definition: Ioex_IOFactory.C:61
int exodusFilePtr
Definition: Ioex_Internals.h:490
entity_id id
Definition: Ioex_Internals.h:293
bool operator!=(const NodeBlock &other) const
Definition: Ioex_Internals.h:133
NodeSet()
Definition: Ioex_Internals.h:260
bool operator!=(const EdgeBlock &other) const
Definition: Ioex_Internals.h:168
A collection of all nodes in the region.
Definition: Ioss_NodeBlock.h:53
CommunicationMap(entity_id the_id, int64_t count, char the_type)
Definition: Ioex_Internals.h:359
int max_name_length() const
Definition: Ioex_Internals.h:488
Definition: Ioex_Internals.h:219
std::string name
Definition: Ioex_Internals.h:312
FaceBlock()
Definition: Ioex_Internals.h:183
std::vector< NodeBlock > nodeblocks
Definition: Ioex_Internals.h:427
Definition: Ioex_Internals.h:145
bool file_per_processor
Definition: Ioex_Internals.h:425
NodeBlock(const NodeBlock &other)
Definition: Ioex_Internals.h:119
int64_t nodesPerEntity
Definition: Ioex_Internals.h:174
std::string name
Definition: Ioex_Internals.h:348
Definition: Ioex_Internals.h:340
entity_id id
Definition: Ioex_Internals.h:248
NodeSet(const NodeSet &other)
Definition: Ioex_Internals.h:261
int64_t dfProcOffset
Definition: Ioex_Internals.h:353
int64_t edgesPerEntity
Definition: Ioex_Internals.h:251
EdgeBlock()
Definition: Ioex_Internals.h:147
std::vector< FaceBlock > faceblocks
Definition: Ioex_Internals.h:429
std::vector< SideSet > sidesets
Definition: Ioex_Internals.h:435
EdgeBlock(const EdgeBlock &other)
Definition: Ioex_Internals.h:153
int64_t entityCount
Definition: Ioex_Internals.h:350
bool operator!=(const ElemBlock &other) const
Definition: Ioex_Internals.h:244
entity_id id
Definition: Ioex_Internals.h:272
int64_t dfCount
Definition: Ioex_Internals.h:276
std::string name(Ioss::GroupingEntity *entity)
Definition: io_info.C:71
A collection of element sides.
Definition: Ioss_SideSet.h:59
std::string name
Definition: Ioex_Internals.h:292
int exodusFilePtr
Definition: Ioex_Internals.h:409
int64_t id(Ioss::GroupingEntity *entity)
Definition: io_info.C:76
entity_id id
Definition: Ioex_Internals.h:136
int64_t facesPerEntity
Definition: Ioex_Internals.h:252
std::vector< NodeSet > nodesets
Definition: Ioex_Internals.h:431
std::vector< ElemBlock > elemblocks
Definition: Ioex_Internals.h:430
Definition: Ioex_Internals.h:258
FaceSet()
Definition: Ioex_Internals.h:302
char type
Definition: Ioex_Internals.h:367
Definition: Ioex_Internals.h:280
std::vector< EdgeBlock > edgeblocks
Definition: Ioex_Internals.h:428
CommunicationMap()
Definition: Ioex_Internals.h:358
Mesh()
Definition: Ioex_Internals.h:415
std::vector< ElemSet > elemsets
Definition: Ioex_Internals.h:434
Definition: Ioex_Internals.h:320
char elType[MAX_STR_LENGTH+1]
Definition: Ioex_Internals.h:246
EdgeSet()
Definition: Ioex_Internals.h:282
int64_t entityCount
Definition: Ioex_Internals.h:173
A collection of element edges with the same topology.
Definition: Ioss_EdgeBlock.h:53
entity_id id
Definition: Ioex_Internals.h:333
int64_t dfCount
Definition: Ioex_Internals.h:351
EdgeSet(const EdgeSet &other)
Definition: Ioex_Internals.h:283
int64_t procOffset
Definition: Ioex_Internals.h:337
int64_t dfCount
Definition: Ioex_Internals.h:336