1 #ifndef DYNAMIC_GRAPH_PYTHON_MODULE_HH 2 #define DYNAMIC_GRAPH_PYTHON_MODULE_HH 4 #ifdef PINOCCHIO_WITH_URDFDOM 6 #include <pinocchio/fwd.hpp> 9 #include <boost/python.hpp> 10 #include <boost/mpl/for_each.hpp> 11 #include <boost/mpl/vector.hpp> 13 #include <dynamic-graph/entity.h> 24 template <
typename T,
int Options = AddCommands | AddSignals>
27 assert(dynamic_cast<T*>(ent) != NULL);
28 bp::object obj(bp::ptr(static_cast<T*>(ent)));
33 template <
typename T,
int Options = AddCommands | AddSignals>
35 return makeEntity1<T, Options>(
"");
46 template <
typename T,
typename bases = boost::python::bases<dynamicgraph::Entity>,
47 int Options = AddCommands | AddSignals>
50 std::string hiddenClassName(T::CLASS_NAME);
51 namespace bp = boost::python;
52 bp::class_<T, bases, boost::noncopyable> obj(hiddenClassName.c_str(), bp::init<std::string>());
72 bp::def(T::CLASS_NAME.c_str(), &internal::makeEntity1<T, Options>);
73 bp::def(T::CLASS_NAME.c_str(), &internal::makeEntity2<T, Options>);
82 #endif // DYNAMIC_GRAPH_PYTHON_MODULE_HH bp::object makeEntity2()
Definition: module.hh:34
void addSignals(boost::python::object obj)
bp::object makeEntity1(const char *name)
Definition: module.hh:25
constexpr int AddCommands
Definition: module.hh:20
auto exposeEntity()
Definition: module.hh:48
constexpr int AddSignals
Definition: module.hh:19
void addCommands(boost::python::object obj)
Definition: convert-dg-to-py.hh:8
Entity * create(const char *type, const char *name)
Create an instance of Entity.
Definition: entity-py.cc:57