GEOSX
ExternalMeshGeneratorBase.hpp
Go to the documentation of this file.
1 /*
2  * ------------------------------------------------------------------------------------------------------------
3  * SPDX-License-Identifier: LGPL-2.1-only
4  *
5  * Copyright (c) 2018-2020 Lawrence Livermore National Security LLC
6  * Copyright (c) 2018-2020 The Board of Trustees of the Leland Stanford Junior University
7  * Copyright (c) 2018-2020 Total, S.A
8  * Copyright (c) 2019- GEOSX Contributors
9  * All rights reserved
10  *
11  * See top level LICENSE, COPYRIGHT, CONTRIBUTORS, NOTICE, and ACKNOWLEDGEMENTS files for details.
12  * ------------------------------------------------------------------------------------------------------------
13  */
14 
19 #ifndef GEOS_MESH_GENERATORS_EXTERNALMESHGENERATORBASE_HPP
20 #define GEOS_MESH_GENERATORS_EXTERNALMESHGENERATORBASE_HPP
21 
23 
24 namespace geos
25 {
26 
31 {
32 public:
33 
39  ExternalMeshGeneratorBase( const string & name,
40  Group * const parent );
41 
42 protected:
43 
45  struct viewKeyStruct
46  {
47  constexpr static char const * filePathString() { return "file"; }
48  constexpr static char const * scaleString() { return "scale"; }
49  constexpr static char const * translateString() { return "translate"; }
50  constexpr static char const * volumicFieldsToImportString() { return "fieldsToImport"; }
51  constexpr static char const * volumicFieldsInGEOSXString() { return "fieldNamesInGEOSX"; }
52  constexpr static char const * surfacicFieldsToImportString() { return "surfacicFieldsToImport"; }
53  constexpr static char const * surfacicFieldsInGEOSXString() { return "surfacicFieldsInGEOSX"; }
54  };
56 
57  void postProcessInput() override;
58 
61 
64 
67 
70 
73 
76 
79 };
80 
81 } // namespace geos
82 
83 #endif //GEOS_MESH_GENERATORS_EXTERNALMESHGENERATORBASE_HPP
Base class for external mesh generators (importers).
ExternalMeshGeneratorBase(const string &name, Group *const parent)
Constructor.
array1d< string > m_volumicFieldsToImport
Names of the fields to be copied from an external reader into GEOSX data structure.
array1d< string > m_volumicFieldsInGEOSX
String array of the GEOSX user declared volumic fields.
array1d< string > m_surfacicFieldsInGEOSX
String array of the GEOSX user declared surfacic fields.
R1Tensor m_scale
Scale factor that will be applied to the point coordinates (after translation)
array1d< string > m_surfacicFieldsToImport
Names of the surfacic fields to be copied from an external reader into GEOSX data structure.
R1Tensor m_translate
Translation vector that will be applied to the point coordinates (prior to scaling)
The MeshGeneratorBase class provides an abstract base class implementation for different mesh types....
Class describing a file Path.
Definition: Path.hpp:32
constexpr char const filePathString[]
constexpr variable to hold name for inserting the file path into the xml file.
Definition: xmlWrapper.hpp:274
Array< T, 1 > array1d
Alias for 1D array.
Definition: DataTypes.hpp:216