Added command line option for network debugging: --debug=network.

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/networking@9272 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
computerfreak97
2011-07-15 04:50:46 +00:00
parent 8094fdf92d
commit 122e716d74
5 changed files with 85 additions and 36 deletions

View File

@@ -670,10 +670,12 @@ void UserConfig::saveConfig()
} // saveConfig
bool UserConfigParams::logMemory() { return (m_verbosity&LOG_MEMORY) == LOG_MEMORY;}
bool UserConfigParams::logMemory () { return (m_verbosity&LOG_MEMORY) == LOG_MEMORY;}
bool UserConfigParams::logGUI () { return (m_verbosity&LOG_GUI) == LOG_GUI; }
bool UserConfigParams::logGUI () { return (m_verbosity&LOG_GUI) == LOG_GUI; }
bool UserConfigParams::logAddons() { return (m_verbosity&LOG_ADDONS) == LOG_ADDONS;}
bool UserConfigParams::logAddons () { return (m_verbosity&LOG_ADDONS) == LOG_ADDONS;}
bool UserConfigParams::logMisc () { return (m_verbosity&LOG_MISC) == LOG_MISC; }
bool UserConfigParams::logMisc () { return (m_verbosity&LOG_MISC) == LOG_MISC; }
bool UserConfigParams::logNetworking () { return (m_verbosity&LOG_NETWORKING) == LOG_NETWORKING; }

View File

@@ -512,20 +512,23 @@ namespace UserConfigParams
PARAM_PREFIX PtrVector<PlayerProfile> m_all_players;
/** Some constants to bitmask to enable various messages to be printed. */
enum { LOG_MEMORY = 0x0001,
LOG_GUI = 0x0002,
LOG_ADDONS = 0x0004,
LOG_MISC = 0x0008,
LOG_ALL = 0xffff };
enum { LOG_MEMORY = 0x0001,
LOG_GUI = 0x0002,
LOG_NETWORKING = 0x0003,
LOG_ADDONS = 0x0004,
LOG_MISC = 0x0008,
LOG_ALL = 0xffff };
/** Returns true if the user want additional messages for memory usage. */
bool logMemory();
bool logMemory ();
/** Returns true if the user want additional messages related to GUI. */
bool logGUI ();
bool logGUI ();
/** Returns true if the user want additional messages related to addons. */
bool logAddons();
bool logAddons ();
/** Returns true if the user want additional messages for general items. */
bool logMisc ();
bool logMisc ();
/** Returns true if the user wants additional messages for networking/ */
bool logNetworking ();
}

View File

@@ -327,6 +327,10 @@ int handleCmdLinePreliminary(int argc, char **argv)
{
UserConfigParams::m_verbosity |= UserConfigParams::LOG_MISC;
}
else if ( !strcmp(argv[i], "--debug=network") )
{
UserConfigParams::m_verbosity |= UserConfigParams::LOG_NETWORKING;
}
else if ( !strcmp(argv[i], "--debug=all") )
{
UserConfigParams::m_verbosity |= UserConfigParams::LOG_ALL;
@@ -737,11 +741,12 @@ int handleCmdLine(int argc, char **argv)
else if( !strcmp(argv[i], "--trackdir") && i+1<argc ) { i++; }
else if( !strcmp(argv[i], "--kartdir") && i+1<argc ) { i++; }
else if( !strcmp(argv[i], "--renderer") && i+1<argc ) { i++; }
else if( !strcmp(argv[i], "--debug=memory") ) {}
else if( !strcmp(argv[i], "--debug=addons") ) {}
else if( !strcmp(argv[i], "--debug=gui" ) ) {}
else if( !strcmp(argv[i], "--debug=misc" ) ) {}
else if( !strcmp(argv[i], "--debug=all" ) ) {}
else if( !strcmp(argv[i], "--debug=memory" ) ) {}
else if( !strcmp(argv[i], "--debug=addons" ) ) {}
else if( !strcmp(argv[i], "--debug=gui" ) ) {}
else if( !strcmp(argv[i], "--debug=misc" ) ) {}
else if( !strcmp(argv[i], "--debug=network" ) ) {}
else if( !strcmp(argv[i], "--debug=all" ) ) {}
else if( !strcmp(argv[i], "--screensize") || !strcmp(argv[i], "-s")) {i++;}
else if( !strcmp(argv[i], "--fullscreen") || !strcmp(argv[i], "-f")) {}
else if( !strcmp(argv[i], "--windowed") || !strcmp(argv[i], "-w")) {}

View File

@@ -127,12 +127,15 @@ void MainLoop::run()
network_manager->update(dt);
printf("Num Clients: %i\n",network_manager->getNumClients());
if (UserConfigParams::logNetworking())
{
printf("Num Clients: %i\n",network_manager->getNumClients());
if (network_manager->getNumClients() == 1) {
printf("beginRSG in main\n");
network_manager->beginReadySetGoBarrier();
}
if (network_manager->getNumClients() == 1) {
printf("beginRSG in main\n");
network_manager->beginReadySetGoBarrier();
}
}
if (World::getWorld()) // race is active if world exists
{

View File

@@ -76,7 +76,10 @@ NetworkManager::~NetworkManager()
// -----------------------------------------------------------------------------
bool NetworkManager::initServer()
{
printf("initServer\n");
if (UserConfigParams::logNetworking())
{
printf("initServer\n");
}
ENetAddress address;
address.host = ENET_HOST_ANY;
address.port = UserConfigParams::m_server_port;
@@ -107,8 +110,11 @@ bool NetworkManager::initServer()
*/
bool NetworkManager::initClient()
{
printf("initClient\n");
printf("Client attempting to connect to: %s:%d\n", UserConfigParams::m_server_address.c_str(), (int)UserConfigParams::m_server_port);
if (UserConfigParams::logNetworking())
{
printf("initClient\n");
printf("Client attempting to connect to: %s:%d\n", UserConfigParams::m_server_address.c_str(), (int)UserConfigParams::m_server_port);
}
m_host = enet_host_create (NULL /* create a client host */,
1 /* only allow 1 outgoing connection */,
0 /* channel limit */,
@@ -154,7 +160,10 @@ bool NetworkManager::initClient()
}
m_server = peer;
return true;
printf("Connection succeed!\n");
if (UserConfigParams::logNetworking())
{
printf("Connection succeed!\n");
}
} // initClient
// ----------------------------------------------------------------------------
@@ -197,7 +206,10 @@ void NetworkManager::disableNetworking()
// ----------------------------------------------------------------------------
void NetworkManager::handleNewConnection(ENetEvent *event)
{
printf("New connection! m_state %s connections!\n", (m_state==NS_ACCEPT_CONNECTIONS) ? "accepting" : "not accepting");
if (UserConfigParams::logNetworking())
{
printf("New connection! m_state %s connections!\n", (m_state==NS_ACCEPT_CONNECTIONS) ? "accepting" : "not accepting");
}
// Only accept while waiting for connections
if(m_state!=NS_ACCEPT_CONNECTIONS) return;
@@ -232,11 +244,17 @@ void NetworkManager::handleMessageAtServer(ENetEvent *event)
{
case NS_ACCEPT_CONNECTIONS:
{
printf("NS_ACCEPT_CONNECTIONS (handleMsgAtServer)!\n");
if (UserConfigParams::logNetworking())
{
printf("NS_ACCEPT_CONNECTIONS (handleMsgAtServer)!\n");
}
ConnectMessage m(event->packet);
m_client_names[(int)(long)event->peer->data] = m.getId();
m_num_clients++;
printf("m_num_clients: %i\n",m_num_clients);
if (UserConfigParams::logNetworking())
{
printf("m_num_clients: %i\n",m_num_clients);
}
return;
}
case NS_KART_CONFIRMED: // Fall through
@@ -283,7 +301,10 @@ void NetworkManager::handleMessageAtServer(ENetEvent *event)
}
case NS_READY_SET_GO_BARRIER:
{
printf("NS_R_S_G_BARRIER (handleMsgAtServer)\n");
if (UserConfigParams::logNetworking())
{
printf("NS_R_S_G_BARRIER (handleMsgAtServer)\n");
}
m_barrier_count ++;
if(m_barrier_count==(int)m_num_clients)
{
@@ -320,7 +341,10 @@ void NetworkManager::handleMessageAtClient(ENetEvent *event)
{
case NS_WAIT_FOR_AVAILABLE_CHARACTERS:
{
printf("Waiting for available characters (handleMsgAtClient)\n");
if (UserConfigParams::logNetworking())
{
printf("Waiting for available characters (handleMsgAtClient)\n");
}
CharacterInfoMessage m(event->packet);
// FIXME: handle list of available characters
m_state = NS_CHARACTER_SELECT;
@@ -328,7 +352,10 @@ void NetworkManager::handleMessageAtClient(ENetEvent *event)
}
case NS_CHARACTER_SELECT:
{
printf("Character Select (handleMsgAtClient)\n");
if (UserConfigParams::logNetworking())
{
printf("Character Select (handleMsgAtClient)\n");
}
CharacterConfirmMessage m(event->packet);
kart_properties_manager->selectKartName(m.getKartName());
// TODO - karts selection screen in networking
@@ -341,7 +368,10 @@ void NetworkManager::handleMessageAtClient(ENetEvent *event)
}
case NS_WAIT_FOR_KART_CONFIRMATION:
{
printf("Wait for Kart Conf (handleMsgAtClient)\n");
if (UserConfigParams::logNetworking())
{
printf("Wait for Kart Conf (handleMsgAtClient)\n");
}
CharacterConfirmMessage m(event->packet);
kart_properties_manager->selectKartName(m.getKartName());
@@ -445,7 +475,10 @@ void NetworkManager::update(float dt)
// ----------------------------------------------------------------------------
void NetworkManager::broadcastToClients(Message &m)
{
printf("broadcastToClients\n");
if (UserConfigParams::logNetworking())
{
printf("broadcastToClients\n");
}
enet_host_broadcast(m_host, 0, m.getPacket());
enet_host_flush(m_host);
} // broadcastToClients
@@ -453,7 +486,10 @@ void NetworkManager::broadcastToClients(Message &m)
// ----------------------------------------------------------------------------
void NetworkManager::sendToServer(Message &m)
{
printf("sendToServer");
if (UserConfigParams::logNetworking())
{
printf("sendToServer");
}
enet_peer_send(m_server, 0, m.getPacket());
enet_host_flush(m_host);
} // sendToServer