Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 8068 in orxonox.OLD for trunk/src/lib/network/network_stream.cc


Ignore:
Timestamp:
Jun 1, 2006, 2:28:16 PM (18 years ago)
Author:
patrick
Message:

trunk: merged the network branche back to trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/lib/network/network_stream.cc

    r7954 r8068  
    177177void NetworkStream::processData()
    178178{
     179  int tick = SDL_GetTicks();
     180 
    179181  currentState++;
    180182 
     
    207209  // order of up/downstream is important!!!!
    208210  // don't change it
    209   handleDownstream();
    210   handleUpstream();
     211  handleDownstream( tick );
     212  handleUpstream( tick );
    211213
    212214}
     
    277279      PRINTF(0)("Client is gone: %d (%s)\n", it->second.userId, reason.c_str());
    278280     
    279       assert(false);
     281      //assert(false);
    280282
    281283      it->second.socket->disconnectServer();
     
    391393 * handle upstream network traffic
    392394 */
    393 void NetworkStream::handleUpstream( )
     395void NetworkStream::handleUpstream( int tick )
    394396{
    395397  int offset;
    396398  int n;
    397399 
    398   for ( PeerList::iterator peer = peers.begin(); peer != peers.end(); peer++ )
     400  for ( PeerList::reverse_iterator peer = peers.rbegin(); peer != peers.rend(); peer++ )
    399401  {
    400402    offset = INTSIZE; //make already space for length
     
    496498      writeToNewDict( buf, offset );
    497499   
    498     peer->second.connectionMonitor->processUnzippedOutgoingPacket( buf, offset, currentState );
    499     peer->second.connectionMonitor->processZippedOutgoingPacket( compBuf, compLength, currentState );
     500    peer->second.connectionMonitor->processUnzippedOutgoingPacket( tick, buf, offset, currentState );
     501    peer->second.connectionMonitor->processZippedOutgoingPacket( tick, compBuf, compLength, currentState );
    500502   
    501503    //NETPRINTF(n)("send packet: %d userId = %d\n", offset, peer->second.userId);
     
    506508 * handle downstream network traffic
    507509 */
    508 void NetworkStream::handleDownstream( )
     510void NetworkStream::handleDownstream( int tick )
    509511{
    510512  int offset = 0;
     
    527529    while ( 0 < (compLength = peer->second.socket->readPacket( compBuf, UDP_PACKET_SIZE )) )
    528530    {
    529       //TODO tell monitor about zipped packet. because dropped packets dont count to bandwidth
     531      peer->second.connectionMonitor->processZippedIncomingPacket( tick, compBuf, compLength );
     532     
    530533      //PRINTF(0)("GGGGGOOOOOOOOOOTTTTTTTT: %d\n", compLength);
    531534      packetLength = Zip::getInstance()->unZip( compBuf, compLength, buf, UDP_PACKET_SIZE );
     
    547550      //NETPRINTF(n)("ackedstate: %d\n", ackedState);
    548551      offset = 4*INTSIZE;
     552     
     553      peer->second.connectionMonitor->processUnzippedIncomingPacket( tick, buf, offset, state, ackedState );
    549554
    550555      //NETPRINTF(n)("got packet: %d, %d\n", length, packetLength);
     
    672677      }
    673678     
    674       peer->second.connectionMonitor->processZippedIncomingPacket( compBuf, compLength, state, ackedState );
    675       peer->second.connectionMonitor->processUnzippedIncomingPacket( buf, offset, state, ackedState );
    676    
    677679      assert( peer->second.lastAckedState <= ackedState );
    678680      peer->second.lastAckedState = ackedState;
Note: See TracChangeset for help on using the changeset viewer.