77using namespace CGraph ;
88namespace py = pybind11;
99
10- PYBIND11_MODULE (pyCGraph , m) {
10+ PYBIND11_MODULE (PyCGraph , m) {
1111 py::class_<CStatus>(m, " CStatus" )
1212 .def (py::init<>())
1313 .def (py::init<int , const std::string&>())
@@ -20,46 +20,53 @@ PYBIND11_MODULE(pyCGraph, m) {
2020 .value (" PARALLEL" , GMultiConditionType::PARALLEL)
2121 .export_values ();
2222
23- py::class_<GPipelinePy , std::unique_ptr<GPipelinePy , py::nodelete> >(m, " GPipeline" )
23+ py::class_<PyGPipeline , std::unique_ptr<PyGPipeline , py::nodelete> >(m, " GPipeline" )
2424 .def (py::init<>())
25- .def (" init" , &GPipelinePy ::init)
26- .def (" run" , &GPipelinePy ::run, py::call_guard<py::gil_scoped_release>())
27- .def (" process" , &GPipelinePy ::process, py::call_guard<py::gil_scoped_release>(),
25+ .def (" init" , &PyGPipeline ::init)
26+ .def (" run" , &PyGPipeline ::run, py::call_guard<py::gil_scoped_release>())
27+ .def (" process" , &PyGPipeline ::process, py::call_guard<py::gil_scoped_release>(),
2828 py::arg (" runTimes" ) = 1 )
29- .def (" destroy" , &GPipelinePy ::destroy)
30- .def (" registerGElement" , &GPipelinePy ::registerGElement,
29+ .def (" destroy" , &PyGPipeline ::destroy)
30+ .def (" registerGElement" , &PyGPipeline ::registerGElement,
3131 py::arg (" element" ),
3232 py::arg (" depends" ) = GElementPtrSet{},
3333 py::arg (" name" ) = CGRAPH_EMPTY,
3434 py::arg (" loop" ) = CGRAPH_DEFAULT_LOOP_TIMES,
3535 " register a GElement with dependencies, name, and loop count." );
3636
37- py::class_<GElement, GElementPyw , std::unique_ptr<GElement, py::nodelete> >(m, " GElement" )
37+ py::class_<GElement, PywGElement , std::unique_ptr<GElement, py::nodelete> >(m, " GElement" )
3838 .def (py::init<>())
3939 .def (" getName" , &GElement::getName)
4040 .def (" setName" , &GElement::setName)
4141 .def (" addDependGElements" , &GElement::addDependGElements,
4242 py::arg (" elements" ))
4343 .def (" setLoop" , &GElement::setLoop);
4444
45- py::class_<GNode, GNodePyw , GElement, std::unique_ptr<GNode, py::nodelete> >(m, " GNode" )
45+ py::class_<GNode, PywGNode , GElement, std::unique_ptr<GNode, py::nodelete> >(m, " GNode" )
4646 .def (py::init<>());
4747
48- py::class_<GRegionPy , GElement, std::unique_ptr<GRegionPy , py::nodelete> >(m, " GRegion " )
48+ py::class_<PyGCluster , GElement, std::unique_ptr<PyGCluster , py::nodelete> >(m, " GCluster " )
4949 .def (py::init<>())
50- .def (" addGElement" , &GRegionPy ::addGElement,
50+ .def (" addGElement" , &PyGCluster ::addGElement,
5151 py::arg (" element" ));
5252
53- py::class_<GConditionPyw , GElement, std::unique_ptr<GConditionPyw , py::nodelete> >(m, " GCondition " )
53+ py::class_<PyGRegion , GElement, std::unique_ptr<PyGRegion , py::nodelete> >(m, " GRegion " )
5454 .def (py::init<>())
55- .def (" addGElement" , &GConditionPyw ::addGElement,
55+ .def (" addGElement" , &PyGRegion ::addGElement,
5656 py::arg (" element" ));
5757
58- py::class_<GMultiConditionPy<CGraph::GMultiConditionType::SERIAL>, GElement >(m, " GSerialMultiCondition " )
58+ py::class_<PywGCondition, GElement, std::unique_ptr<PywGCondition, py::nodelete> >(m, " GCondition " )
5959 .def (py::init<>())
60- .def (" addGElement" , &GMultiConditionPy<CGraph::GMultiConditionType::SERIAL>::addGElement);
60+ .def (" addGElement" , &PywGCondition::addGElement,
61+ py::arg (" element" ));
6162
62- py::class_<GMultiConditionPy <CGraph::GMultiConditionType::PARALLEL >, GElement>(m, " GParallelMultiCondition " )
63+ py::class_<PyGMultiCondition <CGraph::GMultiConditionType::SERIAL >, GElement>(m, " GSerialMultiCondition " )
6364 .def (py::init<>())
64- .def (" addGElement" , &GMultiConditionPy<CGraph::GMultiConditionType::PARALLEL>::addGElement);
65+ .def (" addGElement" , &PyGMultiCondition<CGraph::GMultiConditionType::SERIAL>::addGElement,
66+ py::arg (" element" ));
67+
68+ py::class_<PyGMultiCondition<CGraph::GMultiConditionType::PARALLEL>, GElement>(m, " GParallelMultiCondition" )
69+ .def (py::init<>())
70+ .def (" addGElement" , &PyGMultiCondition<CGraph::GMultiConditionType::PARALLEL>::addGElement,
71+ py::arg (" element" ));
6572}
0 commit comments