summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKostyantyn Ovechko <fastinetserver@gmail.com>2010-07-28 04:14:15 +0300
committerKostyantyn Ovechko <fastinetserver@gmail.com>2010-07-28 04:14:15 +0300
commit2c1b29264dcb2acaacae5406028dcac7ded3ff6f (patch)
tree978e5c84eb043d57ff4d41ef87fc2a6efa5dc830
parentAdd BIND_LOCAL_PORT and BIND_LOCAL_PORT_RANGE options to network#.conf files (diff)
downloadidfetch-2c1b29264dcb2acaacae5406028dcac7ded3ff6f.tar.gz
idfetch-2c1b29264dcb2acaacae5406028dcac7ded3ff6f.tar.bz2
idfetch-2c1b29264dcb2acaacae5406028dcac7ded3ff6f.zip
Show network_type in tui.
-rw-r--r--segget/connection.cpp40
-rw-r--r--segget/tui.cpp64
-rw-r--r--segget/tui.h2
3 files changed, 34 insertions, 72 deletions
diff --git a/segget/connection.cpp b/segget/connection.cpp
index ec05269..02993b6 100644
--- a/segget/connection.cpp
+++ b/segget/connection.cpp
@@ -204,15 +204,37 @@ void Tconnection::inc_bytes_per_last_interval(ulong new_bytes_count){
void Tconnection::show_connection_progress(ulong time_diff){
try{
stats.total_bytes_per_last_interval+=bytes_per_last_interval;
- msg_segment_progress(
- segment->connection_num,
- network_num,
- segment->segment_num,
- segment->try_num,
- segment->downloaded_bytes,
- segment->segment_size,
- (bytes_per_last_interval*1000)/time_diff,
- (total_dld_bytes*1000)/time_left_from(start_time));
+ ulong speed=(bytes_per_last_interval*1000)/time_diff;
+ ulong avg_speed=(total_dld_bytes*1000)/time_left_from(start_time);
+ string eta_string;
+ if (speed==0){
+ eta_string=" ETA: inf";
+ }else{
+ eta_string=" ETA: "+secsToString((segment->segment_size-segment->downloaded_bytes)/speed);
+ }
+ string speed_str;
+ string avg_speed_str;
+ speed_str=" Speed: "+speedToString(speed);
+ avg_speed_str=" AVG speed: "+speedToString(avg_speed);
+ int percent=segment->downloaded_bytes*100/segment->segment_size;
+ string network_type_str;
+ switch (network_array[network_num].network_mode){
+ case MODE_REMOTE: network_type_str="REM"; break;
+ case MODE_PROXY_FETCHER: network_type_str="P-F"; break;
+ case MODE_LOCAL: network_type_str="LOC"; break;
+ case MODE_CORAL_CDN: network_type_str="CDN"; break;
+ }
+ string progress_text=field("[Net",network_num,1)
+ +":"+network_type_str+"]"
+ +field(" Segment:",segment->segment_num, 5)
+ +field(" Try:",segment->try_num,4)
+ +field(" Bytes:",segment->downloaded_bytes,7)
+ +field(" / ",segment->segment_size,7)
+ +field(" = ",percent,3)+"%"
+ +speed_str
+ +avg_speed_str
+ +eta_string;
+ msg_segment_progress(segment->connection_num, progress_text);
bytes_per_last_interval=0;
}catch(...){
error_log("Error in connection.cpp: show_connection_progress()");
diff --git a/segget/tui.cpp b/segget/tui.cpp
index 423547a..0d26e11 100644
--- a/segget/tui.cpp
+++ b/segget/tui.cpp
@@ -52,53 +52,14 @@ void msg(uint y, uint x, string msg_text){
// }
}
-void msg_segment_progress(uint connection_num, uint network_num, uint segment_num, uint try_num, ulong dld_bytes, ulong total_bytes, ulong speed, ulong avg_speed){
+void msg_segment_progress(uint connection_num, string progress_text){
try{
-
- string eta_string;
- if (speed==0){
- eta_string=" ETA: inf";
- }else{
- eta_string=" ETA: "+secsToString((total_bytes-dld_bytes)/speed);
- }
-
- string speed_str;
- string avg_speed_str;
-/*
- if (speed<1000)
- speed_str=field(" Speed:",speed,7)+" b/s";
- else
- speed_str=field(" Speed:",speed/1000,7)+" Kb/s";
-*/
-
- speed_str=" Speed: "+speedToString(speed);
-/*
- if (avg_speed<1000)
- avg_speed_str=field(" AVG",avg_speed,7)+" b/s";
- else
- avg_speed_str=field(" AVG",avg_speed/1000,7)+" Kb/s";
-*/
- avg_speed_str=" AVG speed: "+speedToString(avg_speed);
-
- int percent=dld_bytes*100/total_bytes;
-
-
msg(connection_num*CONNECTION_LINES,0,
- field("[",connection_num,2)+"]"
- +field(" Net",network_num,1)
- +field(" Segment:",segment_num, 5)
- +field(" Try:",try_num,4)
- +field(" Bytes:",dld_bytes,7)
- +field(" / ",total_bytes,7)
- +field(" = ",percent,3)+"%"
- +speed_str
- +avg_speed_str
- +eta_string);
+ field("[",connection_num,2)+"]"+progress_text);
}catch(...){
error_log_no_msg("Error in tui.cpp: msg_segment_progress()");
}
}
-
void msg_connecting(uint connection_num, uint distfile_num, uint segment_num, string msg_text){
try{
msg(connection_num*CONNECTION_LINES+1,0,"DF#"+toString(distfile_num)+" Seg#"+toString(segment_num)+" "+msg_text);
@@ -106,22 +67,6 @@ void msg_connecting(uint connection_num, uint distfile_num, uint segment_num, st
error_log_no_msg("Error in tui.cpp: msg_connecting()");
}
}
-/*
-void msg_status1(uint connection_num, uint segment_num, string msg_text){
- try{
- msg(connection_num*CONNECTION_LINES+2,0,"Seg#"+toString(segment_num)+" "+msg_text);
- }catch(...){
- error_log_no_msg("Error in tui.cpp: msg_status1()");
- }
-}
-void msg_status2(uint connection_num, string msg_text){
- try{
- msg(connection_num*CONNECTION_LINES+3,0,msg_text);
- }catch(...){
- error_log_no_msg("Error in tui.cpp: msg_status2()");
- }
-}
-*/
void msg_clean_connection(uint connection_num){
try{
@@ -129,11 +74,6 @@ void msg_clean_connection(uint connection_num){
msg(connection_num*CONNECTION_LINES+1,0,"");
msg(connection_num*CONNECTION_LINES+2,0,"");
msg(connection_num*CONNECTION_LINES+3,0,"");
-
-// msg(connection_num*CONNECTION_LINES,0," ");
-// msg(connection_num*CONNECTION_LINES+1,0," ");
-// msg(connection_num*CONNECTION_LINES+2,0," ");
-// msg(connection_num*CONNECTION_LINES+3,0," ");
}catch(...){
error_log_no_msg("Error in tui.cpp: msg_clean_connection()");
}
diff --git a/segget/tui.h b/segget/tui.h
index 079c568..8a3022b 100644
--- a/segget/tui.h
+++ b/segget/tui.h
@@ -51,7 +51,7 @@ extern uint log_lines_counter;
void msg_total(string msg_text);
void msg(uint y, uint x, string msg_text);
void msg_connecting(uint connection_num, uint distfile_num, uint segment_num, string msg_text);
-void msg_segment_progress(uint connection_num, uint network_num, uint segment_num, uint try_num, ulong dld_bytes, ulong total_bytes, ulong speed, ulong avg_speed);
+void msg_segment_progress(uint connection_num, string progress_text);
void msg_status1(uint connection_num, uint segment_num, string msg_text);
void msg_status2(uint connection_num, string msg_text);
void msg_clean_connection(uint connection_num);