dynamic-graph-py.hh
Go to the documentation of this file.
1 #ifndef DYNAMIC_GRAPH_PY
2 #define DYNAMIC_GRAPH_PY
3 
4 #include <dynamic-graph/debug.h>
7 
8 #include <boost/python.hpp>
9 #include <boost/python/stl_iterator.hpp>
10 #include <iostream>
11 #include <sstream>
12 
14 
15 namespace bp = boost::python;
16 
17 namespace dynamicgraph {
18 namespace python {
19 
20 template <typename Iterator>
21 inline bp::list to_py_list(Iterator begin, Iterator end) {
22  typedef typename Iterator::value_type T;
23  bp::list lst;
24  std::for_each(begin, end, [&](const T& t) { lst.append(t); });
25  return lst;
26 }
27 
28 template <typename Iterator>
29 inline bp::tuple to_py_tuple(Iterator begin, Iterator end) {
30  return bp::tuple(to_py_list(begin, end));
31 }
32 
33 template <typename T>
34 inline std::vector<T> to_std_vector(const bp::object& iterable) {
35  return std::vector<T>(bp::stl_input_iterator<T>(iterable),
36  bp::stl_input_iterator<T>());
37 }
38 
39 void exposeSignals();
40 
41 // Declare functions defined in other source files
42 namespace signalBase {
43 SignalBase<int>* createSignalWrapper(const char* name, const char* type,
44  bp::object object);
45 } // namespace signalBase
46 namespace entity {
47 
49 void addCommands(boost::python::object obj);
50 void addSignals(boost::python::object obj);
51 
52 Entity* create(const char* type, const char* name);
53 bp::object executeCmd(bp::tuple args, bp::dict);
54 } // namespace entity
55 
56 namespace factory {
57 bp::tuple getEntityClassList();
58 }
59 namespace pool {
60 void writeGraph(const char* filename);
61 bp::list getEntityList();
62 const std::map<std::string, Entity*>* getEntityMap();
63 } // namespace pool
64 namespace debug {
65 void addLoggerFileOutputStream(const char* filename);
71 } // namespace debug
72 
73 } // namespace python
74 } // namespace dynamicgraph
75 
76 #endif
Eigen::Matrix< CustomType< Scalar >, Eigen::Dynamic, Eigen::Dynamic > create(int rows, int cols)
void addSignals(boost::python::object obj)
t
void addLoggerFileOutputStream(const char *filename)
Definition: debug-py.cc:27
bp::list to_py_list(Iterator begin, Iterator end)
MapOfEntities * getEntityMap()
bp::object executeCmd(bp::tuple args, bp::dict)
Definition: entity-py.cc:79
bp::tuple to_py_tuple(Iterator begin, Iterator end)
bp::tuple getEntityClassList()
Get name of entity.
Definition: factory-py.cc:20
std::vector< T > to_std_vector(const bp::object &iterable)
void writeGraph(const char *filename)
Definition: pool-py.cc:15
bp::list getEntityList()
Get list of entities.
Definition: pool-py.cc:26
SignalBase< int > * createSignalWrapper(const char *name, const char *type, bp::object object)
Create an instance of SignalWrapper.
void addCommands(boost::python::object obj)


dynamic-graph-python
Author(s): Nicolas Mansard, Olivier Stasse
autogenerated on Sun Jun 25 2023 02:55:50