19 #ifndef MSH_BASE_READER_HH 20 #define MSH_BASE_READER_HH 37 int8,
uint8,
int16,
uint16,
int32,
uint32,
int64,
uint64,
float32,
float64,
undefined 97 <<
"No data for field: "<< EI_FieldName::qval
98 <<
" and time: "<< EI_Time::val
99 <<
" in the input file: "<< EI_MeshFile::qval);
101 <<
"Wrong format of " << EI_Type::val <<
", " << EI_TokenizerMsg::val <<
"\n" 102 <<
"in the input file: " << EI_MeshFile::qval);
104 <<
"Unsupported extension " << EI_FileExtension::qval <<
" of the input file: " << EI_MeshFile::qval);
114 static std::shared_ptr< BaseMeshReader > reader_factory(
const FilePath &file_name);
128 void read_raw_mesh(
Mesh * mesh);
133 virtual void read_physical_names(
Mesh * mesh)=0;
157 unsigned int n_components,
bool boundary_domain,
unsigned int component_idx);
162 virtual void check_compatible_mesh(
Mesh &mesh)=0;
176 virtual void read_nodes(
Mesh * mesh)=0;
181 virtual void read_elements(
Mesh * mesh)=0;
186 virtual MeshDataHeader & find_header(
double time, std::string field_name)=0;
191 virtual void make_header_table()=0;
197 bool boundary_domain)=0;
std::shared_ptr< std::vector< T > > ComponentDataPtr
ElementDataFieldMap element_data_values_
Cache with last read element data.
std::map< string, ElementDataPtr > ElementDataFieldMap
#define DECLARE_EXCEPTION(ExcName, Format)
Macro for simple definition of exceptions.
std::shared_ptr< ElementDataCacheBase > ElementDataPtr
std::string data_section_name_
Store name of field data section specify for type of mesh file.
Input::Record input_mesh_rec_
Input record accessor of mesh.
vector< int > bulk_elements_id_
#define TYPEDEF_ERR_INFO(EI_Type, Type)
Macro to simplify declaration of error_info types.
Dedicated class for storing path to input and output files.
#define DECLARE_INPUT_EXCEPTION(ExcName, Format)
Macro for simple definition of input exceptions.
bool has_compatible_mesh_
DataType
Types of VTK data (value 'undefined' for empty value)
Tokenizer tok_
Tokenizer used for reading ASCII file format.