aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/pybootchartgui/pybootchartgui/parsing.py
diff options
context:
space:
mode:
authorPeter Kjellerstedt <peter.kjellerstedt@axis.com>2014-01-21 16:22:35 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-01-22 07:26:30 +0000
commitc6e88199ddf2c4ae243d42afc403d28ab56f00f0 (patch)
tree925b746fdae20a480935071a98c6c975c334aae4 /scripts/pybootchartgui/pybootchartgui/parsing.py
parent45565b24651ab502ae49dc49261dc3ad5634191f (diff)
downloadopenembedded-core-contrib-c6e88199ddf2c4ae243d42afc403d28ab56f00f0.tar.gz
pybootchartgui: Add option -T to allways use the full time
When --full-time (or -T) is used, the graph allways shows the full time regardless of which processes are currently shown. This is especially useful in combinationm with the -s flag when outputting to multiple files. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/pybootchartgui/pybootchartgui/parsing.py')
-rw-r--r--scripts/pybootchartgui/pybootchartgui/parsing.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/scripts/pybootchartgui/pybootchartgui/parsing.py b/scripts/pybootchartgui/pybootchartgui/parsing.py
index 1cb4466e6d..d423b9f77c 100644
--- a/scripts/pybootchartgui/pybootchartgui/parsing.py
+++ b/scripts/pybootchartgui/pybootchartgui/parsing.py
@@ -38,6 +38,8 @@ class Trace:
self.processes = {}
self.start = {}
self.end = {}
+ self.min = None
+ self.max = None
self.headers = None
self.disk_stats = None
self.ps_stats = None
@@ -55,6 +57,10 @@ class Trace:
if not self.valid():
raise ParseError("empty state: '%s' does not contain a valid bootchart" % ", ".join(paths))
+ if options.full_time:
+ self.min = min(self.start.keys())
+ self.max = max(self.end.keys())
+
return
# Turn that parsed information into something more useful
@@ -700,12 +706,12 @@ def parse_paths(writer, state, paths):
state = parse_file(writer, state, path)
return state
-def split_res(res, n):
+def split_res(res, options):
""" Split the res into n pieces """
res_list = []
- if n > 1:
+ if options.num > 1:
s_list = sorted(res.start.keys())
- frag_size = len(s_list) / float(n)
+ frag_size = len(s_list) / float(options.num)
# Need the top value
if frag_size > int(frag_size):
frag_size = int(frag_size + 1)
@@ -716,6 +722,9 @@ def split_res(res, n):
end = frag_size
while start < end:
state = Trace(None, [], None)
+ if options.full_time:
+ state.min = min(res.start.keys())
+ state.max = max(res.end.keys())
for i in range(start, end):
# Add this line for reference
#state.add_process(pn + ":" + task, start, end)