|
1 | 1 | #include <pybind11/pybind11.h> |
| 2 | +#include <pybind11/stl.h> |
2 | 3 |
|
3 | 4 | #include <G4MultiFunctionalDetector.hh> |
4 | 5 | #include <G4VPrimitiveScorer.hh> |
5 | 6 | #include <G4VPrimitivePlotter.hh> |
6 | 7 |
|
7 | 8 | #include "holder.hh" |
8 | 9 | #include "typecast.hh" |
| 10 | +#include "opaques.hh" |
9 | 11 |
|
10 | 12 | namespace py = pybind11; |
11 | 13 |
|
@@ -57,18 +59,20 @@ void export_G4MultiFunctionalDetector(py::module &m) |
57 | 59 | .def("DrawAll", &G4MultiFunctionalDetector::DrawAll) |
58 | 60 | .def("PrintAll", &G4MultiFunctionalDetector::PrintAll) |
59 | 61 | .def("ProcessHits", &PublicG4MultiFunctionalDetector::ProcessHits) |
60 | | - .def("RegisterPrimitive", [] (G4MultiFunctionalDetector & self, G4VPrimitivePlotter* plotter) |
61 | | - { |
62 | | - owntrans_ptr<G4VPrimitivePlotter>::remove(plotter); |
63 | | - TRAMPOLINE_REF_INCREASE(G4VPrimitivePlotter, plotter); |
64 | | - return self.RegisterPrimitive(plotter); |
65 | | - }) |
66 | | - .def("RegisterPrimitive", [] (G4MultiFunctionalDetector & self, G4VPrimitiveScorer* scorer) |
67 | | - { |
68 | | - owntrans_ptr<G4VPrimitiveScorer>::remove(scorer); |
69 | | - TRAMPOLINE_REF_INCREASE(G4VPrimitiveScorer, scorer); |
70 | | - return self.RegisterPrimitive(scorer); |
71 | | - }) |
| 62 | + .def("RegisterPrimitive", |
| 63 | + [](G4MultiFunctionalDetector &self, G4VPrimitivePlotter *plotter) { |
| 64 | + owntrans_ptr<G4VPrimitivePlotter>::remove(plotter); |
| 65 | + TRAMPOLINE_REF_INCREASE(G4VPrimitivePlotter, plotter); |
| 66 | + return self.RegisterPrimitive(plotter); |
| 67 | + }) |
| 68 | + |
| 69 | + .def("RegisterPrimitive", |
| 70 | + [](G4MultiFunctionalDetector &self, G4VPrimitiveScorer *scorer) { |
| 71 | + owntrans_ptr<G4VPrimitiveScorer>::remove(scorer); |
| 72 | + TRAMPOLINE_REF_INCREASE(G4VPrimitiveScorer, scorer); |
| 73 | + return self.RegisterPrimitive(scorer); |
| 74 | + }) |
| 75 | + |
72 | 76 | .def("RemovePrimitive", &G4MultiFunctionalDetector::RemovePrimitive) // TODO pass ownership |
73 | 77 | .def("GetNumberOfPrimitives", &G4MultiFunctionalDetector::GetNumberOfPrimitives) |
74 | 78 | .def("GetPrimitive", &G4MultiFunctionalDetector::GetPrimitive, py::return_value_policy::reference_internal); |
|
0 commit comments