summaryrefslogtreecommitdiff
path: root/extra/usb_power/stats_manager.py
diff options
context:
space:
mode:
Diffstat (limited to 'extra/usb_power/stats_manager.py')
-rw-r--r--extra/usb_power/stats_manager.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/extra/usb_power/stats_manager.py b/extra/usb_power/stats_manager.py
index 02f984f097..8e25c74a42 100644
--- a/extra/usb_power/stats_manager.py
+++ b/extra/usb_power/stats_manager.py
@@ -6,6 +6,7 @@
from __future__ import print_function
import collections
+import json
import numpy
import os
@@ -114,6 +115,24 @@ class StatsManager(object):
with open(fname, 'w') as f:
f.write(summary_str)
+ def SaveSummaryJSON(self, directory, fname='summary.json'):
+ """Save summary (only MEAN) into a JSON file.
+
+ Args:
+ directory: directory to save the JSON summary in.
+ fname: filename to save summary under.
+ """
+ data = {
+ domain: self._summary[domain]['mean']
+ for domain in sorted(self._summary.keys())
+ if not domain.startswith(NOSHOW_PREFIX)
+ }
+ if not os.path.exists(directory):
+ os.makedirs(directory)
+ fname = os.path.join(directory, fname)
+ with open(fname, 'w') as f:
+ json.dump(data, f)
+
def GetRawData(self):
"""Getter for all raw_data."""
return self._data