lsst.pex.policy
19.0.0-2-g3b2f90d
|
Go to the documentation of this file.
58 : _myos(new
std::ofstream(file.c_str(), append ?
std::ios_base::app :
std::ios_base::
trunc)), _os(0) {
59 _myos->exceptions(std::ofstream::failbit | std::ofstream::badbit);
64 if (_myos)
delete _myos;
73 if (ss)
return ss->
str();
92 if (doDecl) (*_os) <<
"#<?cfg paf policy ?>" <<
std::endl;
95 Policy::StringArray::const_iterator ni;
96 for (ni = names.begin(); ni != names.end(); ++ni) {
99 if (tp ==
typeid(
bool)) {
101 }
else if (tp ==
typeid(
int)) {
103 }
else if (tp ==
typeid(
double)) {
114 }
catch (NameNotFound&) {
static std::type_info const & typeOfT()
virtual void writeBool(const std::string &name, bool value)
write the given property out as policy data
virtual void writeInts(const std::string &name, const Policy::IntArray &values)=0
virtual void write(const Policy &policy, bool doDecl=false)
write the contents of a policy the attached stream.
std::vector< std::string > StringArray
the definition of the PolicyWriter class
virtual void writeFiles(const std::string &name, const Policy::FilePtrArray &values)=0
std::string toString()
return the written data as a string.
PolicyWriter(std::ostream *out=0)
create a writer attached to an output stream.
std::shared_ptr< Policy > Ptr
std::shared_ptr< PolicyFile > FilePtr
virtual void writeString(const std::string &name, const std::string &value)
virtual ~PolicyWriter()
delete this writer
definition of the PolicyFile class
#define LSST_EXCEPT(type,...)
virtual void writeFile(const std::string &name, const PolicyFile &value)
virtual void writePolicies(const std::string &name, const Policy::PolicyPtrArray &values)=0
virtual void writeStrings(const std::string &name, const Policy::StringArray &values)=0
virtual void writeBools(const std::string &name, const Policy::BoolArray &values)=0
write an array of property values with a given name
virtual void writeDoubles(const std::string &name, const Policy::DoubleArray &values)=0
std::ostream * _os
the output stream.
void close()
close the output stream.
virtual void writeDouble(const std::string &name, double value)
virtual void writeInt(const std::string &name, int value)
virtual void writePolicy(const std::string &name, const Policy &value)