Teuchos Package Browser (Single Doxygen Collection)
Version of the Day
parameterlist
src
Teuchos_YamlParser_decl.hpp
Go to the documentation of this file.
1
// @HEADER
2
//
3
// ***********************************************************************
4
//
5
// Teuchos: Common Tools Package
6
// Copyright (2004) Sandia Corporation
7
//
8
// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9
// the U.S. Government retains certain rights in this software.
10
//
11
// Redistribution and use in source and binary forms, with or without
12
// modification, are permitted provided that the following conditions are
13
// met:
14
//
15
// 1. Redistributions of source code must retain the above copyright
16
// notice, this list of conditions and the following disclaimer.
17
//
18
// 2. Redistributions in binary form must reproduce the above copyright
19
// notice, this list of conditions and the following disclaimer in the
20
// documentation and/or other materials provided with the distribution.
21
//
22
// 3. Neither the name of the Corporation nor the names of the
23
// contributors may be used to endorse or promote products derived from
24
// this software without specific prior written permission.
25
//
26
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37
//
38
// Questions? Contact
39
// Jonathan Hu (jhu@sandia.gov)
40
// Andrey Prokopenko (aprokop@sandia.gov)
41
// Ray Tuminaro (rstumin@sandia.gov)
42
//
43
// ***********************************************************************
44
//
45
// @HEADER
46
47
#ifndef TEUCHOS_YAMLPARSER_DECL_H_
48
#define TEUCHOS_YAMLPARSER_DECL_H_
49
138
#include "
Teuchos_ParameterList.hpp
"
139
#include "
Teuchos_ParameterEntry.hpp
"
140
#include "
Teuchos_RCP.hpp
"
141
#include "
Teuchos_PtrDecl.hpp
"
142
#include "
Teuchos_FileInputSource.hpp
"
143
144
#include <iostream>
145
#include <string>
146
147
namespace
Teuchos
148
{
149
150
std::string
convertXmlToYaml
(
const
std::string& xmlFileName);
//returns filename of produced YAML file
151
void
convertXmlToYaml
(
const
std::string& xmlFileName,
const
std::string& yamlFileName);
//writes to given filename
152
void
convertXmlToYaml
(std::istream& xmlStream, std::ostream& yamlStream);
153
154
//Functions modeled after Teuchos::XMLParameterListReader
155
namespace
YAMLParameterList
156
{
157
Teuchos::RCP<Teuchos::ParameterList>
parseYamlText
(
const
std::string& text,
158
const
std::string& name);
159
Teuchos::RCP<Teuchos::ParameterList>
parseYamlFile
(
const
std::string& yamlFile);
160
Teuchos::RCP<Teuchos::ParameterList>
parseYamlStream
(std::istream& yaml);
161
void
writeYamlStream
(std::ostream& yamlFile,
const
Teuchos::ParameterList
& pl);
162
void
writeYamlFile
(
const
std::string& yamlFile,
const
Teuchos::ParameterList
& pl);
163
void
writeParameterList
(
const
Teuchos::ParameterList
& pl, std::ostream& yaml,
int
indentLevel);
164
void
writeParameter
(
const
std::string& paramName,
const
Teuchos::ParameterEntry
& entry, std::ostream& yaml,
int
indentLevel);
//throws if the entry's type is not supported
165
void
generalWriteString
(
const
std::string& str, std::ostream& yaml);
166
void
generalWriteDouble
(
double
d, std::ostream& yaml);
167
bool
stringNeedsQuotes
(
const
std::string& str);
168
typedef
Teuchos::ParameterList::ConstIterator
PLIter
;
169
}
170
171
}
//namespace
172
173
#endif
Teuchos::YAMLParameterList::stringNeedsQuotes
bool stringNeedsQuotes(const std::string &s)
Definition:
Teuchos_YamlParser.cpp:1383
Teuchos_ParameterList.hpp
Templated Parameter List class.
Teuchos_RCP.hpp
Reference-counted pointer class and non-member templated function implementations.
Teuchos::FilteredIterator
C++ Standard Library compatable filtered iterator.
Definition:
Teuchos_FilteredIterator.hpp:60
Teuchos_FileInputSource.hpp
Definition of XMLInputSource derived class for reading XML from a file.
Teuchos::YAMLParameterList::writeYamlStream
void writeYamlStream(std::ostream &yaml, const Teuchos::ParameterList &pl)
Definition:
Teuchos_YamlParser.cpp:1104
Teuchos_ParameterEntry.hpp
Object held as the "value" in the Teuchos::ParameterList std::map.
Teuchos::YAMLParameterList::writeYamlFile
void writeYamlFile(const std::string &yamlFile, const Teuchos::ParameterList &pl)
Definition:
Teuchos_YamlParser.cpp:1144
Teuchos::YAMLParameterList::writeParameter
void writeParameter(const std::string ¶mName, const Teuchos::ParameterEntry &entry, std::ostream &yaml, int indentLevel)
Definition:
Teuchos_YamlParser.cpp:1213
Teuchos::RCP< Teuchos::ParameterList >
Teuchos::YAMLParameterList::generalWriteString
void generalWriteString(const std::string &str, std::ostream &yaml)
Definition:
Teuchos_YamlParser.cpp:1355
Teuchos::YAMLParameterList::parseYamlText
Teuchos::RCP< Teuchos::ParameterList > parseYamlText(const std::string &text, const std::string &name)
Definition:
Teuchos_YamlParser.cpp:1077
Teuchos_PtrDecl.hpp
Teuchos::YAMLParameterList::PLIter
Teuchos::ParameterList::ConstIterator PLIter
Definition:
Teuchos_YamlParser_decl.hpp:168
Teuchos::YAMLParameterList::writeParameterList
void writeParameterList(const Teuchos::ParameterList &pl, std::ostream &yaml, int indentLevel)
Definition:
Teuchos_YamlParser.cpp:1157
Teuchos::convertXmlToYaml
std::string convertXmlToYaml(const std::string &xmlFileName)
Definition:
Teuchos_YamlParser.cpp:1040
Teuchos::YAMLParameterList::parseYamlStream
Teuchos::RCP< Teuchos::ParameterList > parseYamlStream(std::istream &yaml)
Definition:
Teuchos_YamlParser.cpp:1095
Teuchos::ParameterList
A list of parameters of arbitrary type.
Definition:
Teuchos_ParameterList.hpp:132
Teuchos::YAMLParameterList::parseYamlFile
Teuchos::RCP< Teuchos::ParameterList > parseYamlFile(const std::string &yamlFile)
Definition:
Teuchos_YamlParser.cpp:1086
Teuchos::YAMLParameterList::generalWriteDouble
void generalWriteDouble(double d, std::ostream &yaml)
Definition:
Teuchos_YamlParser.cpp:1373
Teuchos
Definition:
Teuchos_AbstractFactory.hpp:47
Teuchos::ParameterEntry
This object is held as the "value" in the Teuchos::ParameterList std::map.
Definition:
Teuchos_ParameterEntry.hpp:67
Generated by
1.8.16