summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
diff options
context:
space:
mode:
authorTim O'Shea <tim.oshea753@gmail.com>2013-06-04 14:24:23 -0400
committerTim O'Shea <tim.oshea753@gmail.com>2013-06-05 14:20:12 -0400
commit30789282a32fcfe1e2253c5e76327cfe0b695385 (patch)
tree2a3618dd8debe9ef8a62a2ff054b67a23fd35875 /gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
parent8c5d3f8b4d2b84bb214e7f7bd6b3c0d3c60df1db (diff)
runtime: adding clock-type selection drop down to gr-perf-monitorx tool
Diffstat (limited to 'gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx')
-rwxr-xr-xgnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx36
1 files changed, 36 insertions, 0 deletions
diff --git a/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx b/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
index 54d617b683..47456f2733 100755
--- a/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
+++ b/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
@@ -446,6 +446,21 @@ class DataTableRuntimes(DataTable):
class MForm(QtGui.QWidget):
def update(self):
try:
+ try:
+ # update current clock type
+ self.prevent_clock_change = True;
+ kl1 = None;
+ if(self.clockKey == None):
+ kl1 = self.radio.getRe([".*perfcounter_clock"])
+ else:
+ kl1 = self.radio.get([self.clockKey]);
+ self.clockKey = kl1.keys()[0];
+ self.currClock = kl1[self.clockKey].value;
+ self.clockSelIdx = self.clocks.values().index(self.currClock);
+ self.clockSel.setCurrentIndex(self.clockSelIdx);
+ self.prevent_clock_change = False;
+ except:
+ print "WARNING: Failed to get current clock setting!"
nodes = self.G.nodes();
@@ -525,6 +540,18 @@ class MForm(QtGui.QWidget):
def stat_changed(self, index):
self._statistic = str(self.stattype.currentText())
+ def update_clock(self, clkidx):
+ if(self.prevent_clock_change):
+ return;
+ idx = self.clockSel.currentIndex();
+ clk = self.clocks.values()[idx]
+ print "UPDATE CLOCK!!! %d -> %d"%(idx,clk);
+ k = self.radio.get([self.clockKey]);
+ k[self.clockKey].value = clk;
+ km = {};
+ km[self.clockKey] = k[self.clockKey];
+ self.radio.set(km);
+
def __init__(self, radio=None, port=None, uid=0, parent=None):
super(MForm, self).__init__()
@@ -562,6 +589,15 @@ class MForm(QtGui.QWidget):
self.bptBut.setDefaultAction(self.bptAct);
self.ctlBox.addWidget(self.bptBut);
+ self.prevent_clock_change = True;
+ self.clockKey = None;
+ self.clocks = {"MONOTONIC":1, "THREAD":3};
+ self.clockSel = QtGui.QComboBox(self);
+ map(lambda x: self.clockSel.addItem(x), self.clocks.keys());
+ self.ctlBox.addWidget(self.clockSel);
+ self.clockSel.currentIndexChanged.connect(self.update_clock);
+ self.prevent_clock_change = False;
+
self._statistic = "Instantaneous"
self._statistics_table = {"Instantaneous": "",
"Average": "avg ",