25 #ifndef LSST_MWI_PERSISTENCE_PERSISTENCE_H 26 #define LSST_MWI_PERSISTENCE_PERSISTENCE_H 63 namespace persistence {
66 class LogicalLocation;
static Ptr getPersistence(lsst::pex::policy::Policy::Ptr policy)
Create a Persistence object.
Class for logical location of a persisted Persistable instance.
virtual void persist(lsst::daf::base::Persistable const &persistable, FormatterStorage::List const &storageList, lsst::daf::base::PropertySet::Ptr additionalData)
Persist a Persistable instance.
lsst::pex::policy::Policy::Ptr getPolicy() const
Return the policy used to configure the Persistence object.
virtual ~Persistence(void)
Destructor.
Class implementing object persistence.
virtual FormatterStorage::Ptr getRetrieveStorage(std::string const &storageType, LogicalLocation const &location)
Create a FormatterStorage subclass configured to retrieve from a location.
virtual FormatterStorage::Ptr getPersistStorage(std::string const &storageType, LogicalLocation const &location)
Create a FormatterStorage subclass configured to persist to a location.
virtual lsst::daf::base::Persistable * unsafeRetrieve(std::string const &persistableType, FormatterStorage::List const &storageList, lsst::daf::base::PropertySet::Ptr additionalData)
Retrieve a Persistable instance, returning an unsafe bare pointer.
std::shared_ptr< Persistence > Ptr
virtual lsst::daf::base::Persistable::Ptr retrieve(std::string const &persistableType, FormatterStorage::List const &storageList, lsst::daf::base::PropertySet::Ptr additionalData)
Retrieve a Persistable instance.