Browse Source

py2 to py3 and qt4 to qt5

gr-3.8
Clemens Richter 4 years ago
parent
commit
c8b87412f7
  1. 2
      python/chart.py
  2. 32
      python/rds_parser_table_qt.py
  3. 6
      python/rds_table_qt.py
  4. 3
      python/tmc_classes.py
  5. 6
      python/tmc_parser.py
  6. 2
      python/vector_cutter.py

2
python/chart.py

@ -2,7 +2,7 @@
# -*- coding: utf-8 -*-
from gnuradio import gr
from itertools import cycle
from PyQt4.Qt import *
from PyQt5.Qt import *
DEFAULT_COLORS = [0x3366cc, 0xdc3912, 0xff9900, 0x109618, 0x990099,
0x0099c6, 0xdd4477, 0x66aa00, 0xb82e2e, 0x316395,

32
python/rds_parser_table_qt.py

@ -22,26 +22,30 @@
from __future__ import print_function#print without newline print('.', end="")
from gnuradio import gr
import pmt,functools,csv,md5,collections,copy,sqlite3,atexit,time,re,sys
import pmt,functools,csv,collections,copy,sqlite3,atexit,time,re,sys,hashlib
#old imports: folium
from datetime import datetime
from datetime import timedelta
import multirds.chart as chart
from multirds.tmc_classes import language#supported: de, en (both partially)
from PyQt4 import Qt, QtCore, QtGui
from PyQt5 import Qt, QtCore, QtGui, QtWidgets
import pprint,code
pp = pprint.PrettyPrinter()
import cProfile, pstats, StringIO #for profiling
import cProfile, pstats #for profiling
from io import StringIO #py3
pr = cProfile.Profile()
#from threading import Timer#to periodically save DB
from PyQt4.QtCore import QObject, pyqtSignal
from PyQt5.QtCore import QObject, pyqtSignal
from bitstring import BitArray
class rds_parser_table_qt_Signals(QObject):
DataUpdateEvent = QtCore.pyqtSignal(dict)
def __init__(self, parent=None):
@ -127,18 +131,18 @@ class rds_parser_table_qt(gr.sync_block):#START
# (time text,PI text,rtp_string text)''')
reader = csv.reader(open(self.workdir+'RDS_ODA-AIDs_names_only.csv'),
delimiter=',', quotechar='"')
reader.next()#skip header
next(reader)#skip header
for row in reader:
self.ODA_application_names[int(row[0])]=row[1]
#read RT+ class name list:
reader = csv.reader(open(self.workdir+'RTplus_classnames.csv'),
delimiter=',', quotechar='"')
reader.next()#skip header
next(reader)#skip header
self.rtp_classnames=dict((int(rows[0]),rows[1]) for rows in reader)
#read TMC-event list
reader = csv.reader(open(self.workdir+'event-list_with_forecast_sort.csv'),
delimiter=',', quotechar='"')
reader.next()#skip header
next(reader)#skip header
self.ecl_dict=dict((int(rows[0]),rows[1:]) for rows in reader)
#Code,Text CEN-English,Text (German),Text (German) kein Quantifier,Text (Quantifier = 1),Text (Quantifier >1),N,Q,T,D,U,C,R ,Comment
#N:nature (blank): information, F:forecast, S:silent
@ -151,7 +155,7 @@ class rds_parser_table_qt(gr.sync_block):#START
#read update classes
reader = csv.reader(open(self.workdir+'tmc_update_class_names.csv'),
delimiter=',', quotechar='"')
reader.next()#skip header, "code(C),english,german"
next(reader)#skip header, "code(C),english,german"
if language=="de":
self.tmc_update_class_names=dict((int(rows[0]),rows[2])
for rows in reader)#german names
@ -161,7 +165,7 @@ class rds_parser_table_qt(gr.sync_block):#START
#read supplementary information code list
reader = csv.reader(open(self.workdir+'label6-supplementary-information-codes.csv'),
delimiter=',', quotechar='"')
reader.next()#skip header, "code,english,german"
next(reader)#skip header, "code,english,german"
if language=="de":
self.label6_suppl_info=dict((int(rows[0]),rows[2])
for rows in reader)#german
@ -171,7 +175,7 @@ class rds_parser_table_qt(gr.sync_block):#START
#read PTY list
f=open(self.workdir+'pty-list.csv')
reader = csv.reader(f, delimiter=',', quotechar='"')
reader.next()#skip header
next(reader)#skip header
self.pty_dict=dict((int(rows[0]),unicode(rows[1],errors='ignore'))
for rows in reader)
f.close()
@ -759,7 +763,7 @@ class rds_parser_table_qt(gr.sync_block):#START
})#this gnuradio instance doesnt seem to be able to convert from numpy.int64 to pmt
self.message_port_pub(pmt.intern('tmc_raw'), send_pmt)
#~ tmc_hash=md5.new(str([PI,tmc_x,tmc_y,tmc_z])).hexdigest()
#~ tmc_hash=hashlib.md5(str([PI,tmc_x,tmc_y,tmc_z])).hexdigest()
tmc_T=tmc_x>>4 #0:TMC-message 1:tuning info/service provider name
#~ tmc_F=int((tmc_x>>3)&0x1) #identifies the message as a Single Group (F = 1) or Multi Group (F = 0)
#~ Y15=int(tmc_y>>15)
@ -1056,14 +1060,14 @@ class rds_parser_table_qt(gr.sync_block):#START
segmentcolor,text[start:end],
textcolor,text[end:])
return formatted_text
class rds_parser_table_qt_Widget(QtGui.QWidget):
class rds_parser_table_qt_Widget(QtWidgets.QWidget):
def __init__(self, signals,label,tableobj):
#print("gui initializing")self.tableobj.RDS_data["D3A2"]
self.signals = signals
self.tableobj=tableobj
self.signals.DataUpdateEvent.connect(self.display_data)
""" Creates the QT Range widget """
QtGui.QWidget.__init__(self)
QtWidgets.QWidget.__init__(self)
layout = Qt.QVBoxLayout()
#self.label = Qt.QLabel(label)
#layout.addWidget(self.label)#title of table disabled to save space
@ -1157,7 +1161,7 @@ class rds_parser_table_qt_Widget(QtGui.QWidget):
right_button.clicked.connect(functools.partial(self.setAudio2, row=rowPosition,audio_channel=2))
button_layout.addWidget(right_button)
cellWidget = QtGui.QWidget()
cellWidget = QtWidgets.QWidget()
cellWidget.setLayout(button_layout)
button_col=3
self.table.setCellWidget(rowPosition,button_col,cellWidget)

6
python/rds_table_qt.py

@ -22,11 +22,11 @@
import numpy
from gnuradio import gr
import code,pmt,functools
from PyQt4 import Qt, QtCore, QtGui
from PyQt5 import Qt, QtCore, QtGui, QtWidgets
import pprint
pp = pprint.PrettyPrinter()
from PyQt4.QtCore import QObject, pyqtSignal
from PyQt5.QtCore import QObject, pyqtSignal
class rds_table_qt_Signals(QObject):
DataUpdateEvent = QtCore.pyqtSignal(dict)
@ -89,7 +89,7 @@ class rds_table_qt(gr.sync_block):
#def handle_msg(self, msg):
# self.signals.DataUpdateEvent.emit({'string':pmt.to_python(msg)})
# print(msg)
class rds_table_qt_Widget(QtGui.QWidget):
class rds_table_qt_Widget(QtWidgets.QWidget):
def __init__(self, signals,label):
print("gui initializing")
self.signals = signals

3
python/tmc_classes.py

@ -31,7 +31,8 @@
from bitstring import BitArray
import copy,csv,code
import hashlib,os,time
import cPickle as pickle#faster for python2
#import cPickle as pickle#faster for python2
import pickle
from collections import namedtuple

6
python/tmc_parser.py

@ -23,7 +23,7 @@ from __future__ import print_function#print without newline print('.', end="")
import numpy
from gnuradio import gr
import pmt
from PyQt4 import Qt, QtCore, QtGui
from PyQt5 import Qt, QtCore, QtGui, QtWidgets
import code,time,csv,sqlite3,atexit
from bitstring import BitArray
from multirds.tmc_classes import tmc_dict,tmc_message,language,lcl
@ -290,7 +290,7 @@ def print_dbg(message,end="\n"):
dbg=False
if dbg:
print(message,end=end)
class tmc_parser_Widget(QtGui.QWidget):
class tmc_parser_Widget(QtWidgets.QWidget):
def print_tmc_msg(self,tmc_msg):
self.parser.dataLock.acquire(1)
@ -361,7 +361,7 @@ class tmc_parser_Widget(QtGui.QWidget):
def update_showInvalid(self):
self.showInvalid=self.GUI_showInvalid.isChecked()
def __init__(self, parser,maxheight):
QtGui.QWidget.__init__(self)
QtWidgets.QWidget.__init__(self)
layout = Qt.QVBoxLayout()
self.logMutex=QtCore.QSemaphore(1)
self.setLayout(layout)

2
python/vector_cutter.py

@ -21,7 +21,6 @@
import numpy as np
from gnuradio import gr
import code
class vector_cutter(gr.sync_block):
"""
@ -87,7 +86,6 @@ class vector_cutter(gr.sync_block):
else:
out[i]=out_cut*self.mask
#out = in0[512:1536]
#code.interact(local=locals())
#out[0] = in0[0][512:1536]
#out[1] = in0[1][512:1536]
return len(output_items[0])

Loading…
Cancel
Save