GEOSX
schemaUtilities.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 GEOSX_FILEIO_SCHEMA_SCHEMAUTILITIES_HPP_
20 #define GEOSX_FILEIO_SCHEMA_SCHEMAUTILITIES_HPP_
21 
23 #include "common/DataTypes.hpp"
25 #include <iostream>
26 #include <sstream>
27 #include <string>
28 
29 namespace geosx
30 {
31 
32 // Forward declarations
33 namespace dataRepository
34 {
35 class Group;
36 }
37 
38 namespace schemaUtilities
39 {
40 
48 void ConvertDocumentationToSchema( std::string const & fname, dataRepository::Group * const group, integer documentationType );
49 
56 
65 void SchemaConstruction( dataRepository::Group * const group, xmlWrapper::xmlNode schemaRoot, xmlWrapper::xmlNode schemaParent,
66  integer documentationType );
67 
68 }
69 }
70 
71 #endif /* GEOSX_FILEIO_SCHEMA_SCHEMAUTILITIES_HPP_ */
void ConvertDocumentationToSchema(std::string const &fname, dataRepository::Group *const group, integer documentationType)
Generates the XML schema.
pugi::xml_node xmlNode
Alias for the type of an xml node.
Definition: xmlWrapper.hpp:60
void BuildSimpleSchemaTypes(xmlWrapper::xmlNode schemaRoot)
Generates the simple schema types.
void SchemaConstruction(dataRepository::Group *const group, xmlWrapper::xmlNode schemaRoot, xmlWrapper::xmlNode schemaParent, integer documentationType)
Recursively builds the schema from the data structure skeleton.
std::int32_t integer
Signed integer type.
Definition: DataTypes.hpp:122
std::string string
String type.
Definition: DataTypes.hpp:131