00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039 #include "OvlVis.h"
00040
00041 namespace ariba {
00042 namespace utility {
00043
00044 use_logging_cpp(OvlVis);
00045
00046 OvlVis::OvlVis() {
00047 }
00048
00049 OvlVis::~OvlVis(){
00050 }
00051
00052 void OvlVis::sendMessage( const string msg, NETWORK_ID nid ) {
00053
00054 sendSocket( msg );
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077 }
00078
00079
00080
00081
00082
00083 void OvlVis::visCreate(
00084 NETWORK_ID network,
00085 NodeID& node,
00086 string nodename,
00087 string info
00088 ){
00089
00090 ostringstream out;
00091
00092 out << "VisMsgCreate" << ";"
00093 << Helper::ultos(network) << ";"
00094 << node.toString() << ";"
00095 << nodename << ";"
00096 << "" << ";"
00097 << "" << ";"
00098 << "" << ";"
00099 << "0" << ";"
00100 << info << std::endl;
00101
00102 sendMessage( out.str(), network );
00103 }
00104
00105 void OvlVis::visChangeStatus(
00106 NETWORK_ID network,
00107 NodeID& node,
00108 bool enable,
00109 string info
00110 ){
00111
00112 ostringstream out;
00113
00114 out << "VisMsgChangeStatus" << ";"
00115 << Helper::ultos(network) << ";"
00116 << node.toString() << ";"
00117 << (enable ? "1" : "0") << ";"
00118 << info << std::endl;
00119
00120 sendMessage( out.str(), network );
00121 }
00122
00123 void OvlVis::visConnect(
00124 NETWORK_ID network,
00125 NodeID& srcnode,
00126 NodeID& destnode,
00127 string info
00128 ){
00129
00130
00131
00132
00133 if( networkLinks.exists( network, NodePair(srcnode,destnode) )) return;
00134
00135 ostringstream out;
00136 unsigned long edgekey = networkLinks.insert( network, NodePair(srcnode,destnode) );
00137
00138 out << "VisMsgConnect" << ";"
00139 << Helper::ultos(network) << ";"
00140 << edgekey << ";"
00141 << srcnode.toString() << ";"
00142 << destnode.toString() << ";"
00143 << "0" << ";"
00144 << info << std::endl;
00145
00146 sendMessage( out.str(), network );
00147 }
00148
00149 void OvlVis::visDisconnect(
00150 NETWORK_ID network,
00151 NodeID& srcnode,
00152 NodeID& destnode,
00153 string info
00154 ){
00155
00156 if( !networkLinks.exists(network, NodePair(srcnode, destnode)) ) return;
00157
00158 unsigned long edgekey = networkLinks.get( network, NodePair(srcnode, destnode) );
00159 networkLinks.remove( network, NodePair(srcnode, destnode) );
00160
00161 ostringstream out;
00162 out << "VisMsgDisconnect" << ";"
00163 << Helper::ultos(network) << ";"
00164 << Helper::ultos(edgekey) << ";"
00165 << info << std::endl;
00166
00167 sendMessage( out.str(), network );
00168 }
00169
00170 void OvlVis::visFailedConnect(
00171 NETWORK_ID network,
00172 NodeID& srcnode,
00173 NodeID& destnode,
00174 string info
00175 ){
00176
00177 ostringstream out;
00178
00179 out << "VisMsgFailedConnect" << ";"
00180 << Helper::ultos(network) << ";"
00181 << srcnode.toString() << ";"
00182 << destnode.toString() << ";"
00183 << info << std::endl;
00184
00185 sendMessage( out.str(), network );
00186 }
00187
00188 void OvlVis::visShutdown(
00189 NETWORK_ID network,
00190 NodeID& node,
00191 string info
00192 ){
00193
00194 ostringstream out;
00195
00196 out << "VisMsgShutdown" << ";"
00197 << Helper::ultos(network) << ";"
00198 << node.toString() << ";"
00199 << info << std::endl;
00200
00201 sendMessage( out.str(), network );
00202 }
00203
00204
00205
00206
00207
00208 void OvlVis::visChangeNodeColor (
00209 NETWORK_ID network,
00210 NodeID& node,
00211 unsigned char r,
00212 unsigned char g,
00213 unsigned char b
00214 ){
00215
00216 ostringstream out;
00217
00218 out << "VisMsgChangeNodeColor" << ";"
00219 << Helper::ultos(network) << ";"
00220 << node.toString() << ";"
00221 << ariba::utility::Helper::ultos(r) << ";"
00222 << ariba::utility::Helper::ultos(g) << ";"
00223 << ariba::utility::Helper::ultos(b) << std::endl;
00224
00225 sendMessage( out.str(), network );
00226 }
00227
00228 void OvlVis::visChangeNodeColor (
00229 NETWORK_ID network,
00230 NodeID& node,
00231 NODE_COLORS color
00232 ){
00233
00234 unsigned char r = 0;
00235 unsigned char g = 0;
00236 unsigned char b = 0;
00237
00238 switch( color ) {
00239 case NODE_COLORS_GREY: r = 128; g = 128; b = 128; break;
00240 case NODE_COLORS_GREEN: r = 0; g = 200; b = 0; break;
00241 case NODE_COLORS_RED: r = 255; g = 0; b = 0; break;
00242 }
00243
00244 visChangeNodeColor( network, node, r, g, b );
00245 }
00246
00247 void OvlVis::visChangeNodeIcon (
00248 NETWORK_ID network,
00249 NodeID& node,
00250 ICON_ID icon
00251 ){
00252
00253 ostringstream out;
00254
00255 out << "VisMsgChangeNodeIcon" << ";"
00256 << Helper::ultos(network) << ";"
00257 << node.toString() << ";"
00258 << Helper::ultos((unsigned int)icon) << std::endl;
00259
00260 sendMessage( out.str(), network );
00261 }
00262
00263 void OvlVis::visShowNodeLabel (
00264 NETWORK_ID network,
00265 NodeID& node,
00266 string label
00267 ){
00268
00269 ostringstream out;
00270
00271 out << "VisMsgShowNodeLabel" << ";"
00272 << Helper::ultos(network) << ";"
00273 << node.toString() << ";"
00274 << label << std::endl;
00275
00276 sendMessage( out.str(), network );
00277 }
00278
00279 void OvlVis::visDeleteNodeLabel (
00280 NETWORK_ID network,
00281 NodeID& node
00282 ){
00283
00284 ostringstream out;
00285
00286 out << "VisMsgDeleteNodeLable" << ";"
00287 << Helper::ultos(network) << ";"
00288 << node.toString() << std::endl;
00289
00290 sendMessage( out.str(), network );
00291 }
00292
00293 void OvlVis::visShowNodeBubble (
00294 NETWORK_ID network,
00295 NodeID& node,
00296 string label
00297 ){
00298
00299 unsigned long bubbleKey = nodeBubbles.insert( network, node );
00300 ostringstream out;
00301
00302 out << "VisMsgShowNodeBubble" << ";"
00303 << Helper::ultos(network) << ";"
00304 << Helper::ultos(bubbleKey) << ";"
00305 << node.toString() << ";"
00306 << label << std::endl;
00307
00308 sendMessage( out.str(), network );
00309 }
00310
00311
00312 void OvlVis::visDeleteNodeBubble (
00313 NETWORK_ID network,
00314 NodeID& node
00315 ){
00316
00317 if( !nodeBubbles.exists(network, node)) return;
00318
00319 unsigned long bubbleID = nodeBubbles.get( network, node );
00320 nodeBubbles.remove( network, node );
00321
00322 ostringstream out;
00323
00324 out << "VisMsgDeleteBubble" << ";"
00325 << Helper::ultos(network) << ";"
00326 << Helper::ultos(bubbleID) << std::endl;
00327
00328 sendMessage( out.str(), network );
00329 }
00330
00331 void OvlVis::visShowShiftedNodeIcon (
00332 NETWORK_ID network,
00333 NodeID& node,
00334 ICON_ID iconID,
00335 unsigned int timeout
00336 ){
00337
00338 unsigned long iconKey = shiftedNodeIcons.insert( network, node );
00339
00340 ostringstream out;
00341
00342 out << "VisMsgShowNodeIcon" << ";"
00343 << Helper::ultos(network) << ";"
00344 << Helper::ultos(iconKey) << ";"
00345 << node.toString() << ";"
00346 << Helper::ultos(iconID) << std::endl;
00347
00348 sendMessage( out.str(), network );
00349
00350 if( timeout > 0 ){
00351 TimedoutIcon* obj = new TimedoutIcon( network, node, timeout );
00352 obj->startIcon();
00353 }
00354 }
00355
00356 void OvlVis::visDeleteShiftedNodeIcon (
00357 NETWORK_ID network,
00358 NodeID& node
00359 ){
00360
00361 if( !shiftedNodeIcons.exists(network, node) )return;
00362
00363 unsigned long iconKey = shiftedNodeIcons.get( network, node );
00364 shiftedNodeIcons.remove( network, node );
00365
00366 ostringstream out;
00367
00368 out << "VisMsgDeleteIcon" << ";"
00369 << Helper::ultos(network) << ";"
00370 << Helper::ultos(iconKey) << std::endl;
00371
00372 sendMessage( out.str(), network );
00373 }
00374
00375
00376
00377
00378
00379 void OvlVis::visChangeLinkWidth (
00380 NETWORK_ID network,
00381 NodeID& srcnode,
00382 NodeID& destnode,
00383 unsigned int width
00384 ){
00385
00386 unsigned long edgekey = networkLinks.get( network, NodePair(srcnode, destnode) );
00387
00388 ostringstream out;
00389 out << "VisMsgChangeLinkWidth" << ";"
00390 << Helper::ultos(network) << ";"
00391 << Helper::ultos(edgekey) << ";"
00392 << Helper::ultos(width) << std::endl;
00393
00394 sendMessage( out.str(), network );
00395 }
00396
00397 void OvlVis::visChangeLinkColor (
00398 NETWORK_ID network,
00399 NodeID& srcnode,
00400 NodeID& destnode,
00401 unsigned char r,
00402 unsigned char g,
00403 unsigned char b
00404 ){
00405
00406 ostringstream out;
00407 unsigned long edgekey = networkLinks.get( network, NodePair(srcnode, destnode) );
00408
00409 out << "VisMsgChangeLinkColor" << ";"
00410 << Helper::ultos(network) << ";"
00411 << Helper::ultos(edgekey) << ";"
00412 << Helper::ultos(r) << ";"
00413 << Helper::ultos(g) << ";"
00414 << Helper::ultos(b) << std::endl;
00415
00416 sendMessage( out.str(), network );
00417 }
00418
00419 void OvlVis::visChangeLinkColor (
00420 NETWORK_ID network,
00421 NodeID& srcnode,
00422 NodeID& destnode,
00423 NODE_COLORS color
00424 ){
00425
00426 unsigned char r = 0;
00427 unsigned char g = 0;
00428 unsigned char b = 0;
00429
00430 switch( color ) {
00431 case NODE_COLORS_GREY: r = 128; g = 128; b = 128; break;
00432 case NODE_COLORS_GREEN: r = 0; g = 200; b = 0; break;
00433 case NODE_COLORS_RED: r = 255; g = 0; b = 0; break;
00434 }
00435
00436 visChangeLinkColor( network, srcnode, destnode, r, g, b );
00437 }
00438
00439 void OvlVis::visShowLinkLabel (
00440 NETWORK_ID network,
00441 NodeID& srcnode,
00442 NodeID& destnode,
00443 string label
00444 ){
00445
00446 ostringstream out;
00447 unsigned long edgekey = networkLinks.get( network, NodePair(srcnode, destnode) );
00448
00449 out << "VisMsgShowLinkLabel" << ";"
00450 << Helper::ultos(network) << ";"
00451 << Helper::ultos(edgekey) << ";"
00452 << label << std::endl;
00453
00454 sendMessage( out.str(), network );
00455 }
00456
00457 void OvlVis::visDeleteLinkLabel (
00458 NETWORK_ID network,
00459 NodeID& srcnode,
00460 NodeID& destnode
00461 ){
00462
00463 if( !networkLinks.exists(network, NodePair(srcnode, destnode))) return;
00464
00465 unsigned long edgekey = networkLinks.get( network, NodePair(srcnode, destnode) );
00466 ostringstream out;
00467
00468 out << "VisMsgDeleteLinkLabel" << ";"
00469 << Helper::ultos(network) << ";"
00470 << Helper::ultos(edgekey) << std::endl;
00471
00472 sendMessage( out.str(), network );
00473 }
00474
00475 void OvlVis::visShowOnLinkIcon (
00476 NETWORK_ID network,
00477 NodeID& srcnode,
00478 NodeID& destnode,
00479 ICON_ID iconID
00480 ){
00481
00482 unsigned long iconKey = onLinkIcons.insert(network, NodePair(srcnode, destnode));
00483 ostringstream out;
00484
00485 out << "VisMsgShowLinkIcon" << ";"
00486 << Helper::ultos(network) << ";"
00487 << Helper::ultos(iconKey) << ";"
00488 << srcnode.toString() << ";"
00489 << destnode.toString() << ";"
00490 << Helper::ultos(iconID) << std::endl;
00491
00492 sendMessage( out.str(), network );
00493 }
00494
00495 void OvlVis::visDeleteOnLinkIcon (
00496 NETWORK_ID network,
00497 NodeID& srcnode,
00498 NodeID& destnode
00499 ){
00500
00501 if( !onLinkIcons.exists(network, NodePair(srcnode, destnode))) return;
00502
00503 unsigned long iconKey = onLinkIcons.get( network, NodePair(srcnode, destnode) );
00504 onLinkIcons.remove( network, NodePair(srcnode, destnode) );
00505
00506 ostringstream out;
00507
00508 out << "VisMsgDeleteIcon" << ";"
00509 << Helper::ultos(network) << ";"
00510 << Helper::ultos(iconKey) << std::endl;
00511
00512 sendMessage( out.str(), network );
00513 }
00514
00515 void OvlVis::visShowLinkBubble (
00516 NETWORK_ID network,
00517 NodeID& srcnode,
00518 NodeID& destnode,
00519 string label
00520 ){
00521
00522 ostringstream out;
00523 unsigned long bubble = linkBubbles.insert( network, NodePair(srcnode, destnode) );
00524
00525 out << "VisMsgShowLinkBubble" << ";"
00526 << Helper::ultos(network) << ";"
00527 << Helper::ultos(bubble) << ";"
00528 << srcnode.toString() << ";"
00529 << destnode.toString() << ";"
00530 << label << std::endl;
00531
00532 sendMessage( out.str(), network );
00533 }
00534
00535 void OvlVis::visDeleteLinkBubble (
00536 NETWORK_ID network,
00537 NodeID& srcnode,
00538 NodeID& destnode
00539 ){
00540
00541 if( !linkBubbles.exists(network, NodePair(srcnode, destnode))) return;
00542
00543 ostringstream out;
00544 unsigned long bubble = linkBubbles.get( network, NodePair(srcnode, destnode) );
00545 linkBubbles.remove( network, NodePair(srcnode, destnode) );
00546
00547 out << "VisMsgDeleteBubble" << ";"
00548 << Helper::ultos(network) << ";"
00549 << Helper::ultos(bubble) << std::endl;
00550
00551 sendMessage( out.str(), network );
00552 }
00553
00554
00555
00556
00557
00558 void OvlVis::visSendMessage (
00559 NETWORK_ID network,
00560 NodeID& startnode,
00561 NodeID& endnode
00562 ){
00563
00564 ostringstream out;
00565
00566 out << "VisMsgSendMessage" << ";"
00567 << Helper::ultos(network) << ";"
00568 << startnode.toString() << ";"
00569 << endnode.toString() << std::endl;
00570
00571 sendMessage( out.str(), network );
00572 }
00573
00574
00575
00576
00577
00578 void OvlVis::visCLIOInitMeasurement(
00579 NETWORK_ID network,
00580 unsigned long edgekey,
00581 NodeID& srcnode,
00582 NodeID& destnode,
00583 string info
00584 ){
00585
00586 ostringstream out;
00587
00588 out << "VisMsgCLIOInitMeasurement" << ";"
00589 << Helper::ultos(network) << ";"
00590 << Helper::ultos(edgekey) << ";"
00591 << srcnode.toString() << ";"
00592 << destnode.toString() << ";"
00593 << info << std::endl;
00594
00595 sendMessage( out.str(), network );
00596 }
00597
00598 void OvlVis::visCLIOEndMeasurement(
00599 NETWORK_ID network,
00600 unsigned long edgekey,
00601 NodeID& srcnode,
00602 NodeID& destnode,
00603 string info,
00604 string value,
00605 string unit
00606 ){
00607
00608 ostringstream out;
00609
00610 out << "VisMsgCLIOEndMeasurement" << ";"
00611 << Helper::ultos(network) << ";"
00612 << Helper::ultos(edgekey) << ";"
00613 << srcnode.toString() << ";"
00614 << destnode.toString() << ";"
00615 << info << ";"
00616 << value << ";"
00617 << unit << std::endl;
00618
00619 sendMessage( out.str(), network );
00620 }
00621
00622 }}