16 #include "boost/serialization/nvp.hpp"
34 namespace afwDetect = lsst::afw::detection;
35 namespace afwMath = lsst::afw::math;
36 namespace dafBase = lsst::daf::base;
37 namespace dafPersist = lsst::daf::persistence;
38 namespace pexPolicy = lsst::pex::policy;
40 using boost::serialization::make_nvp;
53 dafPersist::Formatter(typeid(this)), _policy(policy) {}
66 throw LSST_EXCEPT(lsst::pex::exceptions::RuntimeError,
"Persisting non-Psf");
69 LOGL_DEBUG(_log,
"PsfFormatter write BoostStorage");
77 LOGL_DEBUG(_log,
"PsfFormatter write XmlStorage");
84 throw LSST_EXCEPT(lsst::pex::exceptions::RuntimeError,
"Unrecognized Storage for Psf");
92 LOGL_DEBUG(_log,
"PsfFormatter read BoostStorage");
100 LOGL_DEBUG(_log,
"PsfFormatter read XmlStorage");
107 throw LSST_EXCEPT(lsst::pex::exceptions::RuntimeError,
"Unrecognized Storage for Psf");
113 throw LSST_EXCEPT(lsst::pex::exceptions::RuntimeError,
"Unexpected call to update for Psf");
119 template <
class Archive>
125 LOGL_DEBUG(_log,
"PsfFormatter delegateSerialize start");
128 throw LSST_EXCEPT(lsst::pex::exceptions::RuntimeError,
"Serializing non-Psf");
130 #if 0 // not present in baseclass
131 ar & make_nvp(
"width", ps->_width) & make_nvp(
"height", ps->_height);
132 ar & make_nvp(
"k", ps->_kernel);
135 LOGL_DEBUG(_log,
"PsfFormatter delegateSerialize end");
std::shared_ptr< Policy > Ptr
Class for XML file storage.
Include files required for standard LSST Exception handling.
virtual boost::archive::text_oarchive & getOArchive(void)
Get a boost::serialization archive suitable for output.
#define LOGL_DEBUG(logger, message...)
Log a debug-level message using a varargs/printf style interface.
LSST DM logging module built on log4cxx.
Interface for XmlStorage class.
virtual boost::archive::xml_iarchive & getIArchive(void)
Get a boost::serialization XML archive suitable for input.
std::shared_ptr< Storage > Ptr
virtual boost::archive::text_iarchive & getIArchive(void)
Get a boost::serialization archive suitable for input.
#define LSST_EXCEPT(type,...)
Create an exception with a given type and message and optionally other arguments (dependent on the ty...
Class for boost::serialization storage.
Base class for all persistable classes.
virtual boost::archive::xml_oarchive & getOArchive(void)
Get a boost::serialization XML archive suitable for output.
std::shared_ptr< PropertySet > Ptr
#define LOG_GET(logger)
Returns a Log object associated with logger.
Interface for LogicalLocation class.
A polymorphic base class for representing an image's Point Spread Function.
Interface for BoostStorage class.