private static void print_stats(LBMContext ctx, int nsrcs, string transport_type, LBMObjectRecyclerBase recycler) { int n; if (transport_type == "LBT-RM") { n = (int)(inet_aton(ctx.getAttributeValue("transport_lbtrm_multicast_address_high")) - inet_aton(ctx.getAttributeValue("transport_lbtrm_multicast_address_low"))) + 1; } else if (transport_type == "LBT-IPC") { n = Convert.ToInt32(ctx.getAttributeValue("transport_lbtipc_id_high")) - Convert.ToInt32(ctx.getAttributeValue("transport_lbtipc_id_low")) + 1; } else { n = Convert.ToInt32(ctx.getAttributeValue("transport_tcp_maximum_ports")); } if (nsrcs < n) { n = nsrcs; } LBMSourceStatistics stats = ctx.getSourceStatistics(n); for (int i = 0; i < stats.size(); i++) { switch (stats.type(i)) { case LBM.TRANSPORT_STAT_TCP: System.Console.Out.WriteLine("TCP, source " + stats.source(i) + " buffered " + stats.bytesBuffered(i) + ", clients " + stats.numberOfClients(i)); break; case LBM.TRANSPORT_STAT_LBTRU: System.Console.Out.WriteLine("LBT-RU, source " + stats.source(i) + " sent " + stats.messagesSent(i) + "/" + stats.bytesSent(i) + ", naks " + stats.naksReceived(i) + "/" + stats.nakPacketsReceived(i) + ", ignored " + stats.naksIgnored(i) + "/" + stats.naksIgnoredRetransmitDelay(i) + ", shed " + stats.naksShed(i) + ", rxs " + stats.retransmissionsSent(i) + ", clients " + stats.numberOfClients(i)); break; case LBM.TRANSPORT_STAT_LBTRM: System.Console.Out.WriteLine("LBT-RM, source " + stats.source(i) + " sent " + stats.messagesSent(i) + "/" + stats.bytesSent(i) + ", txw " + stats.transmissionWindowMessages(i) + "/" + stats.transmissionWindowBytes(i) + ", naks " + stats.naksReceived(i) + "/" + stats.nakPacketsReceived(i) + ", ignored " + stats.naksIgnored(i) + "/" + stats.naksIgnoredRetransmitDelay(i) + ", shed " + stats.naksShed(i) + ", rxs " + stats.retransmissionsSent(i) + ", rctl " + stats.messagesQueued(i) + "/" + stats.retransmissionsQueued(i)); break; case LBM.TRANSPORT_STAT_LBTIPC: System.Console.Out.WriteLine("LBT-IPC, source " + stats.source(i) + " clients " + stats.numberOfClients(i) + ", sent " + stats.messagesSent(i) + "/" + stats.bytesSent(i)); break; case LBM.TRANSPORT_STAT_LBTSMX: System.Console.Out.WriteLine("LBT-SMX, source " + stats.source(i) + " clients " + stats.numberOfClients(i) + ", sent " + stats.messagesSent(i) + "/" + stats.bytesSent(i)); break; case LBM.TRANSPORT_STAT_LBTRDMA: System.Console.Out.WriteLine("LBT-RDMA, source " + stats.source(i) + " clients " + stats.numberOfClients(i) + ", sent " + stats.messagesSent(i) + "/" + stats.bytesSent(i)); break; } } recycler.doneWithSourceStatistics(stats); System.Console.Out.Flush(); }