Scarab  v2.9.1
Project 8 C++ Utility Library
scarab_namespace_pybind.cc
Go to the documentation of this file.
1 /*
2  * scarab_namespace_pybind.cc
3  *
4  * Created on: April 18, 2019
5  * Author: B.H. LaRoque
6  */
7 
8 #include "pybind11/stl.h"
9 
10 #include "application_pybind.hh"
11 #include "cancelable_pybind.hh"
12 #include "signal_handler_pybind.hh"
13 #include "version_pybind.hh"
14 
15 #ifdef BUILD_PARAM_PYBINDING
16 #include "param_pybind.hh"
17 #include "param_value_pybind.hh"
18 #include "param_array_pybind.hh"
19 #include "param_node_pybind.hh"
20 #endif
21 
22 PYBIND11_MODULE( scarab, scarab_mod )
23 {
24  std::list< std::string > all_members;
25  // cancelable
26  all_members.splice( all_members.end(), scarab_pybind::export_cancelable( scarab_mod ) );
27  // signal handler
28  all_members.splice( all_members.end(), scarab_pybind::export_signal_handler( scarab_mod ) );
29  // application
30  all_members.splice( all_members.end(), scarab_pybind::export_application( scarab_mod ) );
31  // utility
32  all_members.splice( all_members.end(), scarab_pybind::export_version( scarab_mod ) );
33 #ifdef BUILD_PARAM_PYBINDING
34  // Param-related data objects
35  all_members.splice( all_members.end(), scarab_pybind::export_param( scarab_mod ) );
36  all_members.splice( all_members.end(), scarab_pybind::export_param_value( scarab_mod ) );
37  all_members.splice( all_members.end(), scarab_pybind::export_param_array( scarab_mod ) );
38  all_members.splice( all_members.end(), scarab_pybind::export_param_node( scarab_mod ) );
39 #endif
40  scarab_mod.attr( "__all__" ) = all_members;
41 }
std::list< std::string > export_signal_handler(pybind11::module &mod)
std::list< std::string > export_param(pybind11::module &mod)
Definition: param_pybind.hh:21
std::list< std::string > export_application(pybind11::module &mod)
PYBIND11_MODULE(scarab, scarab_mod)
std::list< std::string > export_param_array(pybind11::module &mod)
std::list< std::string > export_cancelable(pybind11::module &mod)
std::list< std::string > export_param_value(pybind11::module &mod)
std::list< std::string > export_param_node(pybind11::module &mod)
std::list< std::string > export_version(pybind11::module &mod)