An abstract interface for writing policy data to streams.
More...
#include <PolicyWriter.h>
|
| PolicyWriter (std::ostream *out=0) |
| create a writer attached to an output stream. More...
|
|
| PolicyWriter (const std::string &file, bool append=false) |
| create a writer attached to a file. More...
|
|
virtual | ~PolicyWriter () |
| delete this writer More...
|
|
virtual void | write (const Policy &policy, bool doDecl=false) |
| write the contents of a policy the attached stream. More...
|
|
virtual void | writeBool (const std::string &name, bool value) |
| write the given property out as policy data More...
|
|
virtual void | writeInt (const std::string &name, int value) |
|
virtual void | writeDouble (const std::string &name, double value) |
|
virtual void | writeString (const std::string &name, const std::string &value) |
|
virtual void | writePolicy (const std::string &name, const Policy &value) |
|
virtual void | writeFile (const std::string &name, const PolicyFile &value) |
|
virtual void | writeBools (const std::string &name, const Policy::BoolArray &values)=0 |
| write an array of property values with a given name More...
|
|
virtual void | writeInts (const std::string &name, const Policy::IntArray &values)=0 |
|
virtual void | writeDoubles (const std::string &name, const Policy::DoubleArray &values)=0 |
|
virtual void | writeStrings (const std::string &name, const Policy::StringArray &values)=0 |
|
virtual void | writePolicies (const std::string &name, const Policy::PolicyPtrArray &values)=0 |
|
virtual void | writeFiles (const std::string &name, const Policy::FilePtrArray &values)=0 |
|
void | close () |
| close the output stream. More...
|
|
std::string | toString () |
| return the written data as a string. More...
|
|
An abstract interface for writing policy data to streams.
Definition at line 47 of file PolicyWriter.h.
◆ PolicyWriter() [1/2]
lsst::pex::policy::PolicyWriter::PolicyWriter |
( |
std::ostream * |
out = 0 | ) |
|
create a writer attached to an output stream.
If no stream is provided, it will write policy data to an internal string stream; toString() can be used to retrieve the results.
- Parameters
-
out | the output stream to write data to |
◆ PolicyWriter() [2/2]
lsst::pex::policy::PolicyWriter::PolicyWriter |
( |
const std::string & |
file, |
|
|
bool |
append = false |
|
) |
| |
create a writer attached to a file.
This file will be immediately opened for writing.
- Parameters
-
file | the path to the output file |
append | if true, open the file to append. (default is false.) |
◆ ~PolicyWriter()
virtual lsst::pex::policy::PolicyWriter::~PolicyWriter |
( |
| ) |
|
|
virtual |
◆ close()
void lsst::pex::policy::PolicyWriter::close |
( |
| ) |
|
close the output stream.
This has no effect if the attached stream is not a file stream.
◆ toString()
std::string lsst::pex::policy::PolicyWriter::toString |
( |
| ) |
|
return the written data as a string.
This string will be non-empty only if this class was was instantiated without an attached stream.
◆ write()
virtual void lsst::pex::policy::PolicyWriter::write |
( |
const Policy & |
policy, |
|
|
bool |
doDecl = false |
|
) |
| |
|
virtual |
write the contents of a policy the attached stream.
Each top-level parameter will be recursively printed.
- Parameters
-
policy | the policy data to write |
doDecl | if true, precede the data with the appropriate file format type. |
◆ writeBool()
virtual void lsst::pex::policy::PolicyWriter::writeBool |
( |
const std::string & |
name, |
|
|
bool |
value |
|
) |
| |
|
virtual |
write the given property out as policy data
- Parameters
-
name | the name to save the property as. This may be a hierarchical name; however, an implementation is not guaranteed to support it. If it cannot, it should raise an exception. |
value | the value to save under that name. |
◆ writeBools()
write an array of property values with a given name
- Parameters
-
name | the name to save the values as. This may be a hierarchical name; however, an implementation is not guaranteed to support it. If it cannot, it should raise an exception. |
values | the values to save under that name. |
Implemented in lsst::pex::policy::paf::PAFWriter.
◆ writeDouble()
virtual void lsst::pex::policy::PolicyWriter::writeDouble |
( |
const std::string & |
name, |
|
|
double |
value |
|
) |
| |
|
virtual |
◆ writeDoubles()
◆ writeFile()
virtual void lsst::pex::policy::PolicyWriter::writeFile |
( |
const std::string & |
name, |
|
|
const PolicyFile & |
value |
|
) |
| |
|
virtual |
◆ writeFiles()
◆ writeInt()
virtual void lsst::pex::policy::PolicyWriter::writeInt |
( |
const std::string & |
name, |
|
|
int |
value |
|
) |
| |
|
virtual |
◆ writeInts()
◆ writePolicies()
◆ writePolicy()
virtual void lsst::pex::policy::PolicyWriter::writePolicy |
( |
const std::string & |
name, |
|
|
const Policy & |
value |
|
) |
| |
|
virtual |
◆ writeString()
virtual void lsst::pex::policy::PolicyWriter::writeString |
( |
const std::string & |
name, |
|
|
const std::string & |
value |
|
) |
| |
|
virtual |
◆ writeStrings()
◆ _os
the output stream.
This should always be non-null.
Definition at line 132 of file PolicyWriter.h.
The documentation for this class was generated from the following file:
- /j/snowflake/release/lsstsw/stack/1a1d771/Linux64/pex_policy/20.0.0/include/lsst/pex/policy/PolicyWriter.h