qBittorrent
anonymous_namespace{synccontroller.cpp} Namespace Reference

Functions

void processMap (const QVariantMap &prevData, const QVariantMap &data, QVariantMap &syncData)
 
void processHash (QVariantHash prevData, const QVariantHash &data, QVariantMap &syncData, QVariantList &removedItems)
 
void processList (QVariantList prevData, const QVariantList &data, QVariantList &syncData, QVariantList &removedItems)
 
QVariantMap generateSyncData (int acceptedResponseId, const QVariantMap &data, QVariantMap &lastAcceptedData, QVariantMap &lastData)
 
QVariantMap getTransferInfo ()
 

Variables

const int FREEDISKSPACE_CHECK_TIMEOUT = 30000
 
const char KEY_SYNC_MAINDATA_QUEUEING [] = "queueing"
 
const char KEY_SYNC_MAINDATA_REFRESH_INTERVAL [] = "refresh_interval"
 
const char KEY_SYNC_MAINDATA_USE_ALT_SPEED_LIMITS [] = "use_alt_speed_limits"
 
const char KEY_SYNC_TORRENT_PEERS_SHOW_FLAGS [] = "show_flags"
 
const char KEY_PEER_CLIENT [] = "client"
 
const char KEY_PEER_CONNECTION_TYPE [] = "connection"
 
const char KEY_PEER_COUNTRY [] = "country"
 
const char KEY_PEER_COUNTRY_CODE [] = "country_code"
 
const char KEY_PEER_DOWN_SPEED [] = "dl_speed"
 
const char KEY_PEER_FILES [] = "files"
 
const char KEY_PEER_FLAGS [] = "flags"
 
const char KEY_PEER_FLAGS_DESCRIPTION [] = "flags_desc"
 
const char KEY_PEER_IP [] = "ip"
 
const char KEY_PEER_PORT [] = "port"
 
const char KEY_PEER_PROGRESS [] = "progress"
 
const char KEY_PEER_RELEVANCE [] = "relevance"
 
const char KEY_PEER_TOT_DOWN [] = "downloaded"
 
const char KEY_PEER_TOT_UP [] = "uploaded"
 
const char KEY_PEER_UP_SPEED [] = "up_speed"
 
const char KEY_TRANSFER_CONNECTION_STATUS [] = "connection_status"
 
const char KEY_TRANSFER_DHT_NODES [] = "dht_nodes"
 
const char KEY_TRANSFER_DLDATA [] = "dl_info_data"
 
const char KEY_TRANSFER_DLRATELIMIT [] = "dl_rate_limit"
 
const char KEY_TRANSFER_DLSPEED [] = "dl_info_speed"
 
const char KEY_TRANSFER_FREESPACEONDISK [] = "free_space_on_disk"
 
const char KEY_TRANSFER_UPDATA [] = "up_info_data"
 
const char KEY_TRANSFER_UPRATELIMIT [] = "up_rate_limit"
 
const char KEY_TRANSFER_UPSPEED [] = "up_info_speed"
 
const char KEY_TRANSFER_ALLTIME_DL [] = "alltime_dl"
 
const char KEY_TRANSFER_ALLTIME_UL [] = "alltime_ul"
 
const char KEY_TRANSFER_AVERAGE_TIME_QUEUE [] = "average_time_queue"
 
const char KEY_TRANSFER_GLOBAL_RATIO [] = "global_ratio"
 
const char KEY_TRANSFER_QUEUED_IO_JOBS [] = "queued_io_jobs"
 
const char KEY_TRANSFER_READ_CACHE_HITS [] = "read_cache_hits"
 
const char KEY_TRANSFER_READ_CACHE_OVERLOAD [] = "read_cache_overload"
 
const char KEY_TRANSFER_TOTAL_BUFFERS_SIZE [] = "total_buffers_size"
 
const char KEY_TRANSFER_TOTAL_PEER_CONNECTIONS [] = "total_peer_connections"
 
const char KEY_TRANSFER_TOTAL_QUEUED_SIZE [] = "total_queued_size"
 
const char KEY_TRANSFER_TOTAL_WASTE_SESSION [] = "total_wasted_session"
 
const char KEY_TRANSFER_WRITE_CACHE_OVERLOAD [] = "write_cache_overload"
 
const char KEY_FULL_UPDATE [] = "full_update"
 
const char KEY_RESPONSE_ID [] = "rid"
 
const char KEY_SUFFIX_REMOVED [] = "_removed"
 

Function Documentation

◆ generateSyncData()

QVariantMap anonymous_namespace{synccontroller.cpp}::generateSyncData ( int  acceptedResponseId,
const QVariantMap &  data,
QVariantMap &  lastAcceptedData,
QVariantMap &  lastData 
)

Definition at line 332 of file synccontroller.cpp.

333  {
334  QVariantMap syncData;
335  bool fullUpdate = true;
336  int lastResponseId = 0;
337  if (acceptedResponseId > 0)
338  {
339  lastResponseId = lastData[KEY_RESPONSE_ID].toInt();
340 
341  if (lastResponseId == acceptedResponseId)
342  lastAcceptedData = lastData;
343 
344  int lastAcceptedResponseId = lastAcceptedData[KEY_RESPONSE_ID].toInt();
345 
346  if (lastAcceptedResponseId == acceptedResponseId)
347  {
348  processMap(lastAcceptedData, data, syncData);
349  fullUpdate = false;
350  }
351  }
352 
353  if (fullUpdate)
354  {
355  lastAcceptedData.clear();
356  syncData = data;
357  syncData[KEY_FULL_UPDATE] = true;
358  }
359 
360  lastResponseId = (lastResponseId % 1000000) + 1; // cycle between 1 and 1000000
361  lastData = data;
362  lastData[KEY_RESPONSE_ID] = lastResponseId;
363  syncData[KEY_RESPONSE_ID] = lastResponseId;
364 
365  return syncData;
366  }
void processMap(const QVariantMap &prevData, const QVariantMap &data, QVariantMap &syncData)

References KEY_FULL_UPDATE, KEY_RESPONSE_ID, and processMap().

Referenced by SyncController::maindataAction(), and SyncController::torrentPeersAction().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getTransferInfo()

QVariantMap anonymous_namespace{synccontroller.cpp}::getTransferInfo ( )

Definition at line 115 of file synccontroller.cpp.

116  {
117  QVariantMap map;
118  const auto *session = BitTorrent::Session::instance();
119 
120  const BitTorrent::SessionStatus &sessionStatus = session->status();
121  const BitTorrent::CacheStatus &cacheStatus = session->cacheStatus();
122  map[KEY_TRANSFER_DLSPEED] = sessionStatus.payloadDownloadRate;
123  map[KEY_TRANSFER_DLDATA] = sessionStatus.totalPayloadDownload;
124  map[KEY_TRANSFER_UPSPEED] = sessionStatus.payloadUploadRate;
125  map[KEY_TRANSFER_UPDATA] = sessionStatus.totalPayloadUpload;
126  map[KEY_TRANSFER_DLRATELIMIT] = session->downloadSpeedLimit();
127  map[KEY_TRANSFER_UPRATELIMIT] = session->uploadSpeedLimit();
128 
129  const quint64 atd = session->getAlltimeDL();
130  const quint64 atu = session->getAlltimeUL();
131  map[KEY_TRANSFER_ALLTIME_DL] = atd;
132  map[KEY_TRANSFER_ALLTIME_UL] = atu;
133  map[KEY_TRANSFER_TOTAL_WASTE_SESSION] = sessionStatus.totalWasted;
134  map[KEY_TRANSFER_GLOBAL_RATIO] = ((atd > 0) && (atu > 0)) ? Utils::String::fromDouble(static_cast<qreal>(atu) / atd, 2) : "-";
135  map[KEY_TRANSFER_TOTAL_PEER_CONNECTIONS] = sessionStatus.peersCount;
136 
137  const qreal readRatio = cacheStatus.readRatio; // TODO: remove when LIBTORRENT_VERSION_NUM >= 20000
138  map[KEY_TRANSFER_READ_CACHE_HITS] = (readRatio > 0) ? Utils::String::fromDouble(100 * readRatio, 2) : "0";
139  map[KEY_TRANSFER_TOTAL_BUFFERS_SIZE] = cacheStatus.totalUsedBuffers * 16 * 1024;
140 
141  map[KEY_TRANSFER_WRITE_CACHE_OVERLOAD] = ((sessionStatus.diskWriteQueue > 0) && (sessionStatus.peersCount > 0))
142  ? Utils::String::fromDouble((100. * sessionStatus.diskWriteQueue / sessionStatus.peersCount), 2)
143  : QLatin1String("0");
144  map[KEY_TRANSFER_READ_CACHE_OVERLOAD] = ((sessionStatus.diskReadQueue > 0) && (sessionStatus.peersCount > 0))
145  ? Utils::String::fromDouble((100. * sessionStatus.diskReadQueue / sessionStatus.peersCount), 2)
146  : QLatin1String("0");
147 
148  map[KEY_TRANSFER_QUEUED_IO_JOBS] = cacheStatus.jobQueueLength;
150  map[KEY_TRANSFER_TOTAL_QUEUED_SIZE] = cacheStatus.queuedBytes;
151 
152  map[KEY_TRANSFER_DHT_NODES] = sessionStatus.dhtNodes;
153  map[KEY_TRANSFER_CONNECTION_STATUS] = session->isListening()
154  ? (sessionStatus.hasIncomingConnections ? "connected" : "firewalled")
155  : "disconnected";
156 
157  return map;
158  }
static Session * instance()
Definition: session.cpp:997
QString fromDouble(double n, int precision)
Definition: string.cpp:44
const char KEY_TRANSFER_DLSPEED[]
const char KEY_TRANSFER_CONNECTION_STATUS[]
const char KEY_TRANSFER_DHT_NODES[]
const char KEY_TRANSFER_UPDATA[]
const char KEY_TRANSFER_DLRATELIMIT[]
const char KEY_TRANSFER_UPSPEED[]
const char KEY_TRANSFER_DLDATA[]
const char KEY_TRANSFER_UPRATELIMIT[]

References BitTorrent::CacheStatus::averageJobTime, BitTorrent::SessionStatus::dhtNodes, BitTorrent::SessionStatus::diskReadQueue, BitTorrent::SessionStatus::diskWriteQueue, Utils::String::fromDouble(), BitTorrent::SessionStatus::hasIncomingConnections, BitTorrent::Session::instance(), BitTorrent::CacheStatus::jobQueueLength, KEY_TRANSFER_ALLTIME_DL, KEY_TRANSFER_ALLTIME_UL, KEY_TRANSFER_AVERAGE_TIME_QUEUE, KEY_TRANSFER_CONNECTION_STATUS, KEY_TRANSFER_DHT_NODES, KEY_TRANSFER_DLDATA, KEY_TRANSFER_DLRATELIMIT, KEY_TRANSFER_DLSPEED, KEY_TRANSFER_GLOBAL_RATIO, KEY_TRANSFER_QUEUED_IO_JOBS, KEY_TRANSFER_READ_CACHE_HITS, KEY_TRANSFER_READ_CACHE_OVERLOAD, KEY_TRANSFER_TOTAL_BUFFERS_SIZE, KEY_TRANSFER_TOTAL_PEER_CONNECTIONS, KEY_TRANSFER_TOTAL_QUEUED_SIZE, KEY_TRANSFER_TOTAL_WASTE_SESSION, KEY_TRANSFER_UPDATA, KEY_TRANSFER_UPRATELIMIT, KEY_TRANSFER_UPSPEED, KEY_TRANSFER_WRITE_CACHE_OVERLOAD, BitTorrent::SessionStatus::payloadDownloadRate, BitTorrent::SessionStatus::payloadUploadRate, BitTorrent::SessionStatus::peersCount, BitTorrent::CacheStatus::queuedBytes, BitTorrent::CacheStatus::readRatio, BitTorrent::SessionStatus::totalPayloadDownload, BitTorrent::SessionStatus::totalPayloadUpload, BitTorrent::CacheStatus::totalUsedBuffers, and BitTorrent::SessionStatus::totalWasted.

Referenced by SyncController::maindataAction().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ processHash()

void anonymous_namespace{synccontroller.cpp}::processHash ( QVariantHash  prevData,
const QVariantHash &  data,
QVariantMap &  syncData,
QVariantList &  removedItems 
)

Definition at line 228 of file synccontroller.cpp.

229  {
230  // initialize output variables
231  syncData.clear();
232  removedItems.clear();
233 
234  if (prevData.isEmpty())
235  {
236  // If list was empty before, then difference is a whole new list.
237  for (auto i = data.cbegin(); i != data.cend(); ++i)
238  syncData[i.key()] = i.value();
239  }
240  else
241  {
242  for (auto i = data.cbegin(); i != data.cend(); ++i)
243  {
244  switch (i.value().type())
245  {
246  case QVariant::Map:
247  if (!prevData.contains(i.key()))
248  {
249  // new list item found - append it to syncData
250  syncData[i.key()] = i.value();
251  }
252  else
253  {
254  QVariantMap map;
255  processMap(prevData[i.key()].toMap(), i.value().toMap(), map);
256  // existing list item found - remove it from prevData
257  prevData.remove(i.key());
258  if (!map.isEmpty())
259  {
260  // changed list item found - append its changes to syncData
261  syncData[i.key()] = map;
262  }
263  }
264  break;
265  case QVariant::StringList:
266  if (!prevData.contains(i.key()))
267  {
268  // new list item found - append it to syncData
269  syncData[i.key()] = i.value();
270  }
271  else
272  {
273  QVariantList list;
274  QVariantList removedList;
275  processList(prevData[i.key()].toList(), i.value().toList(), list, removedList);
276  // existing list item found - remove it from prevData
277  prevData.remove(i.key());
278  if (!list.isEmpty() || !removedList.isEmpty())
279  {
280  // changed list item found - append entire list to syncData
281  syncData[i.key()] = i.value();
282  }
283  }
284  break;
285  default:
286  Q_ASSERT(false);
287  break;
288  }
289  }
290 
291  if (!prevData.isEmpty())
292  {
293  // prevData contains only items that are missing now -
294  // put them in removedItems
295  for (auto i = prevData.cbegin(); i != prevData.cend(); ++i)
296  removedItems << i.key();
297  }
298  }
299  }
void processList(QVariantList prevData, const QVariantList &data, QVariantList &syncData, QVariantList &removedItems)

References processList(), and processMap().

Referenced by processMap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ processList()

void anonymous_namespace{synccontroller.cpp}::processList ( QVariantList  prevData,
const QVariantList &  data,
QVariantList &  syncData,
QVariantList &  removedItems 
)

Definition at line 302 of file synccontroller.cpp.

303  {
304  // initialize output variables
305  syncData.clear();
306  removedItems.clear();
307 
308  if (prevData.isEmpty())
309  {
310  // If list was empty before, then difference is a whole new list.
311  syncData = data;
312  }
313  else
314  {
315  for (const QVariant &item : data)
316  {
317  if (!prevData.contains(item))
318  // new list item found - append it to syncData
319  syncData.append(item);
320  else
321  // unchanged list item found - remove it from prevData
322  prevData.removeOne(item);
323  }
324 
325  if (!prevData.isEmpty())
326  // prevData contains only items that are missing now -
327  // put them in removedItems
328  removedItems = prevData;
329  }
330  }

Referenced by processHash(), and processMap().

Here is the caller graph for this function:

◆ processMap()

void anonymous_namespace{synccontroller.cpp}::processMap ( const QVariantMap &  prevData,
const QVariantMap &  data,
QVariantMap &  syncData 
)

Definition at line 162 of file synccontroller.cpp.

163  {
164  // initialize output variable
165  syncData.clear();
166 
167  for (auto i = data.cbegin(); i != data.cend(); ++i)
168  {
169  const QString &key = i.key();
170  const QVariant &value = i.value();
171  QVariantList removedItems;
172 
173  switch (static_cast<QMetaType::Type>(value.type()))
174  {
175  case QMetaType::QVariantMap:
176  {
177  QVariantMap map;
178  processMap(prevData[key].toMap(), value.toMap(), map);
179  if (!map.isEmpty())
180  syncData[key] = map;
181  }
182  break;
183  case QMetaType::QVariantHash:
184  {
185  QVariantMap map;
186  processHash(prevData[key].toHash(), value.toHash(), map, removedItems);
187  if (!map.isEmpty())
188  syncData[key] = map;
189  if (!removedItems.isEmpty())
190  syncData[key + KEY_SUFFIX_REMOVED] = removedItems;
191  }
192  break;
193  case QMetaType::QVariantList:
194  {
195  QVariantList list;
196  processList(prevData[key].toList(), value.toList(), list, removedItems);
197  if (!list.isEmpty())
198  syncData[key] = list;
199  if (!removedItems.isEmpty())
200  syncData[key + KEY_SUFFIX_REMOVED] = removedItems;
201  }
202  break;
203  case QMetaType::QString:
204  case QMetaType::LongLong:
205  case QMetaType::Float:
206  case QMetaType::Int:
207  case QMetaType::Bool:
208  case QMetaType::Double:
209  case QMetaType::ULongLong:
210  case QMetaType::UInt:
211  case QMetaType::QDateTime:
212  case QMetaType::Nullptr:
213  if (prevData[key] != value)
214  syncData[key] = value;
215  break;
216  default:
217  Q_ASSERT_X(false, "processMap"
218  , QString("Unexpected type: %1")
219  .arg(QMetaType::typeName(static_cast<QMetaType::Type>(value.type())))
220  .toUtf8().constData());
221  }
222  }
223  }
T value(const QString &key, const T &defaultValue={})
Definition: preferences.cpp:64
void processHash(QVariantHash prevData, const QVariantHash &data, QVariantMap &syncData, QVariantList &removedItems)

References KEY_SUFFIX_REMOVED, processHash(), processList(), and anonymous_namespace{preferences.cpp}::value().

Referenced by generateSyncData(), and processHash().

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ FREEDISKSPACE_CHECK_TIMEOUT

const int anonymous_namespace{synccontroller.cpp}::FREEDISKSPACE_CHECK_TIMEOUT = 30000

Definition at line 54 of file synccontroller.cpp.

Referenced by SyncController::getFreeDiskSpace().

◆ KEY_FULL_UPDATE

const char anonymous_namespace{synccontroller.cpp}::KEY_FULL_UPDATE[] = "full_update"

Definition at line 106 of file synccontroller.cpp.

Referenced by generateSyncData().

◆ KEY_PEER_CLIENT

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_CLIENT[] = "client"

Definition at line 65 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_CONNECTION_TYPE

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_CONNECTION_TYPE[] = "connection"

Definition at line 66 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_COUNTRY

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_COUNTRY[] = "country"

Definition at line 67 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_COUNTRY_CODE

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_COUNTRY_CODE[] = "country_code"

Definition at line 68 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_DOWN_SPEED

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_DOWN_SPEED[] = "dl_speed"

Definition at line 69 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_FILES

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_FILES[] = "files"

Definition at line 70 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_FLAGS

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_FLAGS[] = "flags"

Definition at line 71 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_FLAGS_DESCRIPTION

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_FLAGS_DESCRIPTION[] = "flags_desc"

Definition at line 72 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_IP

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_IP[] = "ip"

Definition at line 73 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_PORT

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_PORT[] = "port"

Definition at line 74 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_PROGRESS

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_PROGRESS[] = "progress"

Definition at line 75 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_RELEVANCE

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_RELEVANCE[] = "relevance"

Definition at line 76 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_TOT_DOWN

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_TOT_DOWN[] = "downloaded"

Definition at line 77 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_TOT_UP

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_TOT_UP[] = "uploaded"

Definition at line 78 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_PEER_UP_SPEED

const char anonymous_namespace{synccontroller.cpp}::KEY_PEER_UP_SPEED[] = "up_speed"

Definition at line 79 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_RESPONSE_ID

const char anonymous_namespace{synccontroller.cpp}::KEY_RESPONSE_ID[] = "rid"

Definition at line 107 of file synccontroller.cpp.

Referenced by generateSyncData().

◆ KEY_SUFFIX_REMOVED

const char anonymous_namespace{synccontroller.cpp}::KEY_SUFFIX_REMOVED[] = "_removed"

Definition at line 108 of file synccontroller.cpp.

Referenced by processMap().

◆ KEY_SYNC_MAINDATA_QUEUEING

const char anonymous_namespace{synccontroller.cpp}::KEY_SYNC_MAINDATA_QUEUEING[] = "queueing"

Definition at line 57 of file synccontroller.cpp.

Referenced by SyncController::maindataAction().

◆ KEY_SYNC_MAINDATA_REFRESH_INTERVAL

const char anonymous_namespace{synccontroller.cpp}::KEY_SYNC_MAINDATA_REFRESH_INTERVAL[] = "refresh_interval"

Definition at line 58 of file synccontroller.cpp.

Referenced by SyncController::maindataAction().

◆ KEY_SYNC_MAINDATA_USE_ALT_SPEED_LIMITS

const char anonymous_namespace{synccontroller.cpp}::KEY_SYNC_MAINDATA_USE_ALT_SPEED_LIMITS[] = "use_alt_speed_limits"

Definition at line 59 of file synccontroller.cpp.

Referenced by SyncController::maindataAction().

◆ KEY_SYNC_TORRENT_PEERS_SHOW_FLAGS

const char anonymous_namespace{synccontroller.cpp}::KEY_SYNC_TORRENT_PEERS_SHOW_FLAGS[] = "show_flags"

Definition at line 62 of file synccontroller.cpp.

Referenced by SyncController::torrentPeersAction().

◆ KEY_TRANSFER_ALLTIME_DL

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_ALLTIME_DL[] = "alltime_dl"

Definition at line 93 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_ALLTIME_UL

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_ALLTIME_UL[] = "alltime_ul"

Definition at line 94 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_AVERAGE_TIME_QUEUE

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_AVERAGE_TIME_QUEUE[] = "average_time_queue"

Definition at line 95 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_CONNECTION_STATUS

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_CONNECTION_STATUS[] = "connection_status"

Definition at line 82 of file synccontroller.cpp.

◆ KEY_TRANSFER_DHT_NODES

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_DHT_NODES[] = "dht_nodes"

Definition at line 83 of file synccontroller.cpp.

◆ KEY_TRANSFER_DLDATA

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_DLDATA[] = "dl_info_data"

Definition at line 84 of file synccontroller.cpp.

◆ KEY_TRANSFER_DLRATELIMIT

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_DLRATELIMIT[] = "dl_rate_limit"

Definition at line 85 of file synccontroller.cpp.

◆ KEY_TRANSFER_DLSPEED

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_DLSPEED[] = "dl_info_speed"

Definition at line 86 of file synccontroller.cpp.

◆ KEY_TRANSFER_FREESPACEONDISK

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_FREESPACEONDISK[] = "free_space_on_disk"

Definition at line 87 of file synccontroller.cpp.

Referenced by SyncController::maindataAction().

◆ KEY_TRANSFER_GLOBAL_RATIO

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_GLOBAL_RATIO[] = "global_ratio"

Definition at line 96 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_QUEUED_IO_JOBS

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_QUEUED_IO_JOBS[] = "queued_io_jobs"

Definition at line 97 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_READ_CACHE_HITS

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_READ_CACHE_HITS[] = "read_cache_hits"

Definition at line 98 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_READ_CACHE_OVERLOAD

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_READ_CACHE_OVERLOAD[] = "read_cache_overload"

Definition at line 99 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_TOTAL_BUFFERS_SIZE

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_TOTAL_BUFFERS_SIZE[] = "total_buffers_size"

Definition at line 100 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_TOTAL_PEER_CONNECTIONS

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_TOTAL_PEER_CONNECTIONS[] = "total_peer_connections"

Definition at line 101 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_TOTAL_QUEUED_SIZE

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_TOTAL_QUEUED_SIZE[] = "total_queued_size"

Definition at line 102 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_TOTAL_WASTE_SESSION

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_TOTAL_WASTE_SESSION[] = "total_wasted_session"

Definition at line 103 of file synccontroller.cpp.

Referenced by getTransferInfo().

◆ KEY_TRANSFER_UPDATA

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_UPDATA[] = "up_info_data"

Definition at line 88 of file synccontroller.cpp.

◆ KEY_TRANSFER_UPRATELIMIT

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_UPRATELIMIT[] = "up_rate_limit"

Definition at line 89 of file synccontroller.cpp.

◆ KEY_TRANSFER_UPSPEED

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_UPSPEED[] = "up_info_speed"

Definition at line 90 of file synccontroller.cpp.

◆ KEY_TRANSFER_WRITE_CACHE_OVERLOAD

const char anonymous_namespace{synccontroller.cpp}::KEY_TRANSFER_WRITE_CACHE_OVERLOAD[] = "write_cache_overload"

Definition at line 104 of file synccontroller.cpp.

Referenced by getTransferInfo().