1 #include <boost/python.hpp>
2 namespace python = boost::python;
4 #include "memory_buffer.hpp"
6 struct memory_buffer_wrapper
8 memory_buffer_wrapper(async_service_ptr service, blockchain_ptr chain,
9 transaction_pool_ptr txpool)
11 membuf = std::make_shared<memory_buffer>(service, chain, txpool);
14 void set_handles(python::object handle_tx_stored,
15 python::object handle_tx_confirmed)
17 membuf->set_handles(handle_tx_stored, handle_tx_confirmed);
20 void receive(const message::transaction& tx,
21 python::object handle_receive)
23 membuf->receive(tx, handle_receive);
26 memory_buffer_ptr membuf;
29 BOOST_PYTHON_MODULE(membuf)
31 using namespace boost::python;
32 class_<memory_buffer_wrapper>("memory_buffer", init<
33 async_service_ptr, blockchain_ptr, transaction_pool_ptr>())
34 .def("receive", &memory_buffer_wrapper::receive)
35 .def("set_handles", &memory_buffer_wrapper::set_handles)
36 .def_readonly("internal_ptr", &memory_buffer_wrapper::membuf)
38 class_<memory_buffer_ptr>("internal_memory_buffer", no_init);