LSSTApplications
18.1.0
LSSTDataManagementBasePackage
|
Functions | |
template<typename T > | |
void | declarePersistableFacade (pybind11::module &module, std::string const &suffix) |
Wraps an instantiation of PersistableFacade. More... | |
template<typename Class , typename... Args> | |
void | addPersistableMethods (pybind11::class_< Class, Args... > &cls) |
Add table::io::Persistable and PersistableFacade methods to the pybind11 wrapper for a class. More... | |
void lsst::afw::table::io::python::addPersistableMethods | ( | pybind11::class_< Class, Args... > & | cls | ) |
Add table::io::Persistable and PersistableFacade methods to the pybind11 wrapper for a class.
Use this instead of declarePersistableFacade to avoid circular import issues in Python; it allows your class to be used without importing lsst.afw.table.
Use as follows:
Definition at line 88 of file python.h.
void lsst::afw::table::io::python::declarePersistableFacade | ( | pybind11::module & | module, |
std::string const & | suffix | ||
) |
Wraps an instantiation of PersistableFacade.
Pybind11 shall assume that PersistableFacade
is managed using std::shared_ptr
, as this is required for compatibility with existing subclasses of PersistableFacade
. This means that wrapping will only work if new classes also use std::shared_ptr
as their holder type.
T | The type of object this PersistableFacade is for. |
module | The pybind11 module that shall contain PersistableFacade<T> |
suffix | A string to disambiguate this class from other PersistableFacades . The Python name of this class shall be PersistableFacade<suffix> . |
Definition at line 63 of file python.h.