diff --git a/src/stats.py b/src/stats.py --- a/src/stats.py +++ b/src/stats.py @@ -1,31 +1,39 @@ class Stats: - received=0 - sent=0 - exchangedNodes=0 - transferredBlocks=0 + def __init__(self): + self.received=0 + self.sent=0 + self.exchangedNodes=0 + self.transferredBlocks=0 + +stats=Stats() def logReceived(data): - Stats.received+=len(data) + stats.received+=len(data) def logSent(data): - Stats.sent+=len(data) + stats.sent+=len(data) def logExchangedNode(k=1): - Stats.exchangedNodes+=k + stats.exchangedNodes+=k def logTransferredBlock(): - Stats.transferredBlocks+=1 + stats.transferredBlocks+=1 + + +def reset(): + global stats + stats=Stats() def report(): return """received {rf} ({r:,} B) sent {sf} ({s:,} B) exchanged {nodes:,} hash tree nodes -transferred {blocks:,} blocks""".format(rf=formatBytes(Stats.received), r=Stats.received, sf=formatBytes(Stats.sent), s=Stats.sent, nodes=Stats.exchangedNodes, blocks=Stats.transferredBlocks) +transferred {blocks:,} blocks""".format(rf=formatBytes(stats.received), r=stats.received, sf=formatBytes(stats.sent), s=stats.sent, nodes=stats.exchangedNodes, blocks=stats.transferredBlocks) def formatBytes(x):