Robotics tools in C++11. Implements soft real time arm drivers for Kuka LBR iiwa plus V-REP, ROS, Constrained Optimization based planning, Hand Eye Calibration and Inverse Kinematics integration.
The general procedure for wrapping a C++ file can now be described as follows:
Specify C++ language in setup.py script or locally in a source file.
Create one or more .pxd files with cdef extern from blocks and (if existing) the C++ namespace name. In these blocks,
declare classes as cdef cppclass blocks
declare public names (variables, methods and constructors)
Write an extension modules, cimport from the .pxd file and use the declarations.
consider implementing V-REP python integration for plugin + analysis.
Strategy 1: cython
Make a python plugin with this and cython: https://github.com/CoppeliaRobotics/v_repPlusPlus https://cython.readthedocs.io/en/latest/src/userguide/wrapping_CPlusPlus.html
Nice example of python interface to cython c++: https://github.com/jrl-umi3218/Eigen3ToPython
Strategy 2 cffi
https://bitbucket.org/cffi/cffi http://cffi.readthedocs.io/en/latest/index.html