forked from premiere/premiere-libtorrent
support calling API functions from plugins
This commit is contained in:
parent
fdeab204a4
commit
6228ef2e85
|
@ -194,7 +194,7 @@ namespace libtorrent
|
|||
session_impl& ses = t->session(); \
|
||||
mutex::scoped_lock l(ses.mut); \
|
||||
ses.m_io_service.dispatch(boost::bind(&fun_wrap, &done, &ses.cond, &ses.mut, boost::function<void(void)>(boost::bind(&torrent:: x, t)))); \
|
||||
do { ses.cond.wait(l); } while(!done)
|
||||
while (!done) { ses.cond.wait(l); }
|
||||
|
||||
#define TORRENT_SYNC_CALL1(x, a1) \
|
||||
boost::shared_ptr<torrent> t = m_torrent.lock(); \
|
||||
|
@ -204,7 +204,7 @@ namespace libtorrent
|
|||
mutex::scoped_lock l(ses.mut); \
|
||||
ses.m_io_service.dispatch(boost::bind(&fun_wrap, &done, &ses.cond, &ses.mut, boost::function<void(void)>(boost::bind(&torrent:: x, t, a1)))); \
|
||||
t.reset(); \
|
||||
do { ses.cond.wait(l); } while(!done); }
|
||||
while (!done) { ses.cond.wait(l); }; }
|
||||
|
||||
#define TORRENT_SYNC_CALL2(x, a1, a2) \
|
||||
boost::shared_ptr<torrent> t = m_torrent.lock(); \
|
||||
|
@ -214,7 +214,7 @@ namespace libtorrent
|
|||
mutex::scoped_lock l(ses.mut); \
|
||||
ses.m_io_service.dispatch(boost::bind(&fun_wrap, &done, &ses.cond, &ses.mut, boost::function<void(void)>(boost::bind(&torrent:: x, t, a1, a2)))); \
|
||||
t.reset(); \
|
||||
do { ses.cond.wait(l); } while(!done); }
|
||||
while (!done) { ses.cond.wait(l); }; }
|
||||
|
||||
#define TORRENT_SYNC_CALL3(x, a1, a2, a3) \
|
||||
boost::shared_ptr<torrent> t = m_torrent.lock(); \
|
||||
|
@ -224,7 +224,7 @@ namespace libtorrent
|
|||
mutex::scoped_lock l(ses.mut); \
|
||||
ses.m_io_service.dispatch(boost::bind(&fun_wrap, &done, &ses.cond, &ses.mut, boost::function<void(void)>(boost::bind(&torrent:: x, t, a1, a2, a3)))); \
|
||||
t.reset(); \
|
||||
do { ses.cond.wait(l); } while(!done); }
|
||||
while (!done) { ses.cond.wait(l); }; }
|
||||
|
||||
#define TORRENT_SYNC_CALL_RET(type, def, x) \
|
||||
boost::shared_ptr<torrent> t = m_torrent.lock(); \
|
||||
|
@ -235,7 +235,7 @@ namespace libtorrent
|
|||
mutex::scoped_lock l(ses.mut); \
|
||||
ses.m_io_service.dispatch(boost::bind(&fun_ret<type >, &r, &done, &ses.cond, &ses.mut, boost::function<type(void)>(boost::bind(&torrent:: x, t)))); \
|
||||
t.reset(); \
|
||||
do { ses.cond.wait(l); } while(!done)
|
||||
while (!done) { ses.cond.wait(l); }
|
||||
|
||||
#define TORRENT_SYNC_CALL_RET1(type, def, x, a1) \
|
||||
boost::shared_ptr<torrent> t = m_torrent.lock(); \
|
||||
|
@ -246,7 +246,7 @@ namespace libtorrent
|
|||
mutex::scoped_lock l(ses.mut); \
|
||||
ses.m_io_service.dispatch(boost::bind(&fun_ret<type >, &r, &done, &ses.cond, &ses.mut, boost::function<type(void)>(boost::bind(&torrent:: x, t, a1)))); \
|
||||
t.reset(); \
|
||||
do { ses.cond.wait(l); } while(!done)
|
||||
while (!done) { ses.cond.wait(l); }
|
||||
|
||||
#define TORRENT_SYNC_CALL_RET2(type, def, x, a1, a2) \
|
||||
boost::shared_ptr<torrent> t = m_torrent.lock(); \
|
||||
|
@ -257,7 +257,7 @@ namespace libtorrent
|
|||
mutex::scoped_lock l(ses.mut); \
|
||||
ses.m_io_service.dispatch(boost::bind(&fun_ret<type >, &r, &done, &ses.cond, &ses.mut, boost::function<type(void)>(boost::bind(&torrent:: x, t, a1, a2)))); \
|
||||
t.reset(); \
|
||||
do { ses.cond.wait(l); } while(!done)
|
||||
while (!done) { ses.cond.wait(l); }
|
||||
|
||||
#ifndef BOOST_NO_EXCEPTIONS
|
||||
void throw_invalid_handle()
|
||||
|
@ -871,7 +871,7 @@ namespace libtorrent
|
|||
, &ses.mut, boost::function<void(void)>(boost::bind(
|
||||
&piece_manager::write_resume_data, &t->filesystem(), boost::ref(ret)))));
|
||||
t.reset();
|
||||
do { ses.cond.wait(l); } while(!done);
|
||||
while (!done) { ses.cond.wait(l); }
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
|
Loading…
Reference in New Issue