mirror of
https://github.com/transmission/transmission.git
synced 2026-05-08 09:39:08 +01:00
API cleanup: s/tr_torrentRates/tr_sessionGetSpeed/
This commit is contained in:
+3
-3
@@ -632,9 +632,9 @@ tr_core_get_stats( const TrCore * core,
|
||||
|
||||
if( !isDisposed( core ) )
|
||||
{
|
||||
tr_torrentRates( core->priv->handle,
|
||||
&setme->clientDownloadSpeed,
|
||||
&setme->clientUploadSpeed );
|
||||
tr_sessionGetSpeed( core->priv->handle,
|
||||
&setme->clientDownloadSpeed,
|
||||
&setme->clientUploadSpeed );
|
||||
|
||||
gtk_tree_model_foreach( core->priv->model,
|
||||
statsForeach,
|
||||
|
||||
+1
-1
@@ -649,7 +649,7 @@ updateSpeeds( PrivateData * p )
|
||||
float u, d;
|
||||
tr_handle * handle = tr_core_handle( p->core );
|
||||
|
||||
tr_torrentRates( handle, &d, &u );
|
||||
tr_sessionGetSpeed( handle, &d, &u );
|
||||
tr_strlspeed( buf, d, sizeof( buf ) );
|
||||
gtk_label_set_text( GTK_LABEL( p->dl_lb ), buf );
|
||||
tr_strlspeed( buf, u, sizeof( buf ) );
|
||||
|
||||
@@ -381,19 +381,14 @@ tr_sessionGetPeerLimit( const tr_handle * handle UNUSED )
|
||||
***/
|
||||
|
||||
void
|
||||
tr_torrentRates( tr_handle * h, float * toClient, float * toPeer )
|
||||
tr_sessionGetSpeed( const tr_handle * session,
|
||||
float * toClient,
|
||||
float * toPeer )
|
||||
{
|
||||
if( h )
|
||||
{
|
||||
tr_globalLock( h );
|
||||
|
||||
if( toClient )
|
||||
*toClient = tr_rcRate( h->download );
|
||||
if( toPeer )
|
||||
*toPeer = tr_rcRate( h->upload );
|
||||
|
||||
tr_globalUnlock( h );
|
||||
}
|
||||
if( session && toClient )
|
||||
*toClient = tr_rcRate( session->download );
|
||||
if( session && toPeer )
|
||||
*toPeer = tr_rcRate( session->upload );
|
||||
}
|
||||
|
||||
int
|
||||
|
||||
+122
-118
@@ -22,6 +22,13 @@
|
||||
* DEALINGS IN THE SOFTWARE.
|
||||
*****************************************************************************/
|
||||
|
||||
/*
|
||||
* This file defines the public API for the libtransmission library.
|
||||
*
|
||||
* Other headers suitable for public consumption are bencode.h
|
||||
* and utils.h. Most of the remaining headers in libtransmission
|
||||
* should be considered private to libtransmission.
|
||||
*/
|
||||
#ifndef TR_TRANSMISSION_H
|
||||
#define TR_TRANSMISSION_H 1
|
||||
|
||||
@@ -41,6 +48,7 @@ extern "C" {
|
||||
#include <time.h> /* time_t */
|
||||
|
||||
#define SHA_DIGEST_LENGTH 20
|
||||
|
||||
#ifdef __BEOS__
|
||||
# include <StorageDefs.h>
|
||||
# define MAX_PATH_LENGTH B_FILE_NAME_LENGTH
|
||||
@@ -71,7 +79,6 @@ const char* tr_getDefaultConfigDir( void );
|
||||
typedef struct tr_ctor tr_ctor;
|
||||
typedef struct tr_handle tr_handle;
|
||||
typedef struct tr_info tr_info;
|
||||
typedef struct tr_stat tr_stat;
|
||||
typedef struct tr_torrent tr_torrent;
|
||||
|
||||
|
||||
@@ -87,27 +94,27 @@ typedef struct tr_torrent tr_torrent;
|
||||
*/
|
||||
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_CONFIG_DIR tr_getDefaultConfigDir()
|
||||
#define TR_DEFAULT_CONFIG_DIR tr_getDefaultConfigDir()
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_PEX_ENABLED 1
|
||||
#define TR_DEFAULT_PEX_ENABLED 1
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_PORT_FORWARDING_ENABLED 0
|
||||
#define TR_DEFAULT_PORT_FORWARDING_ENABLED 0
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_PORT 51413
|
||||
#define TR_DEFAULT_PORT 51413
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_GLOBAL_PEER_LIMIT 200
|
||||
#define TR_DEFAULT_GLOBAL_PEER_LIMIT 200
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_PEER_SOCKET_TOS 8
|
||||
#define TR_DEFAULT_PEER_SOCKET_TOS 8
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_BLOCKLIST_ENABLED 0
|
||||
#define TR_DEFAULT_BLOCKLIST_ENABLED 0
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_RPC_ENABLED 0
|
||||
#define TR_DEFAULT_RPC_ENABLED 0
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_RPC_PORT 9091
|
||||
#define TR_DEFAULT_RPC_PORT 9091
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_RPC_PORT_STR "9091"
|
||||
#define TR_DEFAULT_RPC_PORT_STR "9091"
|
||||
/** @see tr_sessionInitFull */
|
||||
#define TR_DEFAULT_RPC_ACL "+127.0.0.1"
|
||||
#define TR_DEFAULT_RPC_ACL "+127.0.0.1"
|
||||
|
||||
/**
|
||||
* @brief Start a libtransmission session.
|
||||
@@ -224,38 +231,34 @@ tr_handle * tr_sessionInitFull( const char * configDir,
|
||||
int rpcPort,
|
||||
const char * rpcAccessControlList );
|
||||
|
||||
/**
|
||||
* @brief shorter form of tr_sessionInitFull()
|
||||
*
|
||||
* @deprecated Use tr_sessionInitFull() instead.
|
||||
*/
|
||||
/** @brief Shorter form of tr_sessionInitFull()
|
||||
@deprecated Use tr_sessionInitFull() instead. */
|
||||
tr_handle * tr_sessionInit( const char * configDir,
|
||||
const char * downloadDir,
|
||||
const char * tag );
|
||||
|
||||
/**
|
||||
* @brief end a libtransmission session
|
||||
* @see tr_sessionInitFull()
|
||||
*/
|
||||
/** @brief End a libtransmission session
|
||||
@see tr_sessionInitFull() */
|
||||
void tr_sessionClose( tr_handle * );
|
||||
|
||||
/**
|
||||
* Returns the configuration directory passed into tr_sessionInitFull().
|
||||
* @brief Return the session's configuration directory
|
||||
*
|
||||
* This is where transmission stores its .torrent files, .resume files,
|
||||
* blocklists, etc.
|
||||
*/
|
||||
const char * tr_sessionGetConfigDir( const tr_handle * );
|
||||
|
||||
/**
|
||||
* Set the per-session default download folder for new torrents.
|
||||
* @brief Set the per-session default download folder for new torrents.
|
||||
* @see tr_sessionInitFull()
|
||||
* @see tr_sessionGetDownloadDir()
|
||||
* @see tr_ctorSetDownloadDir()
|
||||
*/
|
||||
void tr_sessionSetDownloadDir( tr_handle *, const char * downloadDir );
|
||||
|
||||
/**
|
||||
* Get the default download folder for new torrents.
|
||||
/**
|
||||
* @brief Get the default download folder for new torrents.
|
||||
*
|
||||
* This is set by tr_sessionInitFull() or tr_sessionSetDownloadDir(),
|
||||
* and can be overridden on a per-torrent basis by tr_ctorSetDownloadDir().
|
||||
@@ -323,8 +326,6 @@ typedef enum
|
||||
}
|
||||
tr_rpc_callback_type;
|
||||
|
||||
struct tr_torrent;
|
||||
|
||||
typedef void ( *tr_rpc_func )( tr_handle * handle,
|
||||
tr_rpc_callback_type type,
|
||||
struct tr_torrent * tor_or_null,
|
||||
@@ -414,6 +415,10 @@ void tr_sessionSetSpeedLimitEnabled( tr_handle * session,
|
||||
|
||||
enum { TR_UP, TR_DOWN };
|
||||
|
||||
void tr_sessionGetSpeed( const tr_handle * session,
|
||||
float * overall_down_KiBs,
|
||||
float * overall_up_KiBs );
|
||||
|
||||
int tr_sessionIsSpeedLimitEnabled( const tr_handle * session,
|
||||
int up_or_down );
|
||||
|
||||
@@ -429,6 +434,7 @@ void tr_sessionSetPeerLimit( tr_handle * handle,
|
||||
|
||||
uint16_t tr_sessionGetPeerLimit( const tr_handle * handle );
|
||||
|
||||
|
||||
/**
|
||||
* Load all the torrents in tr_getTorrentDir().
|
||||
* This can be used at startup to kickstart all the torrents
|
||||
@@ -673,19 +679,39 @@ tr_torrent * tr_torrentNew( tr_handle * handle,
|
||||
/** @addtogroup tr_torrent Torrents
|
||||
@{ */
|
||||
|
||||
/** Iterate through the torrents.
|
||||
Pass in a NULL pointer to get the first torrent. */
|
||||
tr_torrent* tr_torrentNext( tr_handle *, tr_torrent * );
|
||||
/** @brief Frees memory allocated by tr_torrentNew().
|
||||
Running torrents are stopped first. */
|
||||
void tr_torrentFree( tr_torrent * );
|
||||
|
||||
/** Returns this torrent's unique ID.
|
||||
IDs are good as simple lookup keys, but are not persistent
|
||||
between sessions. If you need that, use tr_info.hash or
|
||||
tr_info.hashString. */
|
||||
/** @brief Removes our .torrent and .resume files for
|
||||
this torrent, then calls tr_torrentFree(). */
|
||||
void tr_torrentRemove( tr_torrent * );
|
||||
|
||||
/** @brief Start a torrent */
|
||||
void tr_torrentStart( tr_torrent * );
|
||||
|
||||
/** @brief Stop (pause) a torrent */
|
||||
void tr_torrentStop( tr_torrent * );
|
||||
|
||||
/**
|
||||
* @brief Iterate through the torrents.
|
||||
*
|
||||
* Pass in a NULL pointer to get the first torrent.
|
||||
*/
|
||||
tr_torrent* tr_torrentNext( tr_handle * session, tr_torrent * );
|
||||
|
||||
/**
|
||||
* @brief Returns this torrent's unique ID.
|
||||
*
|
||||
* IDs are good as simple lookup keys, but are not persistent
|
||||
* between sessions. If you need that, use tr_info.hash or
|
||||
* tr_info.hashString.
|
||||
*/
|
||||
int tr_torrentId( const tr_torrent * );
|
||||
|
||||
/***********************************************************************
|
||||
*** Speed Limits
|
||||
**/
|
||||
/****
|
||||
***** Speed Limits
|
||||
****/
|
||||
|
||||
typedef enum
|
||||
{
|
||||
@@ -709,20 +735,18 @@ void tr_torrentSetSpeedLimit( tr_torrent * tor,
|
||||
int tr_torrentGetSpeedLimit( const tr_torrent * tor,
|
||||
int up_or_down );
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
*** Peer Limits
|
||||
**/
|
||||
/****
|
||||
***** Peer Limits
|
||||
****/
|
||||
|
||||
void tr_torrentSetPeerLimit( tr_torrent * tor,
|
||||
uint16_t peerLimit );
|
||||
|
||||
uint16_t tr_torrentGetPeerLimit( const tr_torrent * tor );
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* Torrent Priorities
|
||||
**********************************************************************/
|
||||
/****
|
||||
***** File Priorities
|
||||
****/
|
||||
|
||||
enum
|
||||
{
|
||||
@@ -734,8 +758,9 @@ enum
|
||||
typedef int8_t tr_priority_t;
|
||||
|
||||
/**
|
||||
* Set a batch of files to a particular priority.
|
||||
* Priority must be one of TR_PRI_NORMAL, _HIGH, or _LOW
|
||||
* @brief Set a batch of files to a particular priority.
|
||||
*
|
||||
* @param priority must be one of TR_PRI_NORMAL, _HIGH, or _LOW
|
||||
*/
|
||||
void tr_torrentSetFilePriorities( tr_torrent * tor,
|
||||
tr_file_index_t * files,
|
||||
@@ -743,42 +768,33 @@ void tr_torrentSetFilePriorities( tr_torrent * tor,
|
||||
tr_priority_t priority );
|
||||
|
||||
/**
|
||||
* Get this torrent's file priorities.
|
||||
* @brief Get this torrent's file priorities.
|
||||
*
|
||||
* @return A malloc()ed array of tor->info.fileCount items,
|
||||
* each holding a value of TR_PRI_NORMAL, _HIGH, or _LOW.
|
||||
* The caller must free() the array when done.
|
||||
* each holding a TR_PRI_NORMAL, TR_PRI_HIGH, or TR_PRI_LOW.
|
||||
* It's the caller's responsibility to free() this.
|
||||
*/
|
||||
tr_priority_t* tr_torrentGetFilePriorities( const tr_torrent * );
|
||||
|
||||
/**
|
||||
* Single-file form of tr_torrentGetFilePriorities.
|
||||
* returns one of TR_PRI_NORMAL, _HIGH, or _LOW.
|
||||
* @brief Single-file form of tr_torrentGetFilePriorities.
|
||||
* @return TR_PRI_NORMAL, TR_PRI_HIGH, or TR_PRI_LOW.
|
||||
*/
|
||||
tr_priority_t tr_torrentGetFilePriority( const tr_torrent *,
|
||||
tr_file_index_t file );
|
||||
|
||||
/**
|
||||
* Returns true if the file's `download' flag is set.
|
||||
* @brief See if a file's `download' flag is set.
|
||||
* @return true if the file's `download' flag is set.
|
||||
*/
|
||||
int tr_torrentGetFileDL( const tr_torrent *, tr_file_index_t file );
|
||||
|
||||
/**
|
||||
* Set a batch of files to be downloaded or not.
|
||||
*/
|
||||
/** @brief Set a batch of files to be downloaded or not. */
|
||||
void tr_torrentSetFileDLs ( tr_torrent * tor,
|
||||
tr_file_index_t * files,
|
||||
tr_file_index_t fileCount,
|
||||
int do_download );
|
||||
|
||||
/***********************************************************************
|
||||
* tr_torrentRates
|
||||
***********************************************************************
|
||||
* Gets the total download and upload rates
|
||||
**********************************************************************/
|
||||
void tr_torrentRates( tr_handle *, float *, float * );
|
||||
|
||||
|
||||
|
||||
const tr_info * tr_torrentInfo( const tr_torrent * );
|
||||
|
||||
@@ -786,10 +802,6 @@ void tr_torrentSetDownloadDir( tr_torrent *, const char * );
|
||||
|
||||
const char * tr_torrentGetDownloadDir( const tr_torrent * );
|
||||
|
||||
void tr_torrentStart( tr_torrent * );
|
||||
|
||||
void tr_torrentStop( tr_torrent * );
|
||||
|
||||
|
||||
/**
|
||||
***
|
||||
@@ -839,22 +851,40 @@ void tr_torrentManualUpdate( tr_torrent * );
|
||||
|
||||
int tr_torrentCanManualUpdate( const tr_torrent * );
|
||||
|
||||
/** Return a pointer to an tr_stat structure with updated information
|
||||
on the torrent. This is typically called by the GUI clients every
|
||||
second or so to get a new snapshot of the torrent's status. */
|
||||
const tr_stat * tr_torrentStat( tr_torrent * );
|
||||
|
||||
/** Like tr_torrentStat(), but only recalculates the statistics if it's
|
||||
been longer than a second since they were last calculated. This can
|
||||
reduce the CPU load if you're calling tr_torrentStat() frequently. */
|
||||
const tr_stat * tr_torrentStatCached( tr_torrent * );
|
||||
|
||||
/***********************************************************************
|
||||
* tr_torrentPeers
|
||||
***********************************************************************/
|
||||
typedef struct tr_peer_stat tr_peer_stat;
|
||||
tr_peer_stat * tr_torrentPeers( const tr_torrent *, int * peerCount );
|
||||
void tr_torrentPeersFree( tr_peer_stat *, int peerCount );
|
||||
|
||||
typedef struct tr_peer_stat
|
||||
{
|
||||
unsigned int isEncrypted : 1;
|
||||
unsigned int isDownloadingFrom : 1;
|
||||
unsigned int isUploadingTo : 1;
|
||||
|
||||
unsigned int peerIsChoked : 1;
|
||||
unsigned int peerIsInterested : 1;
|
||||
unsigned int clientIsChoked : 1;
|
||||
unsigned int clientIsInterested : 1;
|
||||
unsigned int isIncoming : 1;
|
||||
|
||||
uint8_t from;
|
||||
uint16_t port;
|
||||
|
||||
char addr[16];
|
||||
char client[80];
|
||||
char flagStr[32];
|
||||
|
||||
float progress;
|
||||
float downloadFromRate;
|
||||
float uploadToRate;
|
||||
}
|
||||
tr_peer_stat;
|
||||
|
||||
tr_peer_stat * tr_torrentPeers( const tr_torrent * torrent,
|
||||
int * peerCount );
|
||||
|
||||
void tr_torrentPeersFree( tr_peer_stat * peerStats,
|
||||
int peerCount );
|
||||
|
||||
typedef struct tr_file_stat
|
||||
{
|
||||
@@ -884,18 +914,6 @@ void tr_torrentAmountFinished( const tr_torrent * tor, float * tab, int size );
|
||||
|
||||
void tr_torrentVerify( tr_torrent * );
|
||||
|
||||
/**
|
||||
* Frees memory allocated by tr_torrentNew().
|
||||
* Running torrents are stopped first.
|
||||
*/
|
||||
void tr_torrentFree( tr_torrent * );
|
||||
|
||||
/**
|
||||
* Removes our .torrent and .resume files for this
|
||||
* torrent, then calls tr_torrentFree()
|
||||
*/
|
||||
void tr_torrentRemove( tr_torrent * );
|
||||
|
||||
/***********************************************************************
|
||||
* tr_info
|
||||
**********************************************************************/
|
||||
@@ -1020,7 +1038,7 @@ enum
|
||||
* The current status of a torrent.
|
||||
* @see tr_torrentStat()
|
||||
*/
|
||||
struct tr_stat
|
||||
typedef struct tr_stat
|
||||
{
|
||||
/** The torrent's unique Id.
|
||||
@see tr_torrentId() */
|
||||
@@ -1181,32 +1199,18 @@ struct tr_stat
|
||||
|
||||
/** The last time we uploaded or downloaded piece data on this torrent. */
|
||||
time_t activityDate;
|
||||
};
|
||||
}
|
||||
tr_stat;
|
||||
|
||||
struct tr_peer_stat
|
||||
{
|
||||
char addr[16];
|
||||
char client[80];
|
||||
|
||||
unsigned int isEncrypted : 1;
|
||||
unsigned int isDownloadingFrom : 1;
|
||||
unsigned int isUploadingTo : 1;
|
||||
/** Return a pointer to an tr_stat structure with updated information
|
||||
on the torrent. This is typically called by the GUI clients every
|
||||
second or so to get a new snapshot of the torrent's status. */
|
||||
const tr_stat * tr_torrentStat( tr_torrent * );
|
||||
|
||||
unsigned int peerIsChoked : 1;
|
||||
unsigned int peerIsInterested : 1;
|
||||
unsigned int clientIsChoked : 1;
|
||||
unsigned int clientIsInterested : 1;
|
||||
unsigned int isIncoming : 1;
|
||||
|
||||
char flagStr[32];
|
||||
|
||||
uint8_t from;
|
||||
uint16_t port;
|
||||
|
||||
float progress;
|
||||
float downloadFromRate;
|
||||
float uploadToRate;
|
||||
};
|
||||
/** Like tr_torrentStat(), but only recalculates the statistics if it's
|
||||
been longer than a second since they were last calculated. This can
|
||||
reduce the CPU load if you're calling tr_torrentStat() frequently. */
|
||||
const tr_stat * tr_torrentStatCached( tr_torrent * );
|
||||
|
||||
/** @} */
|
||||
|
||||
|
||||
+2
-2
@@ -90,7 +90,7 @@
|
||||
BOOL badgeDownload = [[NSUserDefaults standardUserDefaults] boolForKey: @"BadgeDownloadRate"],
|
||||
badgeUpload = [[NSUserDefaults standardUserDefaults] boolForKey: @"BadgeUploadRate"];
|
||||
if (badgeDownload || badgeUpload)
|
||||
tr_torrentRates(fLib, badgeDownload ? &downloadRate : NULL, badgeUpload ? &uploadRate : NULL);
|
||||
tr_sessionGetSpeed(fLib, badgeDownload ? &downloadRate : NULL, badgeUpload ? &uploadRate : NULL);
|
||||
|
||||
//only update if the badged values change
|
||||
if ([(BadgeView *)[[NSApp dockTile] contentView] setRatesWithDownload: downloadRate upload: uploadRate])
|
||||
@@ -154,7 +154,7 @@
|
||||
NSString * downloadRateString = nil, * uploadRateString = nil;
|
||||
|
||||
float downloadRate, uploadRate;
|
||||
tr_torrentRates(fLib, &downloadRate, &uploadRate);
|
||||
tr_sessionGetSpeed(fLib, &downloadRate, &uploadRate);
|
||||
|
||||
if (checkDownload && downloadRate >= 0.1)
|
||||
downloadRateString = [NSString stringForSpeedAbbrev: downloadRate];
|
||||
|
||||
+1
-1
@@ -1447,7 +1447,7 @@ static void sleepCallback(void * controller, io_service_t y, natural_t messageTy
|
||||
{
|
||||
//set rates
|
||||
float downloadRate, uploadRate;
|
||||
tr_torrentRates(fLib, & downloadRate, & uploadRate);
|
||||
tr_sessionGetSpeed(fLib, & downloadRate, & uploadRate);
|
||||
|
||||
[fTotalDLField setStringValue: [NSString stringForSpeed: downloadRate]];
|
||||
[fTotalULField setStringValue: [NSString stringForSpeed: uploadRate]];
|
||||
|
||||
+1
-1
@@ -214,7 +214,7 @@ SpeedStats :: Pulse( tr_handle * handle )
|
||||
{
|
||||
// add a new record
|
||||
float allUp, allDown;
|
||||
tr_torrentRates( handle, &allDown, &allUp );
|
||||
tr_sessionGetSpeed( handle, &allDown, &allUp );
|
||||
Speed s;
|
||||
s.time = time( NULL );
|
||||
s.allUp = allUp;
|
||||
|
||||
+1
-1
@@ -469,7 +469,7 @@ MyFrame :: OnPulse(wxTimerEvent& WXUNUSED(event) )
|
||||
mySpeedStats->Pulse( handle );
|
||||
|
||||
float down, up;
|
||||
tr_torrentRates( handle, &down, &up );
|
||||
tr_sessionGetSpeed( handle, &down, &up );
|
||||
wxString xstr = _("Total DL: ");
|
||||
xstr += getReadableSpeed( down );
|
||||
SetStatusText( xstr, 1 );
|
||||
|
||||
Reference in New Issue
Block a user