commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] [gnuradio] 01/01: Merge branch 'next' into python3


From: git
Subject: [Commit-gnuradio] [gnuradio] 01/01: Merge branch 'next' into python3
Date: Fri, 17 Mar 2017 05:38:09 +0000 (UTC)

This is an automated email from the git hooks/post-receive script.

jcorgan pushed a commit to branch python3
in repository gnuradio.

commit ffa0822abf7a30f9b44b3fb046cb6d723c4d8c37
Merge: 00e775f b675ccc
Author: Johnathan Corgan <address@hidden>
Date:   Thu Mar 16 22:27:04 2017 -0700

    Merge branch 'next' into python3
    
    Conflicts:
        gr-blocks/swig/blocks_swig.py.in
        gr-uhd/apps/uhd_app.py

 CMakeLists.txt                                     |   6 +-
 cmake/Modules/FindSWIG.cmake                       |   4 +-
 cmake/Modules/UseSWIG.cmake                        |   4 +-
 docs/doxygen/Doxyfile.in                           |   3 +-
 docs/doxygen/other/LICENSE.html                    | 490 +++++++++++++++++++++
 docs/doxygen/other/build_guide.dox                 |   9 +
 docs/doxygen/other/components.dox                  |   9 +
 docs/doxygen/other/ctrlport.dox                    |   9 +
 docs/doxygen/other/group_defs.dox                  |   9 +
 docs/doxygen/other/license.dox                     |  15 +
 docs/doxygen/other/logger.dox                      |   9 +
 docs/doxygen/other/main_page.dox                   |  22 +-
 docs/doxygen/other/metadata.dox                    |   9 +
 docs/doxygen/other/msg_passing.dox                 |   9 +
 docs/doxygen/other/ofdm.dox                        |   9 +
 docs/doxygen/other/oot_config.dox                  |   9 +
 docs/doxygen/other/operating_fg.dox                |   9 +
 docs/doxygen/other/packet_txrx.dox                 |   9 +
 docs/doxygen/other/perf_counters.dox               |   9 +
 docs/doxygen/other/pfb_intro.dox                   |   9 +
 docs/doxygen/other/pmt.dox                         |   9 +
 docs/doxygen/other/prefs.dox                       |   9 +
 docs/doxygen/other/python_blocks.dox               |  11 +-
 docs/doxygen/other/stream_tags.dox                 |   9 +
 docs/doxygen/other/tagged_stream_blocks.dox        |   9 +
 docs/doxygen/other/thread_affinity.dox             |   9 +
 docs/doxygen/other/usage.dox                       |   9 +
 docs/doxygen/other/volk_guide.dox                  |   9 +
 gnuradio-runtime/CMakeLists.txt                    |  10 -
 gnuradio-runtime/lib/controlport/CMakeLists.txt    |  28 +-
 .../python/gnuradio/ctrlport/CMakeLists.txt        |  34 +-
 gr-blocks/swig/CMakeLists.txt                      |   5 +
 gr-blocks/swig/blocks_swig.py.in                   |   5 +
 gr-blocks/swig/blocks_swig0.i                      |   1 +
 gr-blocks/swig/blocks_swig1.i                      |  46 +-
 gr-blocks/swig/blocks_swig10.i                     |  90 ++++
 gr-blocks/swig/blocks_swig2.i                      |  75 ----
 gr-blocks/swig/blocks_swig3.i                      |  81 ----
 gr-blocks/swig/blocks_swig4.i                      |  36 --
 gr-blocks/swig/blocks_swig5.i                      |  72 +--
 gr-blocks/swig/{blocks_swig5.i => blocks_swig6.i}  |  61 +--
 gr-blocks/swig/{blocks_swig1.i => blocks_swig7.i}  |  83 +---
 gr-blocks/swig/blocks_swig8.i                      |  93 ++++
 gr-blocks/swig/blocks_swig9.i                      |  93 ++++
 gr-dtv/lib/dvbt2/dvbt2_modulator_bc_impl.cc        | 357 +--------------
 gr-fec/include/gnuradio/fec/polar_decoder_common.h |   6 +-
 gr-uhd/apps/uhd_app.py                             |  74 ++--
 gr-uhd/apps/uhd_fft                                |   5 +-
 gr-uhd/lib/usrp_source_impl.cc                     |  10 +-
 gr-uhd/lib/usrp_source_impl.h                      |   1 -
 .../modtool/gr-newmod/cmake/Modules/UseSWIG.cmake  |   4 +-
 grc/gui/Actions.py                                 |  10 +
 grc/gui/Application.py                             |  27 ++
 grc/gui/Bars.py                                    |   2 +
 volk                                               |   2 +-
 55 files changed, 1175 insertions(+), 871 deletions(-)

diff --cc gr-blocks/swig/blocks_swig.py.in
index 387f0a5,7682f17..71ab4da
--- a/gr-blocks/swig/blocks_swig.py.in
+++ b/gr-blocks/swig/blocks_swig.py.in
@@@ -19,11 -19,14 +19,16 @@@
  # Boston, MA 02110-1301, USA.
  #
  
 -from blocks_swig0 import *
 -from blocks_swig1 import *
 -from blocks_swig2 import *
 -from blocks_swig3 import *
 -from blocks_swig4 import *
 -from blocks_swig5 import *
 -from blocks_swig6 import *
 -from blocks_swig7 import *
 -from blocks_swig8 import *
 -from blocks_swig9 import *
 -from blocks_swig10 import *
 +from __future__ import absolute_import
 +
 +from .blocks_swig0 import *
 +from .blocks_swig1 import *
 +from .blocks_swig2 import *
 +from .blocks_swig3 import *
 +from .blocks_swig4 import *
 +from .blocks_swig5 import *
++from .blocks_swig6 import *
++from .blocks_swig7 import *
++from .blocks_swig8 import *
++from .blocks_swig9 import *
++from .blocks_swig10 import *
diff --cc gr-uhd/apps/uhd_app.py
index 8939193,f4b6da6..1a22eb1
--- a/gr-uhd/apps/uhd_app.py
+++ b/gr-uhd/apps/uhd_app.py
@@@ -176,20 -153,31 +155,31 @@@ class UHDApp(object)
              )
          )
          # Set the subdevice spec:
-         args.spec = self.normalize_subdev_sel(args.spec)
+         args.spec = self.normalize_sel("mboards", "subdev",
+                                        self.usrp.get_num_mboards(), args.spec)
          if args.spec:
 -            for mb_idx in xrange(self.usrp.get_num_mboards()):
 +            for mb_idx in range(self.usrp.get_num_mboards()):
-                 if isinstance(args.spec, list):
-                     self.usrp.set_subdev_spec(args.spec[mb_idx], mb_idx)
-                 else:
+                 if len(args.spec) == 1:
                      self.usrp.set_subdev_spec(args.spec, mb_idx)
+                 else:
+                     self.usrp.set_subdev_spec(args.spec[mb_idx], mb_idx)
          # Set the clock and/or time source:
          if args.clock_source is not None:
+             args.clock_source = self.normalize_sel("mboards", "clock-source",
+                                                    
self.usrp.get_num_mboards(), args.clock_source)
 -            for mb_idx in xrange(self.usrp.get_num_mboards()):
 +            for mb_idx in range(self.usrp.get_num_mboards()):
-                 self.usrp.set_clock_source(args.clock_source, mb_idx)
+                 if len(args.time_source) == 1:
+                     self.usrp.set_clock_source(args.clock_source[0], mb_idx)
+                 else:
+                     self.usrp.set_clock_source(args.clock_source[mb_idx], 
mb_idx)
          if args.time_source is not None:
+             args.time_source = self.normalize_sel("mboards", "time-source",
+                                                   
self.usrp.get_num_mboards(), args.time_source)
 -            for mb_idx in xrange(self.usrp.get_num_mboards()):
 +            for mb_idx in range(self.usrp.get_num_mboards()):
-                 self.usrp.set_time_source(args.time_source, mb_idx)
+                 if len(args.time_source) == 1:
+                     self.usrp.set_time_source(args.time_source[0], mb_idx)
+                 else:
+                     self.usrp.set_time_source(args.time_source[mb_idx], 
mb_idx)
          # Sampling rate:
          self.usrp.set_samp_rate(args.samp_rate)
          self.samp_rate = self.usrp.get_samp_rate()
@@@ -403,4 -394,4 +396,3 @@@
          group.add_argument("--time-source",
                            help="Set the time source")
          return parser
--
diff --cc grc/gui/Actions.py
index ef04385,6eccab7..0965847
--- a/grc/gui/Actions.py
+++ b/grc/gui/Actions.py
@@@ -205,9 -200,19 +205,19 @@@ FLOW_GRAPH_SAVE = Action
  FLOW_GRAPH_SAVE_AS = Action(
      label='Save _As',
      tooltip='Save the current flow graph as...',
 -    stock_id=gtk.STOCK_SAVE_AS,
 -    keypresses=(gtk.keysyms.s, gtk.gdk.CONTROL_MASK | gtk.gdk.SHIFT_MASK),
 +    stock_id=Gtk.STOCK_SAVE_AS,
 +    keypresses=(Gdk.KEY_s, Gdk.ModifierType.CONTROL_MASK | 
Gdk.ModifierType.SHIFT_MASK),
  )
+ FLOW_GRAPH_SAVE_A_COPY = Action(
+     label='Save A Copy',
+     tooltip='Save the copy of current flowgraph',
+ )
+ FLOW_GRAPH_DUPLICATE = Action(
+     label='_Duplicate',
+     tooltip='Create a duplicate of current flowgraph',
+     stock_id=gtk.STOCK_COPY,
+     keypresses=(gtk.keysyms.d, gtk.gdk.CONTROL_MASK | gtk.gdk.SHIFT_MASK),
+ )
  FLOW_GRAPH_CLOSE = Action(
      label='_Close',
      tooltip='Close the current flow graph',
diff --cc grc/gui/Application.py
index e2290b3,5d48485..9e89009
--- a/grc/gui/Application.py
+++ b/grc/gui/Application.py
@@@ -544,27 -548,51 +545,53 @@@ class Application(Gtk.Application)
              #otherwise try to save
              else:
                  try:
 -                    ParseXML.to_file(flow_graph.export_data(), 
page.get_file_path())
 -                    flow_graph.grc_file_path = page.get_file_path()
 -                    page.set_saved(True)
 +                    ParseXML.to_file(flow_graph.export_data(), page.file_path)
 +                    flow_graph.grc_file_path = page.file_path
 +                    page.saved = True
                  except IOError:
 -                    Messages.send_fail_save(page.get_file_path())
 -                    page.set_saved(False)
 +                    Messages.send_fail_save(page.file_path)
 +                    page.saved = False
          elif action == Actions.FLOW_GRAPH_SAVE_AS:
 -            file_path = SaveFlowGraphFileDialog(page.get_file_path()).run()
 +            file_path = FileDialogs.SaveFlowGraph(main, page.file_path).run()
              if file_path is not None:
 -                page.set_file_path(file_path)
 +                page.file_path = os.path.abspath(file_path)
                  Actions.FLOW_GRAPH_SAVE()
 -                Preferences.add_recent_file(file_path)
 +                self.config.add_recent_file(file_path)
                  main.tool_bar.refresh_submenus()
                  main.menu_bar.refresh_submenus()
+         elif action == Actions.FLOW_GRAPH_SAVE_A_COPY:
+             try:
+                 if not page.get_file_path():
+                     Actions.FLOW_GRAPH_SAVE_AS()
+                 else:
+                     dup_file_path = page.get_file_path()
+                     dup_file_name = '.'.join(dup_file_path.split('.')[:-1]) + 
"_copy" # Assuming .grc extension at the end of file_path
+                     dup_file_path_temp = dup_file_name+'.grc'
+                     count = 1
+                     while os.path.exists(dup_file_path_temp):
+                         dup_file_path_temp = 
dup_file_name+'('+str(count)+').grc'
+                         count += 1
+                     dup_file_path_user = 
SaveFlowGraphFileDialog(dup_file_path_temp).run()
+                     if dup_file_path_user is not None:
+                         ParseXML.to_file(flow_graph.export_data(), 
dup_file_path_user)
+                         Messages.send('Saved Copy to: "' + dup_file_path_user 
+ '"\n')
+             except IOError:
+                 Messages.send_fail_save("Can not create a copy of the 
flowgraph\n")
+         elif action == Actions.FLOW_GRAPH_DUPLICATE:
+             flow_graph = main.get_flow_graph()
+             main.new_page()
+             curr_page = main.get_page()
+             new_flow_graph = main.get_flow_graph()
+             new_flow_graph.import_data(flow_graph.export_data())
+             flow_graph_update(new_flow_graph)
+             curr_page.set_saved(False)
          elif action == Actions.FLOW_GRAPH_SCREEN_CAPTURE:
 -            file_path, background_transparent = 
SaveScreenShotDialog(page.get_file_path()).run()
 +            file_path, background_transparent = 
FileDialogs.SaveScreenShot(main, page.file_path).run()
              if file_path is not None:
 -                pixbuf = 
flow_graph.get_drawing_area().get_screenshot(background_transparent)
 -                pixbuf.save(file_path, Constants.IMAGE_FILE_EXTENSION[1:])
 +                try:
 +                    Utils.make_screenshot(flow_graph, file_path, 
background_transparent)
 +                except ValueError:
 +                    Messages.send('Failed to generate screen shot\n')
          ##################################################
          # Gen/Exec/Stop
          ##################################################
diff --cc grc/gui/Bars.py
index 26fea20,d9bc2ae..1510e10
--- a/grc/gui/Bars.py
+++ b/grc/gui/Bars.py
@@@ -60,11 -60,11 +60,12 @@@ TOOLBAR_LIST = 
      Actions.OPEN_HIER,
  )
  
 +
  # The list of actions and categories for the menu bar.
  MENU_BAR_LIST = (
 -    (gtk.Action('File', '_File', None, None), [
 +    (Gtk.Action(name='File', label='_File'), [
          'flow_graph_new',
+         Actions.FLOW_GRAPH_DUPLICATE,
          Actions.FLOW_GRAPH_OPEN,
          'flow_graph_recent',
          None,
diff --cc volk
index 4465f9b,4465f9b..0184981
--- a/volk
+++ b/volk
@@@ -1,1 -1,1 +1,1 @@@
--Subproject commit 4465f9b26354e555e583a7d654710cb63cf914ce
++Subproject commit 018498173344ccc10c6911a828c56136e523b14d



reply via email to

[Prev in Thread] Current Thread [Next in Thread]