improved network simulator, added display for message propagation and selective debug output

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7274 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2014-04-13 19:27:50 +00:00
parent 50fcd401b1
commit 5be7910cf5
7 changed files with 130 additions and 207 deletions

View file

@ -34,6 +34,11 @@ void NetworkSimulatorGUI::updateSelectedNode(int node_id)
_turtle_router_statistics->setTurtleRouter( turtle ) ;
_global_router_statistics->setGlobalRouter( grouter ) ;
// make only the selected node to display grouter info
for(uint32_t i=0;i<_viewer->network().n_nodes();++i)
_viewer->network().node(i).global_router_service()->setDebugEnabled(i==node_id) ;
std::cerr << "Selected objects: turtle=" << std::hex << turtle << ", grouter=" << grouter << std::dec << std::endl;
}

View file

@ -126,6 +126,20 @@ void NetworkViewer::draw()
if(tunnel_nodes.find(i) != tunnel_nodes.end() && r==0.8f && g==0.8f && b==0.8f)
r = 0.9f, g=0.4f,b=0.2f ;
std::vector<RsGRouter::GRouterRoutingCacheInfo> infos ;
_network.node(i).global_router_service()->getRoutingCacheInfo(infos) ;
if(infos.size() == 1)
switch(infos[0].status)
{
case 1: r=1 ; g=0.5; b=0.1 ; break ;
case 2: r=0.4; g=0.5; b=0.4 ; break ;
case 3: r=0.2; g=0.2; b=0.7 ; break ;
case 4: r=0.6; g=0.1; b=0.2 ; break ;
default:
r=0.2; g=0.2; b=0.2 ; break ;
}
glColor3f(r,g,b) ;
glVertex2f(_node_coords[i].x, _node_coords[i].y) ;

View file

@ -35,7 +35,7 @@ class PeerNode
// Turtle-related methods
//
const RsTurtle *turtle_service() const { return _turtle ; }
const RsGRouter *global_router_service() const { return _grouter ; }
p3GRouter *global_router_service() const { return _grouter ; }
void manageFileHash(const RsFileHash& hash) ;
void provideFileHash(const RsFileHash& hash) ;