summaryrefslogtreecommitdiff
path: root/gr-wxgui/python
diff options
context:
space:
mode:
authorTom Rondeau <trondeau@vt.edu>2013-03-18 15:55:38 -0400
committerTom Rondeau <trondeau@vt.edu>2013-03-18 16:47:15 -0400
commitc856fe0106bcbcad871452014af2eb459a32e916 (patch)
tree4b7c3fa9cc5064edc4a36ca0de6c0d15c6a385ac /gr-wxgui/python
parent1b10a63a952612858a5e44321b6babf1d0232b52 (diff)
wxgui: Moved oscope and histogram bases into wxgui.
This makes gr-wxgui more like a normal component that generates a libgnuradio-wxgui.so file.
Diffstat (limited to 'gr-wxgui/python')
-rw-r--r--gr-wxgui/python/__init__.py2
-rw-r--r--gr-wxgui/python/histosink_gl.py3
-rw-r--r--gr-wxgui/python/scope_window.py23
-rw-r--r--gr-wxgui/python/scopesink_gl.py13
-rw-r--r--gr-wxgui/python/scopesink_nongl.py11
-rw-r--r--gr-wxgui/python/waterfallsink_nongl.py4
6 files changed, 32 insertions, 24 deletions
diff --git a/gr-wxgui/python/__init__.py b/gr-wxgui/python/__init__.py
index 07dbaf1620..dd81647fe9 100644
--- a/gr-wxgui/python/__init__.py
+++ b/gr-wxgui/python/__init__.py
@@ -22,3 +22,5 @@
'''
Provides a GUI interface using the Wx backend.
'''
+
+from wxgui_swig import *
diff --git a/gr-wxgui/python/histosink_gl.py b/gr-wxgui/python/histosink_gl.py
index 6fa7539aa7..2126d63191 100644
--- a/gr-wxgui/python/histosink_gl.py
+++ b/gr-wxgui/python/histosink_gl.py
@@ -27,6 +27,7 @@ import common
from gnuradio import gr
from gnuradio import analog
from gnuradio import blocks
+from gnuradio import wxgui
from pubsub import pubsub
from constants import *
@@ -55,7 +56,7 @@ class histo_sink_f(gr.hier_block2, common.wxgui_hb):
)
#blocks
msgq = gr.msg_queue(2)
- histo = gr.histo_sink_f(msgq)
+ histo = wxgui.histo_sink_f(msgq)
histo.set_num_bins(num_bins)
histo.set_frame_size(frame_size)
#controller
diff --git a/gr-wxgui/python/scope_window.py b/gr-wxgui/python/scope_window.py
index 306e1757f1..357998bf95 100644
--- a/gr-wxgui/python/scope_window.py
+++ b/gr-wxgui/python/scope_window.py
@@ -30,6 +30,7 @@ import time
import pubsub
from constants import *
from gnuradio import gr #for gr.prefs, trigger modes
+from gnuradio import wxgui
import forms
##################################################
@@ -38,21 +39,21 @@ import forms
DEFAULT_FRAME_RATE = gr.prefs().get_long('wxgui', 'scope_rate', 30)
PERSIST_ALPHA_MIN_EXP, PERSIST_ALPHA_MAX_EXP = -2, 0
SLIDER_STEPS = 100
-DEFAULT_TRIG_MODE = gr.prefs().get_long('wxgui', 'trig_mode', gr.gr_TRIG_MODE_AUTO)
+DEFAULT_TRIG_MODE = gr.prefs().get_long('wxgui', 'trig_mode', wxgui.TRIG_MODE_AUTO)
DEFAULT_WIN_SIZE = (600, 300)
COUPLING_MODES = (
('DC', False),
('AC', True),
)
TRIGGER_MODES = (
- ('Freerun', gr.gr_TRIG_MODE_FREE),
- ('Auto', gr.gr_TRIG_MODE_AUTO),
- ('Normal', gr.gr_TRIG_MODE_NORM),
- ('Stripchart', gr.gr_TRIG_MODE_STRIPCHART),
+ ('Freerun', wxgui.TRIG_MODE_FREE),
+ ('Auto', wxgui.TRIG_MODE_AUTO),
+ ('Normal', wxgui.TRIG_MODE_NORM),
+ ('Stripchart', wxgui.TRIG_MODE_STRIPCHART),
)
TRIGGER_SLOPES = (
- ('Pos +', gr.gr_TRIG_SLOPE_POS),
- ('Neg -', gr.gr_TRIG_SLOPE_NEG),
+ ('Pos +', wxgui.TRIG_SLOPE_POS),
+ ('Neg -', wxgui.TRIG_SLOPE_NEG),
)
CHANNEL_COLOR_SPECS = (
(0.3, 0.3, 1.0),
@@ -281,7 +282,7 @@ class control_panel(wx.Panel):
)
def disable_all(trigger_mode):
for widget in (trigger_slope_chooser, trigger_channel_chooser, trigger_level_buttons, trigger_level_button):
- widget.Disable(trigger_mode == gr.gr_TRIG_MODE_FREE)
+ widget.Disable(trigger_mode == wxgui.TRIG_MODE_FREE)
parent.subscribe(TRIGGER_MODE_KEY, disable_all)
disable_all(parent[TRIGGER_MODE_KEY])
##################################################
@@ -480,12 +481,12 @@ class scope_window(wx.Panel, pubsub.pubsub):
self[TRIGGER_CHANNEL_KEY] = 0
self[TRIGGER_MODE_KEY] = trig_mode
- self[TRIGGER_SLOPE_KEY] = gr.gr_TRIG_SLOPE_POS
+ self[TRIGGER_SLOPE_KEY] = wxgui.TRIG_SLOPE_POS
self[T_FRAC_OFF_KEY] = 0.5
self[USE_PERSISTENCE_KEY] = use_persistence
self[PERSIST_ALPHA_KEY] = persist_alpha
- if self[TRIGGER_MODE_KEY] == gr.gr_TRIG_MODE_STRIPCHART:
+ if self[TRIGGER_MODE_KEY] == wxgui.TRIG_MODE_STRIPCHART:
self[T_FRAC_OFF_KEY] = 0.0
for i in range(num_inputs):
@@ -639,7 +640,7 @@ class scope_window(wx.Panel, pubsub.pubsub):
if self[TRIGGER_LEVEL_KEY] < self.get_y_min():
self[TRIGGER_LEVEL_KEY] = self.get_y_min(); return
#disable the trigger channel
- if not self[TRIGGER_SHOW_KEY] or self[XY_MODE_KEY] or self[TRIGGER_MODE_KEY] == gr.gr_TRIG_MODE_FREE:
+ if not self[TRIGGER_SHOW_KEY] or self[XY_MODE_KEY] or self[TRIGGER_MODE_KEY] == wxgui.TRIG_MODE_FREE:
self.plotter.clear_waveform(channel='Trig')
else: #show trigger channel
trigger_level = self[TRIGGER_LEVEL_KEY]
diff --git a/gr-wxgui/python/scopesink_gl.py b/gr-wxgui/python/scopesink_gl.py
index 21d7169026..b2d5670c77 100644
--- a/gr-wxgui/python/scopesink_gl.py
+++ b/gr-wxgui/python/scopesink_gl.py
@@ -26,6 +26,8 @@ import scope_window
import common
from gnuradio import gr, filter
from gnuradio import blocks
+from gnuradio import analog
+from gnuradio import wxgui
from pubsub import pubsub
from constants import *
import math
@@ -101,7 +103,7 @@ class _scope_sink_base(gr.hier_block2, common.wxgui_hb):
)
#scope
msgq = gr.msg_queue(2)
- scope = gr.oscope_sink_f(sample_rate, msgq)
+ scope = wxgui.oscope_sink_f(sample_rate, msgq)
#controller
self.controller = pubsub()
self.controller.subscribe(SAMPLE_RATE_KEY, scope.set_sample_rate)
@@ -207,12 +209,13 @@ class test_top_block (stdgui2.std_top_block):
# Generate a complex sinusoid
ampl=1.0e3
- self.src0 = analog.sig_source_c(input_rate, gr.GR_SIN_WAVE,
+ self.src0 = analog.sig_source_c(input_rate, analog.GR_SIN_WAVE,
25.1e3*input_rate/default_input_rate, ampl)
- self.noise = analog.sig_source_c (input_rate, analog.GR_SIN_WAVE,
- 11.1*25.1e3*input_rate/default_input_rate, ampl/10)
+ self.noise = analog.sig_source_c(input_rate, analog.GR_SIN_WAVE,
+ 11.1*25.1e3*input_rate/default_input_rate,
+ ampl/10)
#self.noise = analog.noise_source_c(analog.GR_GAUSSIAN, ampl/10)
- self.combine = analog.add_cc()
+ self.combine = blocks.add_cc()
# We add this throttle block so that this demo doesn't suck down
# all the CPU available. You normally wouldn't use it...
diff --git a/gr-wxgui/python/scopesink_nongl.py b/gr-wxgui/python/scopesink_nongl.py
index 2c5ff9278a..28a473860f 100644
--- a/gr-wxgui/python/scopesink_nongl.py
+++ b/gr-wxgui/python/scopesink_nongl.py
@@ -23,6 +23,7 @@
from gnuradio import gr, gru, eng_notation
from gnuradio import analog
from gnuradio import blocks
+from gnuradio import wxgui
from gnuradio.wxgui import stdgui2
import wx
import gnuradio.wxgui.plot as plot
@@ -43,7 +44,7 @@ class scope_sink_f(gr.hier_block2):
gr.io_signature(0,0,0))
msgq = gr.msg_queue(2) # message queue that holds at most 2 messages
- self.guts = gr.oscope_sink_f(sample_rate, msgq)
+ self.guts = wxgui.oscope_sink_f(sample_rate, msgq)
for i in range(num_inputs):
self.connect((self, i), (self.guts, i))
@@ -64,7 +65,7 @@ class scope_sink_c(gr.hier_block2):
gr.io_signature(0,0,0))
msgq = gr.msg_queue(2) # message queue that holds at most 2 messages
- self.guts = gr.oscope_sink_f(sample_rate, msgq)
+ self.guts = wxgui.oscope_sink_f(sample_rate, msgq)
for i in range(num_inputs):
c2f = blocks.complex_to_float()
self.connect((self, i), c2f)
@@ -425,11 +426,11 @@ class scope_window(wx.Panel):
sink = self.info.scopesink
s = evt.GetString()
if s == 'Norm':
- sink.set_trigger_mode(gr.gr_TRIG_MODE_NORM)
+ sink.set_trigger_mode(wxgui.TRIG_MODE_NORM)
elif s == 'Auto':
- sink.set_trigger_mode(gr.gr_TRIG_MODE_AUTO)
+ sink.set_trigger_mode(wxgui.TRIG_MODE_AUTO)
elif s == 'Free':
- sink.set_trigger_mode(gr.gr_TRIG_MODE_FREE)
+ sink.set_trigger_mode(wxgui.TRIG_MODE_FREE)
else:
assert 0, "Bad trig_mode_choice string"
diff --git a/gr-wxgui/python/waterfallsink_nongl.py b/gr-wxgui/python/waterfallsink_nongl.py
index 37b8281927..bd93a84ab7 100644
--- a/gr-wxgui/python/waterfallsink_nongl.py
+++ b/gr-wxgui/python/waterfallsink_nongl.py
@@ -89,7 +89,7 @@ class waterfall_sink_f(gr.hier_block2, waterfall_sink_base):
fft_rate=fft_rate,
average=average, avg_alpha=avg_alpha, title=title)
- self.s2p = gr.serial_to_parallel(gr.sizeof_float, self.fft_size)
+ self.s2p = blocks.stream_to_vector(gr.sizeof_float, self.fft_size)
self.one_in_n = blocks.keep_one_in_n(gr.sizeof_float * self.fft_size,
max(1, int(self.sample_rate/self.fft_size/self.fft_rate)))
@@ -120,7 +120,7 @@ class waterfall_sink_c(gr.hier_block2, waterfall_sink_base):
fft_rate=fft_rate,
average=average, avg_alpha=avg_alpha, title=title)
- self.s2p = gr.serial_to_parallel(gr.sizeof_gr_complex, self.fft_size)
+ self.s2p = blocks.stream_to_vector(gr.sizeof_gr_complex, self.fft_size)
self.one_in_n = blocks.keep_one_in_n(gr.sizeof_gr_complex * self.fft_size,
max(1, int(self.sample_rate/self.fft_size/self.fft_rate)))