libMesh
Public Member Functions | Public Attributes | List of all members
libMesh::ExodusHeaderInfo Class Reference

This class is used as both an external data structure for passing around Exodus file header information, and for storing information internally in ExodusII_IO_Helper. More...

#include <exodus_header_info.h>

Public Member Functions

 ExodusHeaderInfo ()=default
 
 ExodusHeaderInfo (ExodusHeaderInfo &&)=default
 
 ExodusHeaderInfo (const ExodusHeaderInfo &)=default
 
ExodusHeaderInfooperator= (const ExodusHeaderInfo &)=default
 
ExodusHeaderInfooperator= (ExodusHeaderInfo &&)=default
 
 ~ExodusHeaderInfo ()=default
 
void broadcast (const Parallel::Communicator &comm)
 Broadcasts data from processor 0 to other procs using the provided Communicator. More...
 

Public Attributes

std::vector< char > title
 
int num_dim
 
int num_nodes
 
int num_elem
 
int num_elem_blk
 
int num_node_sets
 
int num_side_sets
 
int num_elem_sets
 
int num_edge_blk
 
int num_edge
 

Detailed Description

This class is used as both an external data structure for passing around Exodus file header information, and for storing information internally in ExodusII_IO_Helper.

It can't really be defined in either of those existing headers, so it has its own header...

Definition at line 37 of file exodus_header_info.h.

Constructor & Destructor Documentation

◆ ExodusHeaderInfo() [1/3]

libMesh::ExodusHeaderInfo::ExodusHeaderInfo ( )
default

◆ ExodusHeaderInfo() [2/3]

libMesh::ExodusHeaderInfo::ExodusHeaderInfo ( ExodusHeaderInfo &&  )
default

◆ ExodusHeaderInfo() [3/3]

libMesh::ExodusHeaderInfo::ExodusHeaderInfo ( const ExodusHeaderInfo )
default

◆ ~ExodusHeaderInfo()

libMesh::ExodusHeaderInfo::~ExodusHeaderInfo ( )
default

Member Function Documentation

◆ broadcast()

void libMesh::ExodusHeaderInfo::broadcast ( const Parallel::Communicator comm)
inline

Broadcasts data from processor 0 to other procs using the provided Communicator.

Definition at line 52 of file exodus_header_info.h.

References TIMPI::Communicator::broadcast(), num_dim, num_edge, num_edge_blk, num_elem, num_elem_blk, num_elem_sets, num_node_sets, num_side_sets, and title.

Referenced by libMesh::ExodusII_IO::read_header().

53  {
54  // broadcast vector<char> separately
55  comm.broadcast(title);
56 
57  // Pack individual integers into vector
58  std::vector<int> buffer =
61 
62  // broadcast integers
63  comm.broadcast(buffer);
64 
65  // unpack
66  unsigned int ctr = 0;
67  num_dim = buffer[ctr++];
68  num_elem = buffer[ctr++];
69  num_elem_blk = buffer[ctr++];
70  num_node_sets = buffer[ctr++];
71  num_side_sets = buffer[ctr++];
72  num_elem_sets = buffer[ctr++];
73  num_edge_blk = buffer[ctr++];
74  num_edge = buffer[ctr++];
75  }
std::vector< char > title

◆ operator=() [1/2]

ExodusHeaderInfo& libMesh::ExodusHeaderInfo::operator= ( const ExodusHeaderInfo )
default

◆ operator=() [2/2]

ExodusHeaderInfo& libMesh::ExodusHeaderInfo::operator= ( ExodusHeaderInfo &&  )
default

Member Data Documentation

◆ num_dim

int libMesh::ExodusHeaderInfo::num_dim

◆ num_edge

int libMesh::ExodusHeaderInfo::num_edge

◆ num_edge_blk

int libMesh::ExodusHeaderInfo::num_edge_blk

◆ num_elem

int libMesh::ExodusHeaderInfo::num_elem

◆ num_elem_blk

int libMesh::ExodusHeaderInfo::num_elem_blk

◆ num_elem_sets

int libMesh::ExodusHeaderInfo::num_elem_sets

Definition at line 84 of file exodus_header_info.h.

Referenced by broadcast(), and libMesh::ExodusII_IO_Helper::read_header().

◆ num_node_sets

int libMesh::ExodusHeaderInfo::num_node_sets

◆ num_nodes

int libMesh::ExodusHeaderInfo::num_nodes

Definition at line 79 of file exodus_header_info.h.

Referenced by libMesh::ExodusII_IO_Helper::read_header().

◆ num_side_sets

int libMesh::ExodusHeaderInfo::num_side_sets

◆ title

std::vector<char> libMesh::ExodusHeaderInfo::title

The documentation for this class was generated from the following file: