Changeset 8623 in orxonox.OLD for trunk/src/lib/network/connection_monitor.cc
- Timestamp:
- Jun 20, 2006, 1:39:01 PM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lib/network/connection_monitor.cc
r8068 r8623 130 130 131 131 /** 132 * remove old packets 133 * @param packetHistory 134 * @param tick 135 */ 136 void ConnectionMonitor::removeOldPackets( std::map< int, int > & packetHistory, int tick ) 137 { 138 while ( packetHistory.begin()->first < tick - MSECS_TO_CALC_BWIDTH ) 139 packetHistory.erase( packetHistory.begin() ); 140 } 141 142 /** 132 143 * calculate bandwidth out of packethistory 133 144 * @param packetHistory packet history … … 135 146 * @return bandwidth in bytes/sec 136 147 */ 137 float ConnectionMonitor::calculateBandWidth( std::map< int, int > packetHistory, int tick ) 138 { 139 // delete old packets 140 while ( packetHistory.begin()->first < tick - MSECS_TO_CALC_BWIDTH ) 141 packetHistory.erase( packetHistory.begin() ); 148 float ConnectionMonitor::calculateBandWidth( std::map< int, int > & packetHistory, int tick ) 149 { 150 removeOldPackets( packetHistory, tick ); 142 151 143 152 float res = 0.0f; 144 153 #if 0 145 154 for ( std::map<int,int>::iterator it = packetHistory.begin(); it != packetHistory.end(); it++ ) 146 155 { … … 155 164 156 165 res *= 1000.0f; 157 166 #endif 167 168 for ( std::map<int,int>::iterator it = packetHistory.begin(); it != packetHistory.end(); it++ ) 169 { 170 res += it->second; 171 } 172 173 if ( packetHistory.size() <= 1 ) 174 res = 0.0f; 175 else 176 res /= (float)(tick - packetHistory.begin()->first); 177 178 res *= 1000.0f; 179 158 180 return res; 159 181 }
Note: See TracChangeset
for help on using the changeset viewer.