1 /* 2 * Bittorrent Client using Qt and libtorrent. 3 * Copyright (C) 2015, 2017 Vladimir Golovnev <glassez@yandex.ru> 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU General Public License 7 * as published by the Free Software Foundation; either version 2 8 * of the License, or (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 * 19 * In addition, as a special exception, the copyright holders give permission to 20 * link this program with the OpenSSL project's "OpenSSL" library (or with 21 * modified versions of it that use the same license as the "OpenSSL" library), 22 * and distribute the linked executables. You must obey the GNU General Public 23 * License in all respects for all of the code used other than "OpenSSL". If you 24 * modify file(s), you may extend this exception to your version of the file(s), 25 * but you are not obligated to do so. If you do not wish to do so, delete this 26 * exception statement from your version. 27 */ 28 29 #pragma once 30 31 #include <QtGlobal> 32 33 namespace BitTorrent 34 { 35 struct SessionStatus 36 { 37 bool hasIncomingConnections = false; 38 39 // Current download rate for the BT 40 // session. Payload means that it only take into 41 // account "useful" part of the rate 42 quint64 payloadDownloadRate = 0; 43 44 // Current upload rate for the BT 45 // session. Payload means that it only take into 46 // account "useful" part of the rate 47 quint64 payloadUploadRate = 0; 48 49 // Additional download/upload rates 50 quint64 uploadRate = 0; 51 quint64 downloadRate = 0; 52 quint64 ipOverheadUploadRate = 0; 53 quint64 ipOverheadDownloadRate = 0; 54 quint64 dhtUploadRate = 0; 55 quint64 dhtDownloadRate = 0; 56 quint64 trackerUploadRate = 0; 57 quint64 trackerDownloadRate = 0; 58 59 quint64 totalDownload = 0; 60 quint64 totalUpload = 0; 61 quint64 totalPayloadDownload = 0; 62 quint64 totalPayloadUpload = 0; 63 quint64 ipOverheadUpload = 0; 64 quint64 ipOverheadDownload = 0; 65 quint64 dhtUpload = 0; 66 quint64 dhtDownload = 0; 67 quint64 trackerUpload = 0; 68 quint64 trackerDownload = 0; 69 quint64 totalWasted = 0; 70 quint64 diskReadQueue = 0; 71 quint64 diskWriteQueue = 0; 72 quint64 dhtNodes = 0; 73 quint64 peersCount = 0; 74 }; 75 } 76