25 #ifndef LSST_MWI_PERSISTENCE_PERSISTENCE_H
26 #define LSST_MWI_PERSISTENCE_PERSISTENCE_H
50 #include <boost/shared_ptr.hpp>
63 namespace persistence {
66 class LogicalLocation;
70 typedef boost::shared_ptr<Persistence>
Ptr;
82 std::string
const& persistableType,
Storage::List const& storageList,
85 std::string
const& persistableType,
Storage::List const& storageList,
Persistence(lsst::pex::policy::Policy::Ptr policy)
static Ptr getPersistence(lsst::pex::policy::Policy::Ptr policy)
virtual lsst::daf::base::Persistable * unsafeRetrieve(std::string const &persistableType, Storage::List const &storageList, lsst::daf::base::PropertySet::Ptr additionalData)
Class for logical location of a persisted Persistable instance.
virtual Storage::Ptr getRetrieveStorage(std::string const &storageType, LogicalLocation const &location)
boost::shared_ptr< PropertySet > Ptr
Storage::Ptr _getStorage(std::string const &storageType, LogicalLocation const &location, bool persist)
virtual lsst::daf::base::Persistable::Ptr retrieve(std::string const &persistableType, Storage::List const &storageList, lsst::daf::base::PropertySet::Ptr additionalData)
Interface for Storage abstract base class.
virtual ~Persistence(void)
boost::shared_ptr< Policy > Ptr
lsst::pex::policy::Policy::Ptr _policy
Pointer to Policy used to configure Persistence.
virtual Storage::Ptr getPersistStorage(std::string const &storageType, LogicalLocation const &location)
Class implementing object persistence.
boost::shared_ptr< Persistable > Ptr
boost::shared_ptr< Persistence > Ptr
Interface for Persistable base class.
virtual void persist(lsst::daf::base::Persistable const &persistable, Storage::List const &storageList, lsst::daf::base::PropertySet::Ptr additionalData)
Persistence & operator=(Persistence const &)
boost::shared_ptr< Storage > Ptr
Interface for PropertySet class.
Base class for all persistable classes.
Citizen is a class that should be among all LSST classes base classes, and handles basic memory manag...
lsst::pex::policy::Policy::Ptr getPolicy() const