1 #include "pybind11/pybind11.h"
2 #include "pybind11/stl.h"
4 #include "lsst/daf/base/Citizen.h"
5 #include "lsst/daf/base/PropertySet.h"
12 namespace py = pybind11;
16 namespace persistence {
19 py::module::import(
"lsst.daf.base");
21 py::module mod(
"persistence");
23 py::class_<python::ReadProxyBase, std::shared_ptr<python::ReadProxyBase>>(mod,
"ReadProxyBase")
27 py::class_<Persistence, std::shared_ptr<Persistence>, base::Citizen> clsPersistence(mod,
"Persistence");
static Ptr getPersistence(lsst::pex::policy::Policy::Ptr policy)
Create a Persistence object.
virtual void persist(lsst::daf::base::Persistable const &persistable, FormatterStorage::List const &storageList, lsst::daf::base::PropertySet::Ptr additionalData)
Persist a Persistable instance.
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.
Interface for Persistence class.
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.
Interface for LogicalLocation class.