[Orxonox-commit 3555] r8241 - code/branches/masterserver2/src/libraries/network
smerkli at orxonox.net
smerkli at orxonox.net
Thu Apr 14 15:43:42 CEST 2011
Author: smerkli
Date: 2011-04-14 15:43:41 +0200 (Thu, 14 Apr 2011)
New Revision: 8241
Modified:
code/branches/masterserver2/src/libraries/network/MasterServer.cc
code/branches/masterserver2/src/libraries/network/MasterServer.h
Log:
Generic witty commit comment
Modified: code/branches/masterserver2/src/libraries/network/MasterServer.cc
===================================================================
--- code/branches/masterserver2/src/libraries/network/MasterServer.cc 2011-04-14 12:33:59 UTC (rev 8240)
+++ code/branches/masterserver2/src/libraries/network/MasterServer.cc 2011-04-14 13:43:41 UTC (rev 8241)
@@ -28,11 +28,40 @@
#include "MasterServer.h"
#include "util/ScopedSingletonManager.h"
+#include "core/command/ConsoleCommand.h"
#include "core/CoreIncludes.h"
#include "core/CorePrereqs.h"
namespace orxonox
{
+ /* commands for the terminal interface */
+ SetConsoleCommand( "ms-listservers", &MasterServer::listServers );
+
+ MasterServer *MasterServer::instance = NULL;
+
+ /* command: list servers */
+ void
+ MasterServer::listServers( void )
+ {
+ /* get an iterator */
+ std::list<ServerListElem>::iterator i;
+
+ /* print list header */
+ COUT(0) << "List of connected servers" << std::endl;
+
+ /* loop through list elements */
+ for( i = MasterServer::getInstance()->mainlist.serverlist.begin();
+ i != MasterServer::getInstance()->mainlist.serverlist.end(); ++i )
+ {
+ COUT(0) << " " << (*i).ServerInfo.getServerIP() << std::endl;
+ }
+
+ /* display end of list */
+ COUT(0) << MasterServer::getInstance()->mainlist.serverlist.size() <<
+ " servers connected." << std::endl;
+ }
+
+
/* helpers */
static void
helper_output_debug( ENetEvent *event, char *addrconv )
@@ -331,6 +360,9 @@
/***** INITIALIZE GAME SERVER AND PEER LISTS *****/
this->peers = new PeerList();
+ /* set pointer to this instance */
+ MasterServer::setInstance( this );
+
/* tell people we're now initialized */
COUT(0) << "MasterServer initialized, waiting for connections.\n";
}
@@ -342,7 +374,7 @@
/* terminate all networking connections */
enet_host_destroy( this->server );
- /* free all used memory */
+ /* TODO free all used memory */
/* clear the list of connected game servers */
/* clear the list of connected game clients */
}
Modified: code/branches/masterserver2/src/libraries/network/MasterServer.h
===================================================================
--- code/branches/masterserver2/src/libraries/network/MasterServer.h 2011-04-14 12:33:59 UTC (rev 8240)
+++ code/branches/masterserver2/src/libraries/network/MasterServer.h 2011-04-14 13:43:41 UTC (rev 8241)
@@ -60,6 +60,16 @@
/* main routine */
int run();
+ /* static pointer for commands */
+ static MasterServer *instance;
+ static MasterServer *getInstance()
+ { return instance; }
+ static void setInstance( MasterServer *setto )
+ { instance = setto; }
+
+ /* functions for commands */
+ static void listServers( void );
+
private:
/* methods */
int eventConnect( ENetEvent *event );
More information about the Orxonox-commit
mailing list