Go to the documentation of this file.
   20 #ifndef LIBMESH_XDR_IO_H 
   21 #define LIBMESH_XDR_IO_H 
   25 #include "libmesh/libmesh.h" 
   26 #include "libmesh/mesh_input.h" 
   27 #include "libmesh/mesh_output.h" 
   28 #include "libmesh/parallel_object.h" 
   93   virtual void read (
const std::string &) 
override;
 
   98   virtual void write (
const std::string &) 
override;
 
  265   template <
typename T>
 
  276   template <
typename T>
 
  288   template <
typename T>
 
  295   template <
typename T>
 
  303   template <
typename T>
 
  311   template <
typename T>
 
  318   template <
typename T>
 
  400 #endif // LIBMESH_XDR_IO_H 
  
void write_serialized_subdomain_names(Xdr &io) const
Write subdomain name information - NEW in 0.9.2 format.
 
static const std::size_t io_blksize
Define the block size to use for chunked IO.
 
std::string _subdomain_map_file
 
largest_id_type xdr_id_type
 
The BoundaryInfo class contains information relevant to boundary conditions including storing faces,...
 
void set_auto_parallel()
Insist that we should write parallel files if and only if the mesh is an already distributed Distribu...
 
const std::string & version() const
Get/Set the version string.
 
bool binary() const
Get/Set the flag indicating if we should read/write binary.
 
virtual bool is_serial() const
 
void read_serialized_edge_bcs(Xdr &io, T)
Read the edge boundary conditions for a parallel, distributed mesh.
 
const std::string & boundary_condition_file_name() const
Get/Set the boundary condition file name.
 
void write_serialized_bcs_helper(Xdr &io, const new_header_id_type n_side_bcs, const std::string bc_type) const
Helper function used in write_serialized_side_bcs, write_serialized_edge_bcs, and write_serialized_sh...
 
std::string _p_level_file
 
MeshIO class used for writing XDR (eXternal Data Representation) and XDA mesh files.
 
std::string _partition_map_file
 
The libMesh namespace provides an interface to certain functionality in the library.
 
void read_header(Xdr &io, std::vector< T > &meta_data)
Read header information - templated to handle old (4-byte) or new (8-byte) header id types.
 
This class implements a C++ interface to the XDR (eXternal Data Representation) format.
 
const std::string & subdomain_map_file_name() const
Get/Set the subdomain file name.
 
virtual void write(const std::string &) override
This method implements writing a mesh to a specified file.
 
XdrIO(MeshBase &, const bool=false)
Constructor.
 
void read_serialized_side_bcs(Xdr &io, T)
Read the side boundary conditions for a parallel, distributed mesh.
 
void write_serialized_connectivity(Xdr &io, const dof_id_type n_elem) const
Write the connectivity for a parallel, distributed mesh.
 
virtual void read(const std::string &) override
This method implements reading a mesh from a specified file.
 
void set_write_parallel(bool do_parallel=true)
Insist that we should/shouldn't write parallel files.
 
std::string & boundary_condition_file_name()
 
bool write_parallel() const
Report whether we should write parallel files.
 
void read_serialized_shellface_bcs(Xdr &io, T)
Read the "shell face" boundary conditions for a parallel, distributed mesh.
 
const std::string & polynomial_level_file_name() const
Get/Set the polynomial degree file name.
 
void write_serialized_bc_names(Xdr &io, const BoundaryInfo &info, bool is_sideset) const
Write boundary names information (sideset and nodeset) - NEW in 0.9.2 format.
 
bool version_at_least_1_1_0() const
 
void read_serialized_nodes(Xdr &io, const dof_id_type n_nodes)
Read the nodal locations for a parallel, distributed mesh.
 
std::string & polynomial_level_file_name()
 
virtual ~XdrIO()
Destructor.
 
This is the MeshBase class.
 
const std::string & partition_map_file_name() const
Get/Set the partitioning file name.
 
bool version_at_least_0_9_2() const
 
void write_serialized_nodes(Xdr &io, const dof_id_type n_nodes) const
Write the nodal locations for a parallel, distributed mesh.
 
static const dof_id_type invalid_id
An invalid id to distinguish an uninitialized DofObject.
 
bool version_at_least_0_9_6() const
 
std::string & subdomain_map_file_name()
 
const dof_id_type n_nodes
 
void write_serialized_nodesets(Xdr &io, const new_header_id_type n_nodesets) const
Write the boundary conditions for a parallel, distributed mesh.
 
void read_serialized_bcs_helper(Xdr &io, T, const std::string bc_type)
Helper function used in read_serialized_side_bcs, read_serialized_edge_bcs, and read_serialized_shell...
 
void write_serialized_shellface_bcs(Xdr &io, const new_header_id_type n_shellface_bcs) const
Write the "shell face" boundary conditions for a parallel, distributed mesh.
 
void write_serialized_edge_bcs(Xdr &io, const new_header_id_type n_edge_bcs) const
Write the edge boundary conditions for a parallel, distributed mesh.
 
void read_serialized_bc_names(Xdr &io, BoundaryInfo &info, bool is_sideset)
Read boundary names information (sideset and nodeset) - NEW in 0.9.2 format.
 
This class defines an abstract interface for Mesh output.
 
void read_serialized_connectivity(Xdr &io, const dof_id_type n_elem, std::vector< new_header_id_type > &sizes, T)
Read the connectivity for a parallel, distributed mesh.
 
This is the base class from which all geometric element types are derived.
 
void write_serialized_side_bcs(Xdr &io, const new_header_id_type n_side_bcs) const
Write the side boundary conditions for a parallel, distributed mesh.
 
bool legacy() const
Get/Set the flag indicating if we should read/write legacy.
 
std::string & partition_map_file_name()
 
bool version_at_least_1_3_0() const
 
uint64_t new_header_id_type
 
An object whose state is distributed along a set of processors.
 
std::string _bc_file_name
 
void read_serialized_subdomain_names(Xdr &io)
Read subdomain name information - NEW in 0.9.2 format.
 
unsigned int _field_width
 
uint32_t old_header_id_type
 
void pack_element(std::vector< xdr_id_type > &conn, const Elem *elem, const dof_id_type parent_id=DofObject::invalid_id, const dof_id_type parent_pid=DofObject::invalid_id) const
Pack an element into a transfer buffer for parallel communication.
 
void read_serialized_nodesets(Xdr &io, T)
Read the nodeset conditions for a parallel, distributed mesh.