From ad1d52fd9911114ad8c9748e808b55de4e16232b Mon Sep 17 00:00:00 2001
From: Tom Rondeau <trondeau@vt.edu>
Date: Tue, 18 Jun 2013 15:08:17 -0400
Subject: controlport: added support for complex data types.

Vectors of complex are still passed as interleaved. Single values can be passed as GNURadio::complex. ControlPort can translate these in GNU Radio to gr_complex; Python programs need to convert themselves. gr-ctrl-monitor updated to handle this.

multiply_const_cc block updated to export get and set of k value through ControlPort.
---
 gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

(limited to 'gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py')

diff --git a/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py b/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py
index 8597ca6497..4e9ef13133 100644
--- a/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py
+++ b/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py
@@ -23,6 +23,7 @@
 from gnuradio import gr
 from gnuradio import blocks
 from gnuradio import filter
+from gnuradio.ctrlport import GNURadio
 import sys, time
 
 try:
@@ -248,11 +249,11 @@ class GrDataPlotterF(GrDataPlotParent):
             
 
 class GrDataPlotterConst(GrDataPlotParent):
-    def __init__(self, name, rate, pmin=None, pmax=None):
+    def __init__(self, name, rate, pmin=None, pmax=None, stripchart=False):
         GrDataPlotParent.__init__(self, name, rate, pmin, pmax)
 
         self._datasize = gr.sizeof_gr_complex
-        self._stripchart = False
+        self._stripchart = stripchart
         self._iscomplex = True
 
         self._setup(1)
@@ -422,7 +423,11 @@ class GrDataPlotterValueTable:
         items = [];
         self.treeWidget.clear()
         for k, v in knobs.iteritems():
-            items.append(QtGui.QTreeWidgetItem([str(k), str(v.value),
+            val = v.value
+            if(type(val) == GNURadio.complex):
+                val = val.re + val.im*1j
+
+            items.append(QtGui.QTreeWidgetItem([str(k), str(val),
                                                 knobprops[k].units,
                                                 knobprops[k].description]))
         self.treeWidget.insertTopLevelItems(0, items)
-- 
cgit v1.2.3