13 PYBIND11_OVERRIDE_PURE(std::string,
20 PYBIND11_OVERRIDE_PURE(std::string,
27 PYBIND11_OVERRIDE(std::string,
34 PYBIND11_OVERRIDE(std::set<std::string>,
42 py::class_<BasePluginInterface, RawPtrWrapper<BasePluginInterface>,
PyBasePluginInterface> py_base_plugin_interface(m,
"BasePluginInterface", R
"(
43 The base class for all HAL plugins. Every plugin has to derive from this class and implement at least ``get_name`` and ``get_version``.
47 The name of the plugin.
53 Get the name of the plugin.
55 :returns: The name of the plugin.
60 The version of the plugin.
66 Get the version of the plugin.
68 :returns: The version of the plugin.
73 The description of the plugin.
79 Get the description of the plugin.
81 :returns: The description of the plugin.
86 The plugins that this plugin depends on.
92 Get all dependencies of this plugin.
94 :returns: The plugins that this plugin depends on.
virtual std::set< std::string > get_dependencies() const
virtual std::string get_name() const =0
virtual std::string get_description() const
virtual std::string get_version() const =0
BasePluginInterface()=default
std::set< std::string > get_dependencies() const override
std::string get_name() const override
std::string get_description() const override
std::string get_version() const override
void plugin_interfaces_init(py::module &m)
const Module * module(const Gate *g, const NodeBoxes &boxes)