#include #include #include #include "boost/shared_ptr.hpp" #include "boost/python.hpp" #include "boost/python/stl_iterator.hpp" using namespace std; template inline std::vector< T > py_list_to_std_vector( const boost::python::object& iterable ) { return std::vector< T >( boost::python::stl_input_iterator< T >( iterable ), boost::python::stl_input_iterator< T >( ) ); } template inline boost::python::list std_vector_to_py_list(std::vector vector) { typename std::vector::iterator iter; boost::python::list list; for (iter = vector.begin(); iter != vector.end(); ++iter) { list.append(*iter); } return list; }