pybind/pybind11

Not clear how to expose existing C++ vector as numpy array

Open

#1042 aperta il 30 ago 2017

Vedi su GitHub
 (37 commenti) (27 reazioni) (0 assegnatari)C++ (2005 fork)batch import
enhancementhelp wanted

Metriche repository

Star
 (14.677 star)
Metriche merge PR
 (Merge medio 5g 2h) (10 PR mergiate in 30 g)

Descrizione

This is a question of documentation rather than an issue. I can't find any example of the following very common scenario:

std::vector<int> some_func();
...
// We want to expose returned std::vector as a numpy array without copying
m.def("some_func", []() -> py::array {
   auto data = some_func();
   // What to do with data?? Map it with Eigen (then return what?), wrap somehow with py::buffer (how?)
})

I don't know the answer. It would be very nice to have this explained in docs since this scenario if rather common.

Guida contributor