summaryrefslogtreecommitdiffstats
path: root/tools/perf
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@intel.com>2019-02-22 09:27:23 +0200
committerArnaldo Carvalho de Melo <acme@redhat.com>2019-02-22 16:52:07 -0300
commit0bf0947a954f58517747ca215b3122b47ced3424 (patch)
tree4cb351372dad265f5a02944f3156ac52bb2b397e /tools/perf
parent0924cd687fe7bd4fdf81721c2420b65234b16357 (diff)
downloadlinux-0bf0947a954f58517747ca215b3122b47ced3424.tar.bz2
perf scripts python: exported-sql-viewer.py: Factor out ReportVars
Factor out ReportVars to provide a single container for information from report dialogs. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Jiri Olsa <jolsa@redhat.com> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf')
-rwxr-xr-xtools/perf/scripts/python/exported-sql-viewer.py37
1 files changed, 23 insertions, 14 deletions
diff --git a/tools/perf/scripts/python/exported-sql-viewer.py b/tools/perf/scripts/python/exported-sql-viewer.py
index d3ffb3e9d1fc..03428df8ddd5 100755
--- a/tools/perf/scripts/python/exported-sql-viewer.py
+++ b/tools/perf/scripts/python/exported-sql-viewer.py
@@ -1398,18 +1398,26 @@ class BranchModel(TreeModel):
def HasMoreRecords(self):
return self.more
+# Report Variables
+
+class ReportVars():
+
+ def __init__(self, where_clause = ""):
+ self.where_clause = where_clause
+
+ def UniqueId(self):
+ return str(self.where_clause)
+
# Branch window
class BranchWindow(QMdiSubWindow):
- def __init__(self, glb, event_id, name, where_clause, parent=None):
+ def __init__(self, glb, event_id, name, report_vars, parent=None):
super(BranchWindow, self).__init__(parent)
- model_name = "Branch Events " + str(event_id)
- if len(where_clause):
- model_name = where_clause + " " + model_name
+ model_name = "Branch Events " + str(event_id) + " " + report_vars.UniqueId()
- self.model = LookupCreateModel(model_name, lambda: BranchModel(glb, event_id, where_clause))
+ self.model = LookupCreateModel(model_name, lambda: BranchModel(glb, event_id, report_vars.where_clause))
self.view = QTreeView()
self.view.setUniformRowHeights(True)
@@ -1703,7 +1711,7 @@ class ReportDialogBase(QDialog):
self.glb = glb
self.name = ""
- self.where_clause = ""
+ self.report_vars = ReportVars()
self.setWindowTitle(title)
self.setMinimumWidth(600)
@@ -1742,6 +1750,7 @@ class ReportDialogBase(QDialog):
self.setLayout(self.vbox);
def Ok(self):
+ vars = self.report_vars
self.name = self.data_items[0].value
if not self.name:
self.ShowMessage("Report name is required")
@@ -1751,14 +1760,14 @@ class ReportDialogBase(QDialog):
return
for d in self.data_items[1:]:
if len(d.value):
- if len(self.where_clause):
- self.where_clause += " AND "
- self.where_clause += d.value
- if len(self.where_clause):
+ if len(vars.where_clause):
+ vars.where_clause += " AND "
+ vars.where_clause += d.value
+ if len(vars.where_clause):
if self.partial:
- self.where_clause = " AND ( " + self.where_clause + " ) "
+ vars.where_clause = " AND ( " + vars.where_clause + " ) "
else:
- self.where_clause = " WHERE " + self.where_clause + " "
+ vars.where_clause = " WHERE " + vars.where_clause + " "
else:
self.ShowMessage("No selection")
return
@@ -2383,13 +2392,13 @@ class MainWindow(QMainWindow):
CallGraphWindow(self.glb, self)
def NewBranchView(self, event_id):
- BranchWindow(self.glb, event_id, "", "", self)
+ BranchWindow(self.glb, event_id, "", ReportVars(), self)
def NewSelectedBranchView(self, event_id):
dialog = SelectedBranchDialog(self.glb, self)
ret = dialog.exec_()
if ret:
- BranchWindow(self.glb, event_id, dialog.name, dialog.where_clause, self)
+ BranchWindow(self.glb, event_id, dialog.name, dialog.report_vars, self)
def NewTableView(self, table_name):
TableWindow(self.glb, table_name, self)