5         namespace pointmatchersupport
 
   10                         py::class_<Parametrizable, std::shared_ptr<Parametrizable>> pyParametrizable(p_module, 
"Parametrizable");
 
   12                         pyParametrizable.doc() = R
"pbdoc( 
   13 The superclass of classes that are constructed using generic parameters. 
   14 This class provides the parameter storage and fetching mechanism 
   18                         py::register_exception<InvalidParameter>(pyParametrizable, 
"InvalidParameter");
 
   20                         py::class_<ParameterDoc>(pyParametrizable, 
"ParameterDoc", 
"The documentation of a parameter")
 
   28                                 .def(py::init<const std::string&, const std::string&, const std::string&, const std::string&, const std::string&, Parametrizable::LexicalComparison>(), py::arg(
"name"), py::arg(
"doc"), py::arg(
"defaultValue"), py::arg(
"minValue"), py::arg(
"maxValue"), py::arg(
"comp"))
 
   29                                 .def(py::init<const std::string&, const std::string&, const std::string&>(), py::arg(
"name"), py::arg(
"doc"), py::arg(
"defaultValue"))
 
   33                                         std::ostringstream oss;
 
   39                         py::bind_vector<ParametersDoc>(pyParametrizable, 
"ParametersDoc", 
"The documentation of all parameters");
 
   42                         py::bind_map<Parameters>(pyParametrizable, 
"Parameters", 
"The documentation of all parameters", py::module_local())
 
   43                                 .def(
"clear", &Parameters::clear, 
"Remove all items from D.");
 
   51                                 .def(py::init<const std::string&, const ParametersDoc, Parameters&>(), py::arg(
"className"), py::arg(
"paramsDoc"), py::arg(
"params"))
 
   56                                         std::ostringstream oss;
 
   63                                 std::ostringstream oss;