Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Nov 27, 2007, 11:30:17 PM (16 years ago)
Author:
nicolasc
Message:

cleaned up network, builds with CML

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/merger/src/network/ConnectionManager.cc

    r278 r285  
    22// C++ Interface: ConnectionManager
    33//
    4 // Description: The Class ConnectionManager manages the servers conenctions to the clients. 
    5 // each connection is provided by a new process. communication between master process and 
     4// Description: The Class ConnectionManager manages the servers conenctions to the clients.
     5// each connection is provided by a new process. communication between master process and
    66// connection processes is provided by ...
    77//
     
    1010//
    1111
    12 #include "network/ConnectionManager.h"
     12#include "ConnectionManager.h"
    1313
    1414namespace network{
    15  
     15
    1616  boost::thread_group network_threads;
    17  
     17
    1818  void test(){
    1919    return;
    2020  }
    21  
     21
    2222  ConnectionManager::ConnectionManager(){
    2323    quit=false;
     
    2626    bindAddress.port = NETWORK_PORT;
    2727  }
    28  
     28
    2929  ConnectionManager::ConnectionManager(int port, std::string address){
    3030    quit=false;
     
    3333    bindAddress.port = NETWORK_PORT;
    3434  }
    35  
     35
    3636  ConnectionManager::ConnectionManager(int port, const char *address){
    3737    quit=false;
     
    4040    bindAddress.port = NETWORK_PORT;
    4141  }
    42  
     42
    4343  ENetPacket *ConnectionManager::getPacket(ENetAddress &address){
    4444    if(!buffer.isEmpty())
     
    4747        return NULL;
    4848  }
    49  
     49
    5050  bool ConnectionManager::queueEmpty(){
    5151    return buffer.isEmpty();
    5252  }
    53  
     53
    5454  void ConnectionManager::createListener(){
    5555    network_threads.create_thread(boost::bind(boost::mem_fn(&ConnectionManager::receiverThread), this));
     
    5757    return;
    5858  }
    59  
     59
    6060  bool ConnectionManager::quitListener(){
    6161    quit=true;
     
    6363    return true;
    6464  }
    65  
     65
    6666  bool ConnectionManager::addPacket(ENetPacket *packet, ENetPeer *peer){
    6767    if(client=NULL)
     
    7777    return true;
    7878  }
    79  
     79
    8080  bool ConnectionManager::addPacket(ENetPacket *packet, int ID){
    8181    if(client==NULL)
     
    9292      return true;
    9393  }
    94  
     94
    9595  bool ConnectionManager::addPacketAll(ENetPacket *packet){
    9696    ClientList *temp=client;
     
    101101    return true;
    102102  }
    103  
     103
    104104  bool ConnectionManager::sendPackets(ENetEvent *event){
    105105    if(server==NULL)
     
    107107    if(enet_host_service(server, event, NETWORK_SEND_WAIT)>=0)
    108108      return true;
    109     else 
    110       return false;
    111   }
    112  
     109    else
     110      return false;
     111  }
     112
    113113  void ConnectionManager::receiverThread(){
    114114    // what about some error-handling here ?
     
    120120      // add some error handling here ==========================
    121121      quit=true;
    122    
     122
    123123    while(!quit){
    124124      if(enet_host_service(server, &event, NETWORK_WAIT_TIMEOUT)<0){
     
    144144    enet_host_destroy(server);
    145145  }
    146  
     146
    147147  bool ConnectionManager::processData(ENetEvent *event){
    148148    // just add packet to the buffer
     
    150150    return buffer.push(event);
    151151  }
    152  
     152
    153153  bool ConnectionManager::clientDisconnect(ENetPeer *peer){
    154154    ClientList *temp=client;
     
    177177    return false;
    178178  }
    179  
     179
    180180  bool ConnectionManager::addClient(ENetEvent *event){
    181    
     181
    182182    // first client?
    183183    if(client==NULL){
     
    202202    return true;
    203203  }
    204  
    205  
     204
     205
    206206}
Note: See TracChangeset for help on using the changeset viewer.