LSSTApplications
10.0+286,10.0+36,10.0+46,10.0-2-g4f67435,10.1+152,10.1+37,11.0,11.0+1,11.0-1-g47edd16,11.0-1-g60db491,11.0-1-g7418c06,11.0-2-g04d2804,11.0-2-g68503cd,11.0-2-g818369d,11.0-2-gb8b8ce7
LSSTDataManagementBasePackage
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
home
lsstsw
stack
Linux64
pex_policy
11.0+1
include
lsst
pex
policy
PolicyWriter.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
2
3
/*
4
* LSST Data Management System
5
* Copyright 2008, 2009, 2010 LSST Corporation.
6
*
7
* This product includes software developed by the
8
* LSST Project (http://www.lsst.org/).
9
*
10
* This program is free software: you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation, either version 3 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the LSST License Statement and
21
* the GNU General Public License along with this program. If not,
22
* see <http://www.lsstcorp.org/LegalNotices/>.
23
*/
24
32
#ifndef LSST_PEX_POLICY_POLICYWRITER_H
33
#define LSST_PEX_POLICY_POLICYWRITER_H
34
35
#include "
lsst/pex/policy/Policy.h
"
36
#include <ostream>
37
38
#define NULL_FILENAME "/dev/null"
39
40
namespace
lsst {
41
namespace
pex {
42
namespace
policy {
43
47
class
PolicyWriter
{
48
public
:
49
56
PolicyWriter
(std::ostream *out = 0);
57
64
PolicyWriter
(
const
std::string&
file
,
bool
append=
false
);
65
69
virtual
~PolicyWriter
();
70
78
virtual
void
write
(
const
Policy
& policy,
bool
doDecl=
false
);
79
81
89
virtual
void
writeBool
(
const
std::string&
name
,
bool
value);
90
virtual
void
writeInt
(
const
std::string& name,
int
value);
91
virtual
void
writeDouble
(
const
std::string& name,
double
value);
92
virtual
void
writeString
(
const
std::string& name,
93
const
std::string& value);
94
virtual
void
writePolicy
(
const
std::string& name,
const
Policy
& value);
95
virtual
void
writeFile
(
const
std::string& name,
const
PolicyFile
& value);
97
99
107
virtual
void
writeBools
(
const
std::string& name,
108
const
Policy::BoolArray
& values) = 0;
109
virtual
void
writeInts
(
const
std::string& name,
110
const
Policy::IntArray
& values) = 0;
111
virtual
void
writeDoubles
(
const
std::string& name,
112
const
Policy::DoubleArray
& values) = 0;
113
virtual
void
writeStrings
(
const
std::string& name,
114
const
Policy::StringArray
& values) = 0;
115
virtual
void
writePolicies
(
const
std::string& name,
116
const
Policy::PolicyPtrArray
& values) = 0;
117
virtual
void
writeFiles
(
const
std::string& name,
118
const
Policy::FilePtrArray
& values) = 0;
120
125
void
close
();
126
131
std::string
toString
();
132
133
134
private
:
135
std::ostream *
_myos
;
136
protected
:
137
141
std::ostream *
_os
;
142
};
143
144
145
146
147
}}}
// end namespace lsst::pex::policy
148
149
#endif // LSST_PEX_POLICY_POLICYWRITER_H
150
lsst::pex::policy::PolicyWriter::writeBool
virtual void writeBool(const std::string &name, bool value)
lsst::pex::policy::Policy::IntArray
std::vector< int > IntArray
Definition:
Policy.h:179
lsst::pex::policy::PolicyWriter::toString
std::string toString()
lsst::pex::policy::Policy::PolicyPtrArray
std::vector< Ptr > PolicyPtrArray
Definition:
Policy.h:182
name
table::Key< std::string > name
Definition:
ApCorrMap.cc:71
lsst::pex::policy::PolicyWriter::writeInts
virtual void writeInts(const std::string &name, const Policy::IntArray &values)=0
lsst::pex::policy::PolicyWriter::~PolicyWriter
virtual ~PolicyWriter()
lsst::pex::policy::PolicyWriter::close
void close()
lsst::pex::policy::Policy
a container for holding hierarchical configuration data in memory.
Definition:
Policy.h:169
lsst::pex::policy::PolicyWriter::writeFiles
virtual void writeFiles(const std::string &name, const Policy::FilePtrArray &values)=0
lsst::pex::policy::PolicyWriter::write
virtual void write(const Policy &policy, bool doDecl=false)
lsst::pex::policy::PolicyWriter
Definition:
PolicyWriter.h:47
lsst::pex::policy::PolicyWriter::writeBools
virtual void writeBools(const std::string &name, const Policy::BoolArray &values)=0
lsst::pex::policy::PolicyWriter::_myos
std::ostream * _myos
Definition:
PolicyWriter.h:135
lsst::pex::policy::PolicyWriter::writeDoubles
virtual void writeDoubles(const std::string &name, const Policy::DoubleArray &values)=0
lsst::pex::policy::Policy::StringArray
std::vector< std::string > StringArray
Definition:
Policy.h:181
lsst::pex::policy::PolicyWriter::writeFile
virtual void writeFile(const std::string &name, const PolicyFile &value)
lsst::pex::policy::PolicyWriter::_os
std::ostream * _os
Definition:
PolicyWriter.h:141
lsst::pex::policy::PolicyWriter::writeString
virtual void writeString(const std::string &name, const std::string &value)
lsst::pex::policy::PolicyWriter::writeStrings
virtual void writeStrings(const std::string &name, const Policy::StringArray &values)=0
lsst::pex::policy::PolicyWriter::writeDouble
virtual void writeDouble(const std::string &name, double value)
lsst::pex::policy::PolicyWriter::writeInt
virtual void writeInt(const std::string &name, int value)
lsst::pex::policy::Policy::FilePtrArray
std::vector< FilePtr > FilePtrArray
Definition:
Policy.h:183
lsst::pex::policy::PolicyWriter::writePolicy
virtual void writePolicy(const std::string &name, const Policy &value)
lsst::pex::policy::Policy::DoubleArray
std::vector< double > DoubleArray
Definition:
Policy.h:180
Policy.h
lsst::pex::policy::Policy::BoolArray
std::vector< bool > BoolArray
Definition:
Policy.h:178
lsst::pex::policy::PolicyFile
a representation of a file containing Policy parameter data.
Definition:
PolicyFile.h:58
lsst::pex::policy::PolicyWriter::PolicyWriter
PolicyWriter(std::ostream *out=0)
lsstimport.file
file
Definition:
lsstimport.py:116
lsst::pex::policy::PolicyWriter::writePolicies
virtual void writePolicies(const std::string &name, const Policy::PolicyPtrArray &values)=0
Generated on Thu Sep 24 2015 02:29:23 for LSSTApplications by
1.8.5