diff options
Diffstat (limited to 'src/aria2api.cc')
| -rw-r--r-- | src/aria2api.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/aria2api.cc b/src/aria2api.cc index 27ed6680..545d2bf6 100644 --- a/src/aria2api.cc +++ b/src/aria2api.cc @@ -521,6 +521,21 @@ int changeGlobalOption(Session* session, const KeyVals& options) return 0; } +GlobalStat getGlobalStat(Session* session) +{ + const SharedHandle<DownloadEngine>& e = + session->context->reqinfo->getDownloadEngine(); + const SharedHandle<RequestGroupMan>& rgman = e->getRequestGroupMan(); + TransferStat ts = rgman->calculateStat(); + GlobalStat res; + res.downloadSpeed = ts.downloadSpeed; + res.uploadSpeed = ts.uploadSpeed; + res.numActive = rgman->getRequestGroups().size(); + res.numWaiting = rgman->getReservedGroups().size(); + res.numStopped = rgman->getDownloadResults().size(); + return res; +} + std::vector<A2Gid> getActiveDownload(Session* session) { const SharedHandle<DownloadEngine>& e = |
