24 #include <pybind11/pybind11.h> 
   25 #include <pybind11/stl.h> 
   33 using namespace py::literals;
 
   40     wrappers.
wrapType(py::class_<FootprintControl>(wrappers.
module, 
"FootprintControl"),
 
   41                       [](
auto& mod, 
auto& 
cls) {
 
   42                           cls.def(py::init<>());
 
   43                           cls.def(py::init<bool, bool>(), 
"circular"_a, 
"isotropic"_a = false);
 
   44                           cls.def(py::init<bool, bool, bool, bool>(), 
"left"_a, 
"right"_a, 
"up"_a, 
"down"_a);
 
   46                           cls.def(
"growCircular", &FootprintControl::growCircular);
 
   47                           cls.def(
"growIsotropic", &FootprintControl::growIsotropic);
 
   48                           cls.def(
"growLeft", &FootprintControl::growLeft);
 
   49                           cls.def(
"growRight", &FootprintControl::growRight);
 
   50                           cls.def(
"growUp", &FootprintControl::growUp);
 
   51                           cls.def(
"growDown", &FootprintControl::growDown);
 
   53                           cls.def(
"isCircular", &FootprintControl::isCircular);
 
   54                           cls.def(
"isIsotropic", &FootprintControl::isIsotropic);
 
   55                           cls.def(
"isLeft", &FootprintControl::isLeft);
 
   56                           cls.def(
"isRight", &FootprintControl::isRight);
 
   57                           cls.def(
"isUp", &FootprintControl::isUp);
 
   58                           cls.def(
"isDown", &FootprintControl::isDown);
 
   61     auto clsHeavyFootprintCtrl = wrappers.
wrapType(
 
   62             py::class_<HeavyFootprintCtrl>(wrappers.
module, 
"HeavyFootprintCtrl"), [](
auto& mod, 
auto& 
cls) {
 
   63                 cls.def(py::init<HeavyFootprintCtrl::ModifySource>(),
 
   64                         "modifySource"_a = HeavyFootprintCtrl::ModifySource::NONE);
 
   66                 cls.def(
"getModifySource", &HeavyFootprintCtrl::getModifySource);
 
   67                 cls.def(
"setModifySource", &HeavyFootprintCtrl::setModifySource);
 
   68                 cls.def(
"getImageVal", &HeavyFootprintCtrl::getImageVal);
 
   69                 cls.def(
"setImageVal", &HeavyFootprintCtrl::setImageVal);
 
   70                 cls.def(
"getMaskVal", &HeavyFootprintCtrl::getMaskVal);
 
   71                 cls.def(
"setMaskVal", &HeavyFootprintCtrl::setMaskVal);
 
   72                 cls.def(
"getVarianceVal", &HeavyFootprintCtrl::getVarianceVal);
 
   73                 cls.def(
"setVarianceVal", &HeavyFootprintCtrl::setVarianceVal);
 
   76     wrappers.
wrapType(py::enum_<HeavyFootprintCtrl::ModifySource>(clsHeavyFootprintCtrl, 
"ModifySource"),
 
   77                       [](
auto& mod, 
auto& enm) {
 
   78                           enm.value(
"NONE", HeavyFootprintCtrl::ModifySource::NONE);
 
   79                           enm.value(
"SET", HeavyFootprintCtrl::ModifySource::SET);