summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorMarcus Müller <marcus@hostalia.de>2018-08-31 23:02:22 +0200
committerMarcus Müller <marcus@hostalia.de>2018-08-31 23:02:22 +0200
commit254fe5e89403d4de1fa6663d09efdf946996aff3 (patch)
tree62877d7ac7fdedf6c397c51e22ac6f97eba97ddf /docs
parent896d1c9da31963ecf5b0d90942c2af51ca998a69 (diff)
parent5ad935c3a3dd46ce2860b13e2b774e4841784616 (diff)
Merge remote-tracking branch 'origin/next' into merge_next
Diffstat (limited to 'docs')
-rw-r--r--docs/CMakeLists.txt17
-rw-r--r--docs/doxygen/CMakeLists.txt26
-rw-r--r--docs/doxygen/Doxyfile.in28
-rw-r--r--docs/doxygen/doxyxml/__init__.py3
-rw-r--r--docs/doxygen/doxyxml/base.py19
-rw-r--r--docs/doxygen/doxyxml/doxyindex.py7
-rw-r--r--docs/doxygen/doxyxml/generated/__init__.py1
-rw-r--r--docs/doxygen/doxyxml/generated/compound.py9
-rw-r--r--docs/doxygen/doxyxml/generated/compoundsuper.py39
-rw-r--r--docs/doxygen/doxyxml/generated/index.py5
-rw-r--r--docs/doxygen/doxyxml/generated/indexsuper.py21
-rw-r--r--docs/doxygen/doxyxml/text.py3
-rw-r--r--docs/doxygen/other/build_guide.dox.in2
-rw-r--r--docs/doxygen/other/components.dox1
-rw-r--r--[-rwxr-xr-x]docs/doxygen/other/doxypy.py731
-rw-r--r--docs/doxygen/other/group_defs.dox14
-rw-r--r--docs/doxygen/other/logger.dox6
-rw-r--r--docs/doxygen/swig_doc.py9
-rw-r--r--docs/exploring-gnuradio/CMakeLists.txt1
-rw-r--r--[-rwxr-xr-x]docs/exploring-gnuradio/dial_tone.py3
-rw-r--r--[-rwxr-xr-x]docs/exploring-gnuradio/fm_demod.py6
-rw-r--r--docs/sphinx/gnuradio_sphinx.py1
-rw-r--r--docs/sphinx/hieroglyph/__init__.py3
-rw-r--r--docs/sphinx/hieroglyph/errors.py3
-rw-r--r--docs/sphinx/hieroglyph/hieroglyph.py6
-rw-r--r--docs/sphinx/hieroglyph/nodes.py1
-rw-r--r--docs/sphinx/hieroglyph/test/__init__.py1
-rw-r--r--docs/sphinx/hieroglyph/test/test_comments.py1
-rw-r--r--docs/sphinx/hieroglyph/test/test_hierglyph.py1
-rw-r--r--docs/sphinx/hieroglyph/test/test_nodes.py1
-rw-r--r--docs/sphinx/hieroglyph/version.py1
-rw-r--r--docs/sphinx/source/blocks_blocks.rst2
-rw-r--r--docs/sphinx/source/digital.rst10
-rw-r--r--docs/sphinx/source/digital_blocks.rst1
-rw-r--r--docs/sphinx/source/fcd_blocks.rst6
-rw-r--r--docs/sphinx/source/filter_blocks.rst8
-rw-r--r--docs/sphinx/source/index.rst77
-rw-r--r--docs/sphinx/source/noaa_blocks.rst8
-rw-r--r--docs/sphinx/source/pager_blocks.rst10
-rw-r--r--docs/sphinx/source/wxgui.rst5
-rw-r--r--docs/sphinx/source/wxgui_blocks.rst7
41 files changed, 462 insertions, 642 deletions
diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt
index 98d7d1c419..b9eb977a3a 100644
--- a/docs/CMakeLists.txt
+++ b/docs/CMakeLists.txt
@@ -36,15 +36,6 @@ GR_REGISTER_COMPONENT("sphinx" ENABLE_SPHINX SPHINX_FOUND)
if(ENABLE_DOXYGEN)
########################################################################
-# Setup CPack components
-########################################################################
-include(GrPackage)
-CPACK_COMPONENT("docs"
- DISPLAY_NAME "Documentation"
- DESCRIPTION "Doxygen generated documentation"
-)
-
-########################################################################
# Add subdirectories
########################################################################
add_subdirectory(doxygen)
@@ -58,14 +49,6 @@ endif(ENABLE_DOXYGEN)
########################################################################
if(ENABLE_SPHINX)
-########################################################################
-# Setup CPack components
-########################################################################
-include(GrPackage)
-CPACK_COMPONENT("docs"
- DISPLAY_NAME "Documentation"
- DESCRIPTION "Sphinx generated documentation"
-)
########################################################################
# Add subdirectories
diff --git a/docs/doxygen/CMakeLists.txt b/docs/doxygen/CMakeLists.txt
index faa1fbc891..952579f589 100644
--- a/docs/doxygen/CMakeLists.txt
+++ b/docs/doxygen/CMakeLists.txt
@@ -41,30 +41,6 @@ configure_file(
set(BUILT_DIRS ${CMAKE_CURRENT_BINARY_DIR}/xml ${CMAKE_CURRENT_BINARY_DIR}/html)
-if(ENABLE_GNURADIO_RUNTIME)
- list(APPEND GENERATED_DEPS pmt_generated)
-endif(ENABLE_GNURADIO_RUNTIME)
-
-if(ENABLE_GR_BLOCKS)
- list(APPEND GENERATED_DEPS blocks_generated_includes)
-endif(ENABLE_GR_BLOCKS)
-
-if(ENABLE_GR_ANALOG)
- list(APPEND GENERATED_DEPS analog_generated_includes)
-endif(ENABLE_GR_ANALOG)
-
-if(ENABLE_GR_DIGITAL)
- list(APPEND GENERATED_DEPS digital_generated_includes)
-endif(ENABLE_GR_DIGITAL)
-
-if(ENABLE_GR_FILTER)
- list(APPEND GENERATED_DEPS filter_generated_includes)
-endif(ENABLE_GR_FILTER)
-
-if(ENABLE_GR_TRELLIS)
- list(APPEND GENERATED_DEPS trellis_generated_includes)
-endif(ENABLE_GR_TRELLIS)
-
########################################################################
# Make and install doxygen docs
########################################################################
@@ -78,4 +54,4 @@ add_custom_command(
add_custom_target(doxygen_target ALL DEPENDS ${BUILT_DIRS})
-install(DIRECTORY ${BUILT_DIRS} DESTINATION ${GR_PKG_DOC_DIR} COMPONENT "docs")
+install(DIRECTORY ${BUILT_DIRS} DESTINATION ${GR_PKG_DOC_DIR})
diff --git a/docs/doxygen/Doxyfile.in b/docs/doxygen/Doxyfile.in
index 3050a464b9..72e7977dff 100644
--- a/docs/doxygen/Doxyfile.in
+++ b/docs/doxygen/Doxyfile.in
@@ -145,8 +145,6 @@ STRIP_FROM_INC_PATH = @CMAKE_SOURCE_DIR@/gnuradio-runtime/include \
@CMAKE_BINARY_DIR@/gnuradio-runtime/include \
@CMAKE_SOURCE_DIR@/gr-analog/include \
@CMAKE_BINARY_DIR@/gr-analog/include \
- @CMAKE_SOURCE_DIR@/gr-atsc/include \
- @CMAKE_BINARY_DIR@/gr-atsc/include \
@CMAKE_SOURCE_DIR@/gr-audio/include \
@CMAKE_BINARY_DIR@/gr-audio/include \
@CMAKE_SOURCE_DIR@/gr-blocks/include \
@@ -159,18 +157,12 @@ STRIP_FROM_INC_PATH = @CMAKE_SOURCE_DIR@/gnuradio-runtime/include \
@CMAKE_BINARY_DIR@/gr-digital/include \
@CMAKE_SOURCE_DIR@/gr-dtv/include \
@CMAKE_BINARY_DIR@/gr-dtv/include \
- @CMAKE_SOURCE_DIR@/gr-fcd/include \
- @CMAKE_BINARY_DIR@/gr-fcd/include \
@CMAKE_SOURCE_DIR@/gr-fec/include \
@CMAKE_BINARY_DIR@/gr-fec/include \
@CMAKE_SOURCE_DIR@/gr-fft/include \
@CMAKE_BINARY_DIR@/gr-fft/include \
@CMAKE_SOURCE_DIR@/gr-filter/include \
@CMAKE_BINARY_DIR@/gr-filter/include \
- @CMAKE_SOURCE_DIR@/gr-noaa/include \
- @CMAKE_BINARY_DIR@/gr-noaa/include \
- @CMAKE_SOURCE_DIR@/gr-pager/include \
- @CMAKE_BINARY_DIR@/gr-pager/include \
@CMAKE_SOURCE_DIR@/gr-qtgui/include \
@CMAKE_BINARY_DIR@/gr-qtgui/include \
@CMAKE_SOURCE_DIR@/gr-trellis/include \
@@ -183,8 +175,6 @@ STRIP_FROM_INC_PATH = @CMAKE_SOURCE_DIR@/gnuradio-runtime/include \
@CMAKE_BINARY_DIR@/gr-vocoder/include \
@CMAKE_SOURCE_DIR@/gr-wavelet/include \
@CMAKE_BINARY_DIR@/gr-wavelet/include \
- @CMAKE_SOURCE_DIR@/gr-wxgui/include \
- @CMAKE_BINARY_DIR@/gr-wxgui/include \
@CMAKE_SOURCE_DIR@/gr-zeromq/include \
@CMAKE_BINARY_DIR@/gr-zeromq/include \
@CMAKE_SOURCE_DIR@/volk/include \
@@ -748,19 +738,12 @@ EXCLUDE = @abs_top_srcdir@/volk \
@abs_top_builddir@/dtools \
@abs_top_builddir@/gnuradio-runtime/lib/runtime/gr_error_handler.cc \
@abs_top_builddir@/gnuradio-runtime/swig \
- @abs_top_builddir@/gnuradio-runtime/python/build_utils.py \
- @abs_top_builddir@/gnuradio-runtime/python/build_utils_codes.py \
@abs_top_builddir@/gnuradio-runtime/python/gnuradio/gr/gr_threading.py \
@abs_top_builddir@/gnuradio-runtime/python/gnuradio/gr/gr_threading_23.py \
@abs_top_builddir@/gnuradio-runtime/python/gnuradio/gr/gr_threading_24.py \
- @abs_top_builddir@/gr-atsc/swig/atsc_swig.py \
- @abs_top_builddir@/gr-atsc/lib/gen_encoder.py \
- @abs_top_builddir@/gr-atsc/python \
- @abs_top_builddir@/gr-pager/swig/pager_swig.py \
@abs_top_builddir@/gr-trellis/doc \
@abs_top_builddir@/gr-trellis/swig/trellis_swig.py \
@abs_top_builddir@/gr-video-sdl/swig/video_sdl_swig.py \
- @abs_top_builddir@/gr-wxgui/python \
@abs_top_builddir@/grc \
@abs_top_builddir@/_CPack_Packages \
@abs_top_srcdir@/cmake \
@@ -771,8 +754,6 @@ EXCLUDE = @abs_top_srcdir@/volk \
@abs_top_builddir@/gnuradio-runtime/lib \
@abs_top_srcdir@/gr-analog/lib \
@abs_top_builddir@/gr-analog/lib \
- @abs_top_srcdir@/gr-atsc/lib \
- @abs_top_builddir@/gr-atsc/lib \
@abs_top_srcdir@/gr-audio/lib \
@abs_top_builddir@/gr-audio/lib \
@abs_top_srcdir@/gr-blocks/lib \
@@ -793,18 +774,12 @@ EXCLUDE = @abs_top_srcdir@/volk \
@abs_top_builddir@/gr-dtv/lib/dvbs2 \
@abs_top_srcdir@/gr-dtv/lib/dvbt2 \
@abs_top_builddir@/gr-dtv/lib/dvbr2 \
- @abs_top_srcdir@/gr-fcd/lib \
- @abs_top_builddir@/gr-fcd/lib \
@abs_top_srcdir@/gr-fec/lib \
@abs_top_builddir@/gr-fec/lib \
@abs_top_srcdir@/gr-filter/lib \
@abs_top_builddir@/gr-filter/lib \
@abs_top_srcdir@/gr-fft/lib \
@abs_top_builddir@/gr-fft/lib \
- @abs_top_srcdir@/gr-noaa/lib \
- @abs_top_builddir@/gr-noaa/lib \
- @abs_top_srcdir@/gr-pager/lib \
- @abs_top_builddir@/gr-pager/lib \
@abs_top_srcdir@/gr-qtgui/lib \
@abs_top_builddir@/gr-qtgui/lib \
@abs_top_srcdir@/gr-trellis/lib \
@@ -821,8 +796,6 @@ EXCLUDE = @abs_top_srcdir@/volk \
@abs_top_builddir@/gr-vocoder/lib \
@abs_top_srcdir@/gr-wavelet/lib \
@abs_top_builddir@/gr-wavelet/lib \
- @abs_top_srcdir@/gr-wxgui/lib \
- @abs_top_builddir@/gr-wxgui/lib \
@abs_top_srcdir@/gr-zeromq/lib \
@abs_top_builddir@/gr-zeromq/lib \
@abs_top_srcdir@/volk/cmake/msvc \
@@ -846,7 +819,6 @@ EXCLUDE_PATTERNS = */.deps/* \
*/.svn/* \
*/CVS/* \
*/__init__.py \
- */gr-atsc/src/lib/Gr* \
*/moc_*.cc \
*/qa_*.cc \
*/qa_*.h \
diff --git a/docs/doxygen/doxyxml/__init__.py b/docs/doxygen/doxyxml/__init__.py
index 5cd0b3c6c5..b7a8884519 100644
--- a/docs/doxygen/doxyxml/__init__.py
+++ b/docs/doxygen/doxyxml/__init__.py
@@ -63,8 +63,9 @@ This line is uninformative and is only to test line breaks in the comments.
u'Outputs the vital aadvark statistics.'
"""
+from __future__ import unicode_literals
-from doxyindex import DoxyIndex, DoxyFunction, DoxyParam, DoxyClass, DoxyFile, DoxyNamespace, DoxyGroup, DoxyFriend, DoxyOther
+from .doxyindex import DoxyIndex, DoxyFunction, DoxyParam, DoxyClass, DoxyFile, DoxyNamespace, DoxyGroup, DoxyFriend, DoxyOther
def _test():
import os
diff --git a/docs/doxygen/doxyxml/base.py b/docs/doxygen/doxyxml/base.py
index e8f026ab90..f6f2b8e195 100644
--- a/docs/doxygen/doxyxml/base.py
+++ b/docs/doxygen/doxyxml/base.py
@@ -25,23 +25,26 @@ Classes based upon this are used to make more user-friendly interfaces
to the doxygen xml docs than the generated classes provide.
"""
+from __future__ import print_function
+from __future__ import unicode_literals
+
import os
import pdb
from xml.parsers.expat import ExpatError
-from generated import compound
+from .generated import compound
class Base(object):
- class Duplicate(StandardError):
+ class Duplicate(Exception):
pass
- class NoSuchMember(StandardError):
+ class NoSuchMember(Exception):
pass
- class ParsingError(StandardError):
+ class ParsingError(Exception):
pass
def __init__(self, parse_data, top=None):
@@ -94,7 +97,7 @@ class Base(object):
for cls in self.mem_classes:
if cls.can_parse(mem):
return cls
- raise StandardError(("Did not find a class for object '%s'." \
+ raise Exception(("Did not find a class for object '%s'." \
% (mem.get_name())))
def convert_mem(self, mem):
@@ -102,11 +105,11 @@ class Base(object):
cls = self.get_cls(mem)
converted = cls.from_parse_data(mem, self.top)
if converted is None:
- raise StandardError('No class matched this object.')
+ raise Exception('No class matched this object.')
self.add_ref(converted)
return converted
- except StandardError, e:
- print e
+ except Exception as e:
+ print(e)
@classmethod
def includes(cls, inst):
diff --git a/docs/doxygen/doxyxml/doxyindex.py b/docs/doxygen/doxyxml/doxyindex.py
index e039737714..083550bdf8 100644
--- a/docs/doxygen/doxyxml/doxyindex.py
+++ b/docs/doxygen/doxyxml/doxyindex.py
@@ -22,12 +22,13 @@
Classes providing more user-friendly interfaces to the doxygen xml
docs than the generated classes provide.
"""
+from __future__ import unicode_literals
import os
-from generated import index
-from base import Base
-from text import description
+from .generated import index
+from .base import Base
+from .text import description
class DoxyIndex(Base):
"""
diff --git a/docs/doxygen/doxyxml/generated/__init__.py b/docs/doxygen/doxyxml/generated/__init__.py
index 39823979f6..23095c1f34 100644
--- a/docs/doxygen/doxyxml/generated/__init__.py
+++ b/docs/doxygen/doxyxml/generated/__init__.py
@@ -5,3 +5,4 @@ These do the real work of parsing the doxygen xml files but the
resultant classes are not very friendly to navigate so the rest of the
doxyxml module processes them further.
"""
+from __future__ import unicode_literals
diff --git a/docs/doxygen/doxyxml/generated/compound.py b/docs/doxygen/doxyxml/generated/compound.py
index 1522ac23f1..cd3cd1f96b 100644
--- a/docs/doxygen/doxyxml/generated/compound.py
+++ b/docs/doxygen/doxyxml/generated/compound.py
@@ -3,15 +3,16 @@
"""
Generated Mon Feb 9 19:08:05 2009 by generateDS.py.
"""
+from __future__ import unicode_literals
+
-from string import lower as str_lower
from xml.dom import minidom
from xml.dom import Node
import sys
-import compoundsuper as supermod
-from compoundsuper import MixedContainer
+from . import compoundsuper as supermod
+from .compoundsuper import MixedContainer
class DoxygenTypeSub(supermod.DoxygenType):
@@ -499,5 +500,3 @@ def parse(inFilename):
rootObj = supermod.DoxygenType.factory()
rootObj.build(rootNode)
return rootObj
-
-
diff --git a/docs/doxygen/doxyxml/generated/compoundsuper.py b/docs/doxygen/doxyxml/generated/compoundsuper.py
index 6255dda163..f18ec6cda9 100644
--- a/docs/doxygen/doxyxml/generated/compoundsuper.py
+++ b/docs/doxygen/doxyxml/generated/compoundsuper.py
@@ -4,12 +4,16 @@
# Generated Thu Jun 11 18:44:25 2009 by generateDS.py.
#
+from __future__ import print_function
+from __future__ import unicode_literals
+
import sys
-import getopt
-from string import lower as str_lower
+
from xml.dom import minidom
from xml.dom import Node
+import six
+
#
# User methods
#
@@ -19,9 +23,9 @@ from xml.dom import Node
try:
from generatedssuper import GeneratedsSuper
-except ImportError, exp:
+except ImportError as exp:
- class GeneratedsSuper:
+ class GeneratedsSuper(object):
def format_string(self, input_data, input_name=''):
return input_data
def format_integer(self, input_data, input_name=''):
@@ -64,7 +68,7 @@ def showIndent(outfile, level):
outfile.write(' ')
def quote_xml(inStr):
- s1 = (isinstance(inStr, basestring) and inStr or
+ s1 = (isinstance(inStr, six.string_types) and inStr or
'%s' % inStr)
s1 = s1.replace('&', '&amp;')
s1 = s1.replace('<', '&lt;')
@@ -72,7 +76,7 @@ def quote_xml(inStr):
return s1
def quote_attrib(inStr):
- s1 = (isinstance(inStr, basestring) and inStr or
+ s1 = (isinstance(inStr, six.string_types) and inStr or
'%s' % inStr)
s1 = s1.replace('&', '&amp;')
s1 = s1.replace('<', '&lt;')
@@ -102,7 +106,7 @@ def quote_python(inStr):
return '"""%s"""' % s1
-class MixedContainer:
+class MixedContainer(object):
# Constants for category:
CategoryNone = 0
CategoryText = 1
@@ -4221,7 +4225,7 @@ class codelineType(GeneratedsSuper):
if attrs.get('lineno'):
try:
self.lineno = int(attrs.get('lineno').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (lineno): %s' % exp)
if attrs.get('refkind'):
self.refkind = attrs.get('refkind').value
@@ -4504,12 +4508,12 @@ class referenceType(GeneratedsSuper):
if attrs.get('endline'):
try:
self.endline = int(attrs.get('endline').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (endline): %s' % exp)
if attrs.get('startline'):
try:
self.startline = int(attrs.get('startline').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (startline): %s' % exp)
if attrs.get('refid'):
self.refid = attrs.get('refid').value
@@ -4627,17 +4631,17 @@ class locationType(GeneratedsSuper):
if attrs.get('bodystart'):
try:
self.bodystart = int(attrs.get('bodystart').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (bodystart): %s' % exp)
if attrs.get('line'):
try:
self.line = int(attrs.get('line').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (line): %s' % exp)
if attrs.get('bodyend'):
try:
self.bodyend = int(attrs.get('bodyend').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (bodyend): %s' % exp)
if attrs.get('bodyfile'):
self.bodyfile = attrs.get('bodyfile').value
@@ -6778,12 +6782,12 @@ class docTableType(GeneratedsSuper):
if attrs.get('rows'):
try:
self.rows = int(attrs.get('rows').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (rows): %s' % exp)
if attrs.get('cols'):
try:
self.cols = int(attrs.get('cols').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (cols): %s' % exp)
def buildChildren(self, child_, nodeName_):
if child_.nodeType == Node.ELEMENT_NODE and \
@@ -7108,7 +7112,7 @@ class docHeadingType(GeneratedsSuper):
if attrs.get('level'):
try:
self.level = int(attrs.get('level').value)
- except ValueError, exp:
+ except ValueError as exp:
raise ValueError('Bad integer attribute (level): %s' % exp)
def buildChildren(self, child_, nodeName_):
if child_.nodeType == Node.TEXT_NODE:
@@ -8283,7 +8287,7 @@ Options:
"""
def usage():
- print USAGE_TEXT
+ print(USAGE_TEXT)
sys.exit(1)
@@ -8339,4 +8343,3 @@ if __name__ == '__main__':
main()
#import pdb
#pdb.run('main()')
-
diff --git a/docs/doxygen/doxyxml/generated/index.py b/docs/doxygen/doxyxml/generated/index.py
index 7a70e14a1a..eb9a9048b2 100644
--- a/docs/doxygen/doxyxml/generated/index.py
+++ b/docs/doxygen/doxyxml/generated/index.py
@@ -3,14 +3,15 @@
"""
Generated Mon Feb 9 19:08:05 2009 by generateDS.py.
"""
+from __future__ import unicode_literals
from xml.dom import minidom
import os
import sys
-import compound
+from . import compound
-import indexsuper as supermod
+from . import indexsuper as supermod
class DoxygenTypeSub(supermod.DoxygenType):
def __init__(self, version=None, compound=None):
diff --git a/docs/doxygen/doxyxml/generated/indexsuper.py b/docs/doxygen/doxyxml/generated/indexsuper.py
index a991530198..11312db635 100644
--- a/docs/doxygen/doxyxml/generated/indexsuper.py
+++ b/docs/doxygen/doxyxml/generated/indexsuper.py
@@ -4,12 +4,16 @@
# Generated Thu Jun 11 18:43:54 2009 by generateDS.py.
#
+from __future__ import print_function
+from __future__ import unicode_literals
+
import sys
-import getopt
-from string import lower as str_lower
+
from xml.dom import minidom
from xml.dom import Node
+import six
+
#
# User methods
#
@@ -19,9 +23,9 @@ from xml.dom import Node
try:
from generatedssuper import GeneratedsSuper
-except ImportError, exp:
+except ImportError as exp:
- class GeneratedsSuper:
+ class GeneratedsSuper(object):
def format_string(self, input_data, input_name=''):
return input_data
def format_integer(self, input_data, input_name=''):
@@ -64,7 +68,7 @@ def showIndent(outfile, level):
outfile.write(' ')
def quote_xml(inStr):
- s1 = (isinstance(inStr, basestring) and inStr or
+ s1 = (isinstance(inStr, six.string_types) and inStr or
'%s' % inStr)
s1 = s1.replace('&', '&amp;')
s1 = s1.replace('<', '&lt;')
@@ -72,7 +76,7 @@ def quote_xml(inStr):
return s1
def quote_attrib(inStr):
- s1 = (isinstance(inStr, basestring) and inStr or
+ s1 = (isinstance(inStr, six.string_types) and inStr or
'%s' % inStr)
s1 = s1.replace('&', '&amp;')
s1 = s1.replace('<', '&lt;')
@@ -102,7 +106,7 @@ def quote_python(inStr):
return '"""%s"""' % s1
-class MixedContainer:
+class MixedContainer(object):
# Constants for category:
CategoryNone = 0
CategoryText = 1
@@ -462,7 +466,7 @@ Options:
"""
def usage():
- print USAGE_TEXT
+ print(USAGE_TEXT)
sys.exit(1)
@@ -520,4 +524,3 @@ if __name__ == '__main__':
main()
#import pdb
#pdb.run('main()')
-
diff --git a/docs/doxygen/doxyxml/text.py b/docs/doxygen/doxyxml/text.py
index 629edd180d..f0322f6237 100644
--- a/docs/doxygen/doxyxml/text.py
+++ b/docs/doxygen/doxyxml/text.py
@@ -21,6 +21,7 @@
"""
Utilities for extracting text from generated classes.
"""
+from __future__ import unicode_literals
def is_string(txt):
if isinstance(txt, str):
@@ -49,7 +50,7 @@ def description_bit(obj):
elif is_string(obj):
return obj
else:
- raise StandardError('Expecting a string or something with content, content_ or value attribute')
+ raise Exception('Expecting a string or something with content, content_ or value attribute')
# If this bit is a paragraph then add one some line breaks.
if hasattr(obj, 'name') and obj.name == 'para':
result += "\n\n"
diff --git a/docs/doxygen/other/build_guide.dox.in b/docs/doxygen/other/build_guide.dox.in
index a324f669bb..ac28b0be7c 100644
--- a/docs/doxygen/other/build_guide.dox.in
+++ b/docs/doxygen/other/build_guide.dox.in
@@ -76,8 +76,6 @@ cppzmq is included (undocumentedly) in the debian and Ubuntu libzmq3-dev package
\li qwt (>= 5.2.0) http://sourceforge.net/projects/qwt/
\li pyqt (>= 4.10.0) http://www.riverbankcomputing.co.uk/software/pyqt/download
-\subsection dep_gr_wxgui gr-wxgui: The WX-based Graphical User Interface
-\li wxpython (>= 2.8) http://www.wxpython.org/
\li python-lxml (>= 1.3.6) http://lxml.de/
\subsection dep_gr_audio gr-audio: Audio Subsystems (system/OS dependent)
diff --git a/docs/doxygen/other/components.dox b/docs/doxygen/other/components.dox
index b1f88d20b6..2b6fc2091a 100644
--- a/docs/doxygen/other/components.dox
+++ b/docs/doxygen/other/components.dox
@@ -32,7 +32,6 @@ All our in-tree components have their own top-level documentation:
\li \subpage page_ctrlport
\li \subpage page_digital
\li \subpage page_packet_comms
-\li \subpage page_fcd
\li \subpage page_fec
\li \subpage page_fft
\li \subpage page_filter
diff --git a/docs/doxygen/other/doxypy.py b/docs/doxygen/other/doxypy.py
index 15d3e0824d..e474a9694f 100755..100644
--- a/docs/doxygen/other/doxypy.py
+++ b/docs/doxygen/other/doxypy.py
@@ -1,5 +1,8 @@
#!/usr/bin/env python
+from __future__ import print_function
+from __future__ import unicode_literals
+
__applicationName__ = "doxypy"
__blurb__ = """
doxypy is an input filter for Doxygen. It preprocesses python
@@ -11,17 +14,17 @@ __doc__ = __blurb__ + \
"""
In order to make Doxygen preprocess files through doxypy, simply
add the following lines to your Doxyfile:
- FILTER_SOURCE_FILES = YES
- INPUT_FILTER = "python /path/to/doxypy.py"
+ FILTER_SOURCE_FILES = YES
+ INPUT_FILTER = "python /path/to/doxypy.py"
"""
-__version__ = "0.4.1"
+__version__ = "0.4.2"
__date__ = "5th December 2008"
__website__ = "http://code.foosel.org/doxypy"
__author__ = (
- "Philippe 'demod' Neumann (doxypy at demod dot org)",
- "Gina 'foosel' Haeussge (gina at foosel dot net)"
+ "Philippe 'demod' Neumann (doxypy at demod dot org)",
+ "Gina 'foosel' Haeussge (gina at foosel dot net)"
)
__licenseName__ = "GPL v2"
@@ -42,373 +45,367 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
import sys
import re
-from optparse import OptionParser, OptionGroup
+from argparse import ArgumentParser
class FSM(object):
- """Implements a finite state machine.
-
- Transitions are given as 4-tuples, consisting of an origin state, a target
- state, a condition for the transition (given as a reference to a function
- which gets called with a given piece of input) and a pointer to a function
- to be called upon the execution of the given transition.
- """
-
- """
- @var transitions holds the transitions
- @var current_state holds the current state
- @var current_input holds the current input
- @var current_transition hold the currently active transition
- """
-
- def __init__(self, start_state=None, transitions=[]):
- self.transitions = transitions
- self.current_state = start_state
- self.current_input = None
- self.current_transition = None
-
- def setStartState(self, state):
- self.current_state = state
-
- def addTransition(self, from_state, to_state, condition, callback):
- self.transitions.append([from_state, to_state, condition, callback])
-
- def makeTransition(self, input):
- """ Makes a transition based on the given input.
-
- @param input input to parse by the FSM
- """
- for transition in self.transitions:
- [from_state, to_state, condition, callback] = transition
- if from_state == self.current_state:
- match = condition(input)
- if match:
- self.current_state = to_state
- self.current_input = input
- self.current_transition = transition
- if options.debug:
- print >>sys.stderr, "# FSM: executing (%s -> %s) for line '%s'" % (from_state, to_state, input)
- callback(match)
- return
+ """Implements a finite state machine.
+
+ Transitions are given as 4-tuples, consisting of an origin state, a target
+ state, a condition for the transition (given as a reference to a function
+ which gets called with a given piece of input) and a pointer to a function
+ to be called upon the execution of the given transition.
+ """
+
+ """
+ @var transitions holds the transitions
+ @var current_state holds the current state
+ @var current_input holds the current input
+ @var current_transition hold the currently active transition
+ """
+
+ def __init__(self, start_state=None, transitions=[]):
+ self.transitions = transitions
+ self.current_state = start_state
+ self.current_input = None
+ self.current_transition = None
+
+ def setStartState(self, state):
+ self.current_state = state
+
+ def addTransition(self, from_state, to_state, condition, callback):
+ self.transitions.append([from_state, to_state, condition, callback])
+
+ def makeTransition(self, input):
+ """ Makes a transition based on the given input.
+
+ @param input input to parse by the FSM
+ """
+ for transition in self.transitions:
+ [from_state, to_state, condition, callback] = transition
+ if from_state == self.current_state:
+ match = condition(input)
+ if match:
+ self.current_state = to_state
+ self.current_input = input
+ self.current_transition = transition
+ if args.debug:
+ print("# FSM: executing (%s -> %s) for line '%s'" % (from_state, to_state, input), file=sys.stderr)
+ callback(match)
+ return
class Doxypy(object):
- def __init__(self):
- string_prefixes = "[uU]?[rR]?"
-
- self.start_single_comment_re = re.compile("^\s*%s(''')" % string_prefixes)
- self.end_single_comment_re = re.compile("(''')\s*$")
-
- self.start_double_comment_re = re.compile("^\s*%s(\"\"\")" % string_prefixes)
- self.end_double_comment_re = re.compile("(\"\"\")\s*$")
-
- self.single_comment_re = re.compile("^\s*%s(''').*(''')\s*$" % string_prefixes)
- self.double_comment_re = re.compile("^\s*%s(\"\"\").*(\"\"\")\s*$" % string_prefixes)
-
- self.defclass_re = re.compile("^(\s*)(def .+:|class .+:)")
- self.empty_re = re.compile("^\s*$")
- self.hashline_re = re.compile("^\s*#.*$")
- self.importline_re = re.compile("^\s*(import |from .+ import)")
-
- self.multiline_defclass_start_re = re.compile("^(\s*)(def|class)(\s.*)?$")
- self.multiline_defclass_end_re = re.compile(":\s*$")
-
- ## Transition list format
- # ["FROM", "TO", condition, action]
- transitions = [
- ### FILEHEAD
-
- # single line comments
- ["FILEHEAD", "FILEHEAD", self.single_comment_re.search, self.appendCommentLine],
- ["FILEHEAD", "FILEHEAD", self.double_comment_re.search, self.appendCommentLine],
-
- # multiline comments
- ["FILEHEAD", "FILEHEAD_COMMENT_SINGLE", self.start_single_comment_re.search, self.appendCommentLine],
- ["FILEHEAD_COMMENT_SINGLE", "FILEHEAD", self.end_single_comment_re.search, self.appendCommentLine],
- ["FILEHEAD_COMMENT_SINGLE", "FILEHEAD_COMMENT_SINGLE", self.catchall, self.appendCommentLine],
- ["FILEHEAD", "FILEHEAD_COMMENT_DOUBLE", self.start_double_comment_re.search, self.appendCommentLine],
- ["FILEHEAD_COMMENT_DOUBLE", "FILEHEAD", self.end_double_comment_re.search, self.appendCommentLine],
- ["FILEHEAD_COMMENT_DOUBLE", "FILEHEAD_COMMENT_DOUBLE", self.catchall, self.appendCommentLine],
-
- # other lines
- ["FILEHEAD", "FILEHEAD", self.empty_re.search, self.appendFileheadLine],
- ["FILEHEAD", "FILEHEAD", self.hashline_re.search, self.appendFileheadLine],
- ["FILEHEAD", "FILEHEAD", self.importline_re.search, self.appendFileheadLine],
- ["FILEHEAD", "DEFCLASS", self.defclass_re.search, self.resetCommentSearch],
- ["FILEHEAD", "DEFCLASS_MULTI", self.multiline_defclass_start_re.search, self.resetCommentSearch],
- ["FILEHEAD", "DEFCLASS_BODY", self.catchall, self.appendFileheadLine],
-
- ### DEFCLASS
-
- # single line comments
- ["DEFCLASS", "DEFCLASS_BODY", self.single_comment_re.search, self.appendCommentLine],
- ["DEFCLASS", "DEFCLASS_BODY", self.double_comment_re.search, self.appendCommentLine],
-
- # multiline comments
- ["DEFCLASS", "COMMENT_SINGLE", self.start_single_comment_re.search, self.appendCommentLine],
- ["COMMENT_SINGLE", "DEFCLASS_BODY", self.end_single_comment_re.search, self.appendCommentLine],
- ["COMMENT_SINGLE", "COMMENT_SINGLE", self.catchall, self.appendCommentLine],
- ["DEFCLASS", "COMMENT_DOUBLE", self.start_double_comment_re.search, self.appendCommentLine],
- ["COMMENT_DOUBLE", "DEFCLASS_BODY", self.end_double_comment_re.search, self.appendCommentLine],
- ["COMMENT_DOUBLE", "COMMENT_DOUBLE", self.catchall, self.appendCommentLine],
-
- # other lines
- ["DEFCLASS", "DEFCLASS", self.empty_re.search, self.appendDefclassLine],
- ["DEFCLASS", "DEFCLASS", self.defclass_re.search, self.resetCommentSearch],
- ["DEFCLASS", "DEFCLASS_MULTI", self.multiline_defclass_start_re.search, self.resetCommentSearch],
- ["DEFCLASS", "DEFCLASS_BODY", self.catchall, self.stopCommentSearch],
-
- ### DEFCLASS_BODY
-
- ["DEFCLASS_BODY", "DEFCLASS", self.defclass_re.search, self.startCommentSearch],
- ["DEFCLASS_BODY", "DEFCLASS_MULTI", self.multiline_defclass_start_re.search, self.startCommentSearch],
- ["DEFCLASS_BODY", "DEFCLASS_BODY", self.catchall, self.appendNormalLine],
-
- ### DEFCLASS_MULTI
- ["DEFCLASS_MULTI", "DEFCLASS", self.multiline_defclass_end_re.search, self.appendDefclassLine],
- ["DEFCLASS_MULTI", "DEFCLASS_MULTI", self.catchall, self.appendDefclassLine],
- ]
-
- self.fsm = FSM("FILEHEAD", transitions)
- self.outstream = sys.stdout
-
- self.output = []
- self.comment = []
- self.filehead = []
- self.defclass = []
- self.indent = ""
-
- def __closeComment(self):
- """Appends any open comment block and triggering block to the output."""
-
- if options.autobrief:
- if len(self.comment) == 1 \
- or (len(self.comment) > 2 and self.comment[1].strip() == ''):
- self.comment[0] = self.__docstringSummaryToBrief(self.comment[0])
-
- if self.comment:
- block = self.makeCommentBlock()
- self.output.extend(block)
-
- if self.defclass:
- self.output.extend(self.defclass)
-
- def __docstringSummaryToBrief(self, line):
- """Adds \\brief to the docstrings summary line.
-
- A \\brief is prepended, provided no other doxygen command is at the
- start of the line.
- """
- stripped = line.strip()
- if stripped and not stripped[0] in ('@', '\\'):
- return "\\brief " + line
- else:
- return line
-
- def __flushBuffer(self):
- """Flushes the current outputbuffer to the outstream."""
- if self.output:
- try:
- if options.debug:
- print >>sys.stderr, "# OUTPUT: ", self.output
- print >>self.outstream, "\n".join(self.output)
- self.outstream.flush()
- except IOError:
- # Fix for FS#33. Catches "broken pipe" when doxygen closes
- # stdout prematurely upon usage of INPUT_FILTER, INLINE_SOURCES
- # and FILTER_SOURCE_FILES.
- pass
- self.output = []
-
- def catchall(self, input):
- """The catchall-condition, always returns true."""
- return True
-
- def resetCommentSearch(self, match):
- """Restarts a new comment search for a different triggering line.
-
- Closes the current commentblock and starts a new comment search.
- """
- if options.debug:
- print >>sys.stderr, "# CALLBACK: resetCommentSearch"
- self.__closeComment()
- self.startCommentSearch(match)
-
- def startCommentSearch(self, match):
- """Starts a new comment search.
-
- Saves the triggering line, resets the current comment and saves
- the current indentation.
- """
- if options.debug:
- print >>sys.stderr, "# CALLBACK: startCommentSearch"
- self.defclass = [self.fsm.current_input]
- self.comment = []
- self.indent = match.group(1)
-
- def stopCommentSearch(self, match):
- """Stops a comment search.
-
- Closes the current commentblock, resets the triggering line and
- appends the current line to the output.
- """
- if options.debug:
- print >>sys.stderr, "# CALLBACK: stopCommentSearch"
- self.__closeComment()
-
- self.defclass = []
- self.output.append(self.fsm.current_input)
-
- def appendFileheadLine(self, match):
- """Appends a line in the FILEHEAD state.
-
- Closes the open comment block, resets it and appends the current line.
- """
- if options.debug:
- print >>sys.stderr, "# CALLBACK: appendFileheadLine"
- self.__closeComment()
- self.comment = []
- self.output.append(self.fsm.current_input)
-
- def appendCommentLine(self, match):
- """Appends a comment line.
-
- The comment delimiter is removed from multiline start and ends as
- well as singleline comments.
- """
- if options.debug:
- print >>sys.stderr, "# CALLBACK: appendCommentLine"
- (from_state, to_state, condition, callback) = self.fsm.current_transition
-
- # single line comment
- if (from_state == "DEFCLASS" and to_state == "DEFCLASS_BODY") \
- or (from_state == "FILEHEAD" and to_state == "FILEHEAD"):
- # remove comment delimiter from begin and end of the line
- activeCommentDelim = match.group(1)
- line = self.fsm.current_input
- self.comment.append(line[line.find(activeCommentDelim)+len(activeCommentDelim):line.rfind(activeCommentDelim)])
-
- if (to_state == "DEFCLASS_BODY"):
- self.__closeComment()
- self.defclass = []
- # multiline start
- elif from_state == "DEFCLASS" or from_state == "FILEHEAD":
- # remove comment delimiter from begin of the line
- activeCommentDelim = match.group(1)
- line = self.fsm.current_input
- self.comment.append(line[line.find(activeCommentDelim)+len(activeCommentDelim):])
- # multiline end
- elif to_state == "DEFCLASS_BODY" or to_state == "FILEHEAD":
- # remove comment delimiter from end of the line
- activeCommentDelim = match.group(1)
- line = self.fsm.current_input
- self.comment.append(line[0:line.rfind(activeCommentDelim)])
- if (to_state == "DEFCLASS_BODY"):
- self.__closeComment()
- self.defclass = []
- # in multiline comment
- else:
- # just append the comment line
- self.comment.append(self.fsm.current_input)
-
- def appendNormalLine(self, match):
- """Appends a line to the output."""
- if options.debug:
- print >>sys.stderr, "# CALLBACK: appendNormalLine"
- self.output.append(self.fsm.current_input)
-
- def appendDefclassLine(self, match):
- """Appends a line to the triggering block."""
- if options.debug:
- print >>sys.stderr, "# CALLBACK: appendDefclassLine"
- self.defclass.append(self.fsm.current_input)
-
- def makeCommentBlock(self):
- """Indents the current comment block with respect to the current
- indentation level.
-
- @returns a list of indented comment lines
- """
- doxyStart = "##"
- commentLines = self.comment
-
- commentLines = map(lambda x: "%s# %s" % (self.indent, x), commentLines)
- l = [self.indent + doxyStart]
- l.extend(commentLines)
-
- return l
-
- def parse(self, input):
- """Parses a python file given as input string and returns the doxygen-
- compatible representation.
-
- @param input the python code to parse
- @returns the modified python code
- """
- lines = input.split("\n")
-
- for line in lines:
- self.fsm.makeTransition(line)
-
- if self.fsm.current_state == "DEFCLASS":
- self.__closeComment()
-
- return "\n".join(self.output)
-
- def parseFile(self, filename):
- """Parses a python file given as input string and returns the doxygen-
- compatible representation.
-
- @param input the python code to parse
- @returns the modified python code
- """
- f = open(filename, 'r')
-
- for line in f:
- self.parseLine(line.rstrip('\r\n'))
- if self.fsm.current_state == "DEFCLASS":
- self.__closeComment()
- self.__flushBuffer()
- f.close()
-
- def parseLine(self, line):
- """Parse one line of python and flush the resulting output to the
- outstream.
-
- @param line the python code line to parse
- """
- self.fsm.makeTransition(line)
- self.__flushBuffer()
-
-def optParse():
- """Parses commandline options."""
- parser = OptionParser(prog=__applicationName__, version="%prog " + __version__)
-
- parser.set_usage("%prog [options] filename")
- parser.add_option("--autobrief",
- action="store_true", dest="autobrief",
- help="use the docstring summary line as \\brief description"
- )
- parser.add_option("--debug",
- action="store_true", dest="debug",
- help="enable debug output on stderr"
- )
-
- ## parse options
- global options
- (options, filename) = parser.parse_args()
-
- if not filename:
- print >>sys.stderr, "No filename given."
- sys.exit(-1)
-
- return filename[0]
+ def __init__(self):
+ string_prefixes = "[uU]?[rR]?"
+
+ self.start_single_comment_re = re.compile("^\s*%s(''')" % string_prefixes)
+ self.end_single_comment_re = re.compile("(''')\s*$")
+
+ self.start_double_comment_re = re.compile("^\s*%s(\"\"\")" % string_prefixes)
+ self.end_double_comment_re = re.compile("(\"\"\")\s*$")
+
+ self.single_comment_re = re.compile("^\s*%s(''').*(''')\s*$" % string_prefixes)
+ self.double_comment_re = re.compile("^\s*%s(\"\"\").*(\"\"\")\s*$" % string_prefixes)
+
+ self.defclass_re = re.compile("^(\s*)(def .+:|class .+:)")
+ self.empty_re = re.compile("^\s*$")
+ self.hashline_re = re.compile("^\s*#.*$")
+ self.importline_re = re.compile("^\s*(import |from .+ import)")
+
+ self.multiline_defclass_start_re = re.compile("^(\s*)(def|class)(\s.*)?$")
+ self.multiline_defclass_end_re = re.compile(":\s*$")
+
+ ## Transition list format
+ # ["FROM", "TO", condition, action]
+ transitions = [
+ ### FILEHEAD
+
+ # single line comments
+ ["FILEHEAD", "FILEHEAD", self.single_comment_re.search, self.appendCommentLine],
+ ["FILEHEAD", "FILEHEAD", self.double_comment_re.search, self.appendCommentLine],
+
+ # multiline comments
+ ["FILEHEAD", "FILEHEAD_COMMENT_SINGLE", self.start_single_comment_re.search, self.appendCommentLine],
+ ["FILEHEAD_COMMENT_SINGLE", "FILEHEAD", self.end_single_comment_re.search, self.appendCommentLine],
+ ["FILEHEAD_COMMENT_SINGLE", "FILEHEAD_COMMENT_SINGLE", self.catchall, self.appendCommentLine],
+ ["FILEHEAD", "FILEHEAD_COMMENT_DOUBLE", self.start_double_comment_re.search, self.appendCommentLine],
+ ["FILEHEAD_COMMENT_DOUBLE", "FILEHEAD", self.end_double_comment_re.search, self.appendCommentLine],
+ ["FILEHEAD_COMMENT_DOUBLE", "FILEHEAD_COMMENT_DOUBLE", self.catchall, self.appendCommentLine],
+
+ # other lines
+ ["FILEHEAD", "FILEHEAD", self.empty_re.search, self.appendFileheadLine],
+ ["FILEHEAD", "FILEHEAD", self.hashline_re.search, self.appendFileheadLine],
+ ["FILEHEAD", "FILEHEAD", self.importline_re.search, self.appendFileheadLine],
+ ["FILEHEAD", "DEFCLASS", self.defclass_re.search, self.resetCommentSearch],
+ ["FILEHEAD", "DEFCLASS_MULTI", self.multiline_defclass_start_re.search, self.resetCommentSearch],
+ ["FILEHEAD", "DEFCLASS_BODY", self.catchall, self.appendFileheadLine],
+
+ ### DEFCLASS
+
+ # single line comments
+ ["DEFCLASS", "DEFCLASS_BODY", self.single_comment_re.search, self.appendCommentLine],
+ ["DEFCLASS", "DEFCLASS_BODY", self.double_comment_re.search, self.appendCommentLine],
+
+ # multiline comments
+ ["DEFCLASS", "COMMENT_SINGLE", self.start_single_comment_re.search, self.appendCommentLine],
+ ["COMMENT_SINGLE", "DEFCLASS_BODY", self.end_single_comment_re.search, self.appendCommentLine],
+ ["COMMENT_SINGLE", "COMMENT_SINGLE", self.catchall, self.appendCommentLine],
+ ["DEFCLASS", "COMMENT_DOUBLE", self.start_double_comment_re.search, self.appendCommentLine],
+ ["COMMENT_DOUBLE", "DEFCLASS_BODY", self.end_double_comment_re.search, self.appendCommentLine],
+ ["COMMENT_DOUBLE", "COMMENT_DOUBLE", self.catchall, self.appendCommentLine],
+
+ # other lines
+ ["DEFCLASS", "DEFCLASS", self.empty_re.search, self.appendDefclassLine],
+ ["DEFCLASS", "DEFCLASS", self.defclass_re.search, self.resetCommentSearch],
+ ["DEFCLASS", "DEFCLASS_MULTI", self.multiline_defclass_start_re.search, self.resetCommentSearch],
+ ["DEFCLASS", "DEFCLASS_BODY", self.catchall, self.stopCommentSearch],
+
+ ### DEFCLASS_BODY
+
+ ["DEFCLASS_BODY", "DEFCLASS", self.defclass_re.search, self.startCommentSearch],
+ ["DEFCLASS_BODY", "DEFCLASS_MULTI", self.multiline_defclass_start_re.search, self.startCommentSearch],
+ ["DEFCLASS_BODY", "DEFCLASS_BODY", self.catchall, self.appendNormalLine],
+
+ ### DEFCLASS_MULTI
+ ["DEFCLASS_MULTI", "DEFCLASS", self.multiline_defclass_end_re.search, self.appendDefclassLine],
+ ["DEFCLASS_MULTI", "DEFCLASS_MULTI", self.catchall, self.appendDefclassLine],
+ ]
+
+ self.fsm = FSM("FILEHEAD", transitions)
+ self.outstream = sys.stdout
+
+ self.output = []
+ self.comment = []
+ self.filehead = []
+ self.defclass = []
+ self.indent = ""
+
+ def __closeComment(self):
+ """Appends any open comment block and triggering block to the output."""
+
+ if args.autobrief:
+ if len(self.comment) == 1 \
+ or (len(self.comment) > 2 and self.comment[1].strip() == ''):
+ self.comment[0] = self.__docstringSummaryToBrief(self.comment[0])
+
+ if self.comment:
+ block = self.makeCommentBlock()
+ self.output.extend(block)
+
+ if self.defclass:
+ self.output.extend(self.defclass)
+
+ def __docstringSummaryToBrief(self, line):
+ """Adds \\brief to the docstrings summary line.
+
+ A \\brief is prepended, provided no other doxygen command is at the
+ start of the line.
+ """
+ stripped = line.strip()
+ if stripped and not stripped[0] in ('@', '\\'):
+ return "\\brief " + line
+ else:
+ return line
+
+ def __flushBuffer(self):
+ """Flushes the current outputbuffer to the outstream."""
+ if self.output:
+ try:
+ if args.debug:
+ print("# OUTPUT: ", self.output, file=sys.stderr)
+ print("\n".join(self.output), file=self.outstream)
+ self.outstream.flush()
+ except IOError:
+ # Fix for FS#33. Catches "broken pipe" when doxygen closes
+ # stdout prematurely upon usage of INPUT_FILTER, INLINE_SOURCES
+ # and FILTER_SOURCE_FILES.
+ pass
+ self.output = []
+
+ def catchall(self, input):
+ """The catchall-condition, always returns true."""
+ return True
+
+ def resetCommentSearch(self, match):
+ """Restarts a new comment search for a different triggering line.
+
+ Closes the current commentblock and starts a new comment search.
+ """
+ if args.debug:
+ print("# CALLBACK: resetCommentSearch", file=sys.stderr)
+ self.__closeComment()
+ self.startCommentSearch(match)
+
+ def startCommentSearch(self, match):
+ """Starts a new comment search.
+
+ Saves the triggering line, resets the current comment and saves
+ the current indentation.
+ """
+ if args.debug:
+ print("# CALLBACK: startCommentSearch", file=sys.stderr)
+ self.defclass = [self.fsm.current_input]
+ self.comment = []
+ self.indent = match.group(1)
+
+ def stopCommentSearch(self, match):
+ """Stops a comment search.
+
+ Closes the current commentblock, resets the triggering line and
+ appends the current line to the output.
+ """
+ if args.debug:
+ print("# CALLBACK: stopCommentSearch", file=sys.stderr)
+ self.__closeComment()
+
+ self.defclass = []
+ self.output.append(self.fsm.current_input)
+
+ def appendFileheadLine(self, match):
+ """Appends a line in the FILEHEAD state.
+
+ Closes the open comment block, resets it and appends the current line.
+ """
+ if args.debug:
+ print("# CALLBACK: appendFileheadLine", file=sys.stderr)
+ self.__closeComment()
+ self.comment = []
+ self.output.append(self.fsm.current_input)
+
+ def appendCommentLine(self, match):
+ """Appends a comment line.
+
+ The comment delimiter is removed from multiline start and ends as
+ well as singleline comments.
+ """
+ if args.debug:
+ print("# CALLBACK: appendCommentLine", file=sys.stderr)
+ (from_state, to_state, condition, callback) = self.fsm.current_transition
+
+ # single line comment
+ if (from_state == "DEFCLASS" and to_state == "DEFCLASS_BODY") \
+ or (from_state == "FILEHEAD" and to_state == "FILEHEAD"):
+ # remove comment delimiter from begin and end of the line
+ activeCommentDelim = match.group(1)
+ line = self.fsm.current_input
+ self.comment.append(line[line.find(activeCommentDelim)+len(activeCommentDelim):line.rfind(activeCommentDelim)])
+
+ if (to_state == "DEFCLASS_BODY"):
+ self.__closeComment()
+ self.defclass = []
+ # multiline start
+ elif from_state == "DEFCLASS" or from_state == "FILEHEAD":
+ # remove comment delimiter from begin of the line
+ activeCommentDelim = match.group(1)
+ line = self.fsm.current_input
+ self.comment.append(line[line.find(activeCommentDelim)+len(activeCommentDelim):])
+ # multiline end
+ elif to_state == "DEFCLASS_BODY" or to_state == "FILEHEAD":
+ # remove comment delimiter from end of the line
+ activeCommentDelim = match.group(1)
+ line = self.fsm.current_input
+ self.comment.append(line[0:line.rfind(activeCommentDelim)])
+ if (to_state == "DEFCLASS_BODY"):
+ self.__closeComment()
+ self.defclass = []
+ # in multiline comment
+ else:
+ # just append the comment line
+ self.comment.append(self.fsm.current_input)
+
+ def appendNormalLine(self, match):
+ """Appends a line to the output."""
+ if args.debug:
+ print("# CALLBACK: appendNormalLine", file=sys.stderr)
+ self.output.append(self.fsm.current_input)
+
+ def appendDefclassLine(self, match):
+ """Appends a line to the triggering block."""
+ if args.debug:
+ print("# CALLBACK: appendDefclassLine", file=sys.stderr)
+ self.defclass.append(self.fsm.current_input)
+
+ def makeCommentBlock(self):
+ """Indents the current comment block with respect to the current
+ indentation level.
+
+ @returns a list of indented comment lines
+ """
+ doxyStart = "##"
+ commentLines = self.comment
+
+ commentLines = ["%s# %s" % (self.indent, x) for x in commentLines]
+ l = [self.indent + doxyStart]
+ l.extend(commentLines)
+
+ return l
+
+ def parse(self, input):
+ """Parses a python file given as input string and returns the doxygen-
+ compatible representation.
+
+ @param input the python code to parse
+ @returns the modified python code
+ """
+ lines = input.split("\n")
+
+ for line in lines:
+ self.fsm.makeTransition(line)
+
+ if self.fsm.current_state == "DEFCLASS":
+ self.__closeComment()
+
+ return "\n".join(self.output)
+
+ def parseFile(self, filename):
+ """Parses a python file given as input string and returns the doxygen-
+ compatible representation.
+
+ @param input the python code to parse
+ @returns the modified python code
+ """
+ f = open(filename, 'r')
+
+ for line in f:
+ self.parseLine(line.rstrip('\r\n'))
+ if self.fsm.current_state == "DEFCLASS":
+ self.__closeComment()
+ self.__flushBuffer()
+ f.close()
+
+ def parseLine(self, line):
+ """Parse one line of python and flush the resulting output to the
+ outstream.
+
+ @param line the python code line to parse
+ """
+ self.fsm.makeTransition(line)
+ self.__flushBuffer()
+
+def argParse():
+ """Parses commandline args."""
+ parser = ArgumentParser(prog=__applicationName__)
+
+ parser.add_argument("--version", action="version",
+ version="%(prog)s " + __version__
+ )
+ parser.add_argument("--autobrief", action="store_true",
+ help="use the docstring summary line as \\brief description"
+ )
+ parser.add_argument("--debug", action="store_true",
+ help="enable debug output on stderr"
+ )
+ parser.add_argument("filename", metavar="FILENAME")
+
+ return parser.parse_args()
def main():
- """Starts the parser on the file given by the filename as the first
- argument on the commandline.
- """
- filename = optParse()
- fsm = Doxypy()
- fsm.parseFile(filename)
+ """Starts the parser on the file given by the filename as the first
+ argument on the commandline.
+ """
+ global args
+ args = argParse()
+ fsm = Doxypy()
+ fsm.parseFile(args.filename)
if __name__ == "__main__":
- main()
+ main()
diff --git a/docs/doxygen/other/group_defs.dox b/docs/doxygen/other/group_defs.dox
index 8edc8ab5ef..7ec67bde23 100644
--- a/docs/doxygen/other/group_defs.dox
+++ b/docs/doxygen/other/group_defs.dox
@@ -29,7 +29,6 @@
/*! \defgroup deprecated_blk Deprecated */
/*! \defgroup equalizers_blk Equalizers */
/*! \defgroup error_coding_blk Error Coding and Decoding */
-/*! \defgroup fcd_blk FCD Interface */
/*! \defgroup file_operators_blk File Operators */
/*! \defgroup filter_blk Filters */
/*! \defgroup fourier_analysis_blk Fourier Analysis */
@@ -41,11 +40,9 @@
/*! \defgroup misc_blk Miscellaneous */
/*! \defgroup modulators_blk Modulators and Demodulators */
/*! \defgroup networking_tools_blk Networking Tools */
-/*! \defgroup noaa_blk NOAA Blocks */
/*! \defgroup ofdm_blk OFDM Blocks */
/*! \defgroup packet_operators_blk Packet/Frame Operators */
/*! \defgroup peak_detectors_blk Peak Detectors */
-/*! \defgroup pager_blk Pager Blocks */
/*! \defgroup qtgui_blk QT Graphical Interfaces */
/*! \defgroup resamplers_blk Resamplers */
/*! \defgroup stream_operators_blk Streams Operators */
@@ -57,7 +54,6 @@
/*! \defgroup uhd_blk UHD Interface */
/*! \defgroup waveform_generators_blk Waveform Generators */
/*! \defgroup wavelet_blk Wavelet Transforms */
-/*! \defgroup wxgui_blk WX Graphical Interfaces */
/*!
* \defgroup base_blk Base classes for GR Blocks
@@ -77,16 +73,6 @@
* @{
*/
-/*!
- * \defgroup atsc ATSC
- * ATSC Applications...
- */
-
-/*!
- * \defgroup pager Pager
- * Pager Applications
- */
-
/*! @} */
/*! \defgroup hardware Misc Hardware Control */
diff --git a/docs/doxygen/other/logger.dox b/docs/doxygen/other/logger.dox
index c8e4a5daa2..00387768c0 100644
--- a/docs/doxygen/other/logger.dox
+++ b/docs/doxygen/other/logger.dox
@@ -17,12 +17,6 @@ from log4cpp (http://log4cpp.sourceforge.net/) which is readily
available in most Linux distributions. This is an optional dependency
and GNU Radio will work without it.
-When configuring GNU Radio, the -DENABLE_GR_LOG=On|Off option to cmake
-will allow the user to toggle use of the logger on and off. The logger
-defaults to "on" and will use log4cpp if it is available. If log4cpp
-is not found, the default logging will output to standard output or
-standard error, depending on the level of the log message.
-
Logging is useful for blocks to print out certain amounts of data at
different levels. These levels are:
diff --git a/docs/doxygen/swig_doc.py b/docs/doxygen/swig_doc.py
index c9e89aec1b..307920d776 100644
--- a/docs/doxygen/swig_doc.py
+++ b/docs/doxygen/swig_doc.py
@@ -26,6 +26,7 @@ The file instructs SWIG to transfer the doxygen comments into the
python docstrings.
"""
+from __future__ import unicode_literals
import sys, time
@@ -84,8 +85,8 @@ def utoascii(text):
if text is None:
return ''
out = text.encode('ascii', 'replace')
- out = out.replace('"', '\\"')
- return out
+ out = out.replace(b'"', b'\\"').decode('ascii')
+ return str(out)
def combine_descriptions(obj):
@@ -301,7 +302,7 @@ def make_swig_interface_file(di, swigdocfilename, custom_output=None):
output = "\n\n".join(output)
- swig_doc = file(swigdocfilename, 'w')
+ swig_doc = open(swigdocfilename, 'w')
swig_doc.write(output)
swig_doc.close()
@@ -309,7 +310,7 @@ if __name__ == "__main__":
# Parse command line options and set up doxyxml.
err_msg = "Execute using: python swig_doc.py xml_path outputfilename"
if len(sys.argv) != 3:
- raise StandardError(err_msg)
+ raise Exception(err_msg)
xml_path = sys.argv[1]
swigdocfilename = sys.argv[2]
di = DoxyIndex(xml_path)
diff --git a/docs/exploring-gnuradio/CMakeLists.txt b/docs/exploring-gnuradio/CMakeLists.txt
index 5f5e2113cd..422b1ce85c 100644
--- a/docs/exploring-gnuradio/CMakeLists.txt
+++ b/docs/exploring-gnuradio/CMakeLists.txt
@@ -26,5 +26,4 @@ install(
fm_rx.grc
fm_demod.py
DESTINATION ${GR_PKG_DOC_DIR}
- COMPONENT "docs"
)
diff --git a/docs/exploring-gnuradio/dial_tone.py b/docs/exploring-gnuradio/dial_tone.py
index ba43c43bfc..08498a84e0 100755..100644
--- a/docs/exploring-gnuradio/dial_tone.py
+++ b/docs/exploring-gnuradio/dial_tone.py
@@ -20,6 +20,7 @@
# Boston, MA 02110-1301, USA.
#
+from __future__ import unicode_literals
from gnuradio import gr
from gnuradio import audio
from gnuradio import analog
@@ -40,5 +41,5 @@ def build_graph():
if __name__ == '__main__':
tb = build_graph()
tb.start()
- raw_input('Press Enter to quit: ')
+ input('Press Enter to quit: ')
tb.stop()
diff --git a/docs/exploring-gnuradio/fm_demod.py b/docs/exploring-gnuradio/fm_demod.py
index 8e8b6425f9..a297e78a76 100755..100644
--- a/docs/exploring-gnuradio/fm_demod.py
+++ b/docs/exploring-gnuradio/fm_demod.py
@@ -20,6 +20,8 @@
# Boston, MA 02110-1301, USA.
#
+from __future__ import division
+from __future__ import unicode_literals
from gnuradio import gr
from gnuradio import blocks
from gnuradio import filter
@@ -46,7 +48,7 @@ class build_graph(gr.top_block):
# Set the demodulator using the same deviation as the receiver.
max_dev = 75e3
- fm_demod_gain = input_rate/(2*math.pi*max_dev/8.0)
+ fm_demod_gain = input_rate / (2*math.pi*max_dev/8.0)
fm_demod = analog.quadrature_demod_cf(fm_demod_gain)
# Create a filter for the resampler and filter the audio
@@ -80,7 +82,7 @@ class build_graph(gr.top_block):
def main(args):
tb = build_graph()
tb.start() # fork thread and return
- raw_input('Press Enter to quit: ')
+ input('Press Enter to quit: ')
tb.stop()
if __name__ == '__main__':
diff --git a/docs/sphinx/gnuradio_sphinx.py b/docs/sphinx/gnuradio_sphinx.py
index 22b96c32e7..cdfd46ceca 100644
--- a/docs/sphinx/gnuradio_sphinx.py
+++ b/docs/sphinx/gnuradio_sphinx.py
@@ -1,6 +1,7 @@
"""
Customizations of sphinx for gnuradio use.
"""
+from __future__ import unicode_literals
from sphinx.ext.autodoc import py_ext_sig_re
from sphinx.ext.autodoc import ClassDocumenter, FunctionDocumenter, members_option
diff --git a/docs/sphinx/hieroglyph/__init__.py b/docs/sphinx/hieroglyph/__init__.py
index 25dea27fba..d6b00fc049 100644
--- a/docs/sphinx/hieroglyph/__init__.py
+++ b/docs/sphinx/hieroglyph/__init__.py
@@ -1,6 +1,7 @@
+from __future__ import unicode_literals
# We only need to expose the setup function to Sphinx
from .hieroglyph import setup
from .version import __version__
-__author__ = 'Robert Smallshire' \ No newline at end of file
+__author__ = 'Robert Smallshire'
diff --git a/docs/sphinx/hieroglyph/errors.py b/docs/sphinx/hieroglyph/errors.py
index 9c1d2213b2..9f7cde9570 100644
--- a/docs/sphinx/hieroglyph/errors.py
+++ b/docs/sphinx/hieroglyph/errors.py
@@ -1,3 +1,4 @@
+from __future__ import unicode_literals
from sphinx.errors import ExtensionError
@@ -7,4 +8,4 @@ class HieroglyphError(ExtensionError):
'''
An exception type specific to the Hieroglyph Sphinx extension.
'''
- pass \ No newline at end of file
+ pass
diff --git a/docs/sphinx/hieroglyph/hieroglyph.py b/docs/sphinx/hieroglyph/hieroglyph.py
index 0056d9ab8a..bb58a6e04b 100644
--- a/docs/sphinx/hieroglyph/hieroglyph.py
+++ b/docs/sphinx/hieroglyph/hieroglyph.py
@@ -1,9 +1,11 @@
from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import unicode_literals
import re
-from errors import HieroglyphError
-from nodes import (Node, Raises, Except, Note, Warning, Returns, Arg,
+from .errors import HieroglyphError
+from .nodes import (Node, Raises, Except, Note, Warning, Returns, Arg,
ensure_terminal_blank)
__author__ = 'Robert Smallshire'
diff --git a/docs/sphinx/hieroglyph/nodes.py b/docs/sphinx/hieroglyph/nodes.py
index f0c08b5621..1c091ab6a0 100644
--- a/docs/sphinx/hieroglyph/nodes.py
+++ b/docs/sphinx/hieroglyph/nodes.py
@@ -1,3 +1,4 @@
+from __future__ import unicode_literals
__author__ = 'Robert Smallshire'
class Node(object):
diff --git a/docs/sphinx/hieroglyph/test/__init__.py b/docs/sphinx/hieroglyph/test/__init__.py
index c9b674ead2..c568b0851f 100644
--- a/docs/sphinx/hieroglyph/test/__init__.py
+++ b/docs/sphinx/hieroglyph/test/__init__.py
@@ -1 +1,2 @@
+from __future__ import unicode_literals
__author__ = 'rjs'
diff --git a/docs/sphinx/hieroglyph/test/test_comments.py b/docs/sphinx/hieroglyph/test/test_comments.py
index d1a1453ee1..1cc569605c 100644
--- a/docs/sphinx/hieroglyph/test/test_comments.py
+++ b/docs/sphinx/hieroglyph/test/test_comments.py
@@ -1,3 +1,4 @@
+from __future__ import unicode_literals
import unittest
from hieroglyph.hieroglyph import parse_hieroglyph_text
diff --git a/docs/sphinx/hieroglyph/test/test_hierglyph.py b/docs/sphinx/hieroglyph/test/test_hierglyph.py
index 4f86db5784..7815960905 100644
--- a/docs/sphinx/hieroglyph/test/test_hierglyph.py
+++ b/docs/sphinx/hieroglyph/test/test_hierglyph.py
@@ -1,3 +1,4 @@
+from __future__ import unicode_literals
import unittest
from hieroglyph.hieroglyph import first_paragraph_indent, gather_lines, unindent
diff --git a/docs/sphinx/hieroglyph/test/test_nodes.py b/docs/sphinx/hieroglyph/test/test_nodes.py
index 12cd25a03e..4b6003c91a 100644
--- a/docs/sphinx/hieroglyph/test/test_nodes.py
+++ b/docs/sphinx/hieroglyph/test/test_nodes.py
@@ -1,3 +1,4 @@
+from __future__ import unicode_literals
import unittest
from hieroglyph.nodes import Node, Arg, Raises, Except, Returns, Warning, Note
diff --git a/docs/sphinx/hieroglyph/version.py b/docs/sphinx/hieroglyph/version.py
index b35385b6b8..f823af4363 100644
--- a/docs/sphinx/hieroglyph/version.py
+++ b/docs/sphinx/hieroglyph/version.py
@@ -1,3 +1,4 @@
'''Specification of the hieroglyph version'''
+from __future__ import unicode_literals
__version__ = '0.6'
diff --git a/docs/sphinx/source/blocks_blocks.rst b/docs/sphinx/source/blocks_blocks.rst
index f214e01c47..5780d753bd 100644
--- a/docs/sphinx/source/blocks_blocks.rst
+++ b/docs/sphinx/source/blocks_blocks.rst
@@ -87,8 +87,6 @@ gnuradio.blocks
.. autoblock:: gnuradio.blocks.max_ss
.. autoblock:: gnuradio.blocks.message_burst_source
.. autoblock:: gnuradio.blocks.message_debug
-.. autoblock:: gnuradio.blocks.message_sink
-.. autoblock:: gnuradio.blocks.message_source
.. autoblock:: gnuradio.blocks.message_strobe
.. autoblock:: gnuradio.blocks.message_strobe_random
.. autoblock:: gnuradio.blocks.min_ff
diff --git a/docs/sphinx/source/digital.rst b/docs/sphinx/source/digital.rst
index e15c9166d9..415f4a3929 100644
--- a/docs/sphinx/source/digital.rst
+++ b/docs/sphinx/source/digital.rst
@@ -56,8 +56,6 @@ gnuradio.digital
.. autofunction:: gnuradio.digital.packet_utils.make_header
.. autofunction:: gnuradio.digital.packet_utils.make_packet
.. autofunction:: gnuradio.digital.packet_utils.unmake_packet
-.. autoclass:: gnuradio.digital.mod_pkts
-.. autoclass:: gnuradio.digital.demod_pkts
.. autofunction:: gnuradio.digital.psk_2_0x0
.. autofunction:: gnuradio.digital.psk_2_0x1
.. autofunction:: gnuradio.digital.sd_psk_2_0x0
@@ -79,8 +77,6 @@ gnuradio.digital
.. autofunction:: gnuradio.digital.sd_psk_4_0x2_1_0
.. autofunction:: gnuradio.digital.sd_psk_4_0x3_1_0
.. autofunction:: gnuradio.digital.psk_constellation
-.. autoclass:: gnuradio.digital.psk_mod
-.. autoclass:: gnuradio.digital.psk_demod
.. autofunction:: gnuradio.digital.qam_16_0x0_0_1_2_3
.. autofunction:: gnuradio.digital.qam_16_0x1_0_1_2_3
.. autofunction:: gnuradio.digital.qam_16_0x2_0_1_2_3
@@ -101,14 +97,8 @@ gnuradio.digital
.. autofunction:: gnuradio.digital.make_differential_constellation
.. autofunction:: gnuradio.digital.make_non_differential_constellation
.. autofunction:: gnuradio.digital.qam_constellation
-.. autoclass:: gnuradio.digital.qam_mod
-.. autoclass:: gnuradio.digital.qam_demod
.. autofunction:: gnuradio.digital.qpsk_constellation
-.. autoclass:: gnuradio.digital.qpsk_mod
-.. autoclass:: gnuradio.digital.qpsk_demod
.. autofunction:: gnuradio.digital.dqpsk_constellation
-.. autoclass:: gnuradio.digital.dqpsk_mod
-.. autoclass:: gnuradio.digital.dqpsk_demod
.. autofunction:: gnuradio.digital.soft_dec_table_generator
.. autofunction:: gnuradio.digital.soft_dec_table
.. autofunction:: gnuradio.digital.calc_soft_dec_from_table
diff --git a/docs/sphinx/source/digital_blocks.rst b/docs/sphinx/source/digital_blocks.rst
index 1dfd017069..faee4c179c 100644
--- a/docs/sphinx/source/digital_blocks.rst
+++ b/docs/sphinx/source/digital_blocks.rst
@@ -43,7 +43,6 @@ gnuradio.digital
.. autoblock:: gnuradio.digital.kurtotic_equalizer_cc
.. autoblock:: gnuradio.digital.lms_dd_equalizer_cc
.. autoblock:: gnuradio.digital.map_bb
-.. autoblock:: gnuradio.digital.mpsk_receiver_cc
.. autoblock:: gnuradio.digital.mpsk_snr_est_cc
.. autoblock:: gnuradio.digital.msk_timing_recovery_cc
.. autoblock:: gnuradio.digital.ofdm_carrier_allocator_cvc
diff --git a/docs/sphinx/source/fcd_blocks.rst b/docs/sphinx/source/fcd_blocks.rst
deleted file mode 100644
index 8aed544c97..0000000000
--- a/docs/sphinx/source/fcd_blocks.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-gnuradio.fcd
-============
-
-.. automodule:: gnuradio.fcd
-
-.. autoblock:: gnuradio.fcd.source_c
diff --git a/docs/sphinx/source/filter_blocks.rst b/docs/sphinx/source/filter_blocks.rst
index 1ad2705e7e..50eee7db58 100644
--- a/docs/sphinx/source/filter_blocks.rst
+++ b/docs/sphinx/source/filter_blocks.rst
@@ -16,10 +16,10 @@ gnuradio.filters
.. autoblock:: gnuradio.filter.fir_filter_fff
.. autoblock:: gnuradio.filter.fir_filter_fsf
.. autoblock:: gnuradio.filter.fir_filter_scc
-.. autoblock:: gnuradio.filter.fractional_interpolator_cc
-.. autoblock:: gnuradio.filter.fractional_interpolator_ff
-.. autoblock:: gnuradio.filter.fractional_resampler_cc
-.. autoblock:: gnuradio.filter.fractional_resampler_ff
+.. autoblock:: gnuradio.filter.mmse_interpolator_cc
+.. autoblock:: gnuradio.filter.mmse_interpolator_ff
+.. autoblock:: gnuradio.filter.mmse_resampler_cc
+.. autoblock:: gnuradio.filter.mmse_resampler_ff
.. autoblock:: gnuradio.filter.freq_xlating_fir_filter_ccc
.. autoblock:: gnuradio.filter.freq_xlating_fir_filter_ccf
.. autoblock:: gnuradio.filter.freq_xlating_fir_filter_fcc
diff --git a/docs/sphinx/source/index.rst b/docs/sphinx/source/index.rst
index 5c14d22cce..38ef409b7c 100644
--- a/docs/sphinx/source/index.rst
+++ b/docs/sphinx/source/index.rst
@@ -13,19 +13,15 @@ gnuradio
blocks_comedi <comedi_blocks>
blocks_digital <digital_blocks>
blocks_dtv <dtv_blocks>
- blocks_fcd <fcd_blocks>
blocks_fec <fec_blocks>
blocks_fft <fft_blocks>
blocks_filter <filter_blocks>
- blocks_noaa <noaa_blocks>
- blocks_pager <pager_blocks>
blocks_qtgui <qtgui_blocks>
blocks_trellis <trellis_blocks>
blocks_uhd <uhd_blocks>
blocks_video_sdl <video_sdl_blocks>
blocks_vocoder <vocoder_blocks>
blocks_wavelet <wavelet_blocks>
- blocks_wxgui <wxgui_blocks>
blocks_zeromq <zeromq_blocks>
analog <analog>
channels <channels>
@@ -37,7 +33,6 @@ gnuradio
trellis <trellis>
uhd <uhd>
vocoder <vocoder>
- wxgui <wxgui>
.. automodule:: gnuradio
.. automodule:: pmt
@@ -524,15 +519,6 @@ Error Coding Blocks
gnuradio.fec.tagged_encoder
-FCD Blocks
-----------
-
-.. autosummary::
- :nosignatures:
-
- gnuradio.fcd.source_c
-
-
File Operator Blocks
--------------------
@@ -567,10 +553,10 @@ Filter Blocks
gnuradio.filter.fir_filter_fff
gnuradio.filter.fir_filter_fsf
gnuradio.filter.fir_filter_scc
- gnuradio.filter.fractional_interpolator_cc
- gnuradio.filter.fractional_interpolator_ff
- gnuradio.filter.fractional_resampler_cc
- gnuradio.filter.fractional_resampler_ff
+ gnuradio.filter.mmse_interpolator_cc
+ gnuradio.filter.mmse_interpolator_ff
+ gnuradio.filter.mmse_resampler_cc
+ gnuradio.filter.mmse_resampler_ff
gnuradio.filter.freq_xlating_fir_filter_ccc
gnuradio.filter.freq_xlating_fir_filter_ccf
gnuradio.filter.freq_xlating_fir_filter_fcc
@@ -656,8 +642,6 @@ Instrumentation Blocks
gnuradio.qtgui.vector_sink_f
gnuradio.qtgui.waterfall_sink_c
gnuradio.qtgui.waterfall_sink_f
- gnuradio.wxgui.histo_sink_f
- gnuradio.wxgui.oscope_sink_f
@@ -789,8 +773,6 @@ Message Tool Blocks
gnuradio.blocks.message_burst_source
gnuradio.blocks.message_debug
- gnuradio.blocks.message_sink
- gnuradio.blocks.message_source
gnuradio.blocks.message_strobe
gnuradio.blocks.message_strobe_random
gnuradio.blocks.pdu_filter
@@ -859,17 +841,6 @@ Networking Tools Blocks
gnuradio.blocks.udp_source
-NOAA Blocks
------------
-
-.. autosummary::
- :nosignatures:
-
- gnuradio.noaa.hrpt_decoder
- gnuradio.noaa.hrpt_deframer
- gnuradio.noaa.hrpt_pll_cf
-
-
OFDM Blocks
-----------
@@ -913,20 +884,7 @@ Packet Operator Blocks
gnuradio.digital.simple_correlator
gnuradio.digital.simple_framer
-
-Pager Blocks
-------------
-
-.. autosummary::
- :nosignatures:
-
- gnuradio.pager.flex_deinterleave
- gnuradio.pager.flex_frame
- gnuradio.pager.flex_parse
- gnuradio.pager.flex_sync
- gnuradio.pager.slicer_fb
-
-
+
Peak Detector Blocks
--------------------
@@ -947,8 +905,8 @@ Resampler Blocks
.. autosummary::
:nosignatures:
- gnuradio.filter.fractional_resampler_cc
- gnuradio.filter.fractional_resampler_ff
+ gnuradio.filter.mmse_resampler_cc
+ gnuradio.filter.mmse_resampler_ff
gnuradio.filter.pfb.arb_resampler_ccf
gnuradio.filter.pfb.arb_resampler_fff
gnuradio.filter.pfb.arb_resampler_ccc
@@ -1042,7 +1000,6 @@ Synchronizer Blocks
gnuradio.digital.corr_est_cc
gnuradio.digital.costas_loop_cc
gnuradio.digital.fll_band_edge_cc
- gnuradio.digital.mpsk_receiver_cc
gnuradio.digital.msk_timing_recovery_cc
gnuradio.analog.pll_carriertracking_cc
gnuradio.analog.pll_freqdet_cf
@@ -1300,8 +1257,6 @@ Helper Classes: Digital
gnuradio.digital.packet_utils.make_header
gnuradio.digital.packet_utils.make_packet
gnuradio.digital.packet_utils.unmake_packet
- gnuradio.digital.mod_pkts
- gnuradio.digital.demod_pkts
gnuradio.digital.psk_2_0x0
gnuradio.digital.psk_2_0x1
gnuradio.digital.sd_psk_2_0x0
@@ -1323,8 +1278,6 @@ Helper Classes: Digital
gnuradio.digital.sd_psk_4_0x2_1_0
gnuradio.digital.sd_psk_4_0x3_1_0
gnuradio.digital.psk_constellation
- gnuradio.digital.psk_mod
- gnuradio.digital.psk_demod
gnuradio.digital.qam_16_0x0_0_1_2_3
gnuradio.digital.qam_16_0x1_0_1_2_3
gnuradio.digital.qam_16_0x2_0_1_2_3
@@ -1345,14 +1298,8 @@ Helper Classes: Digital
gnuradio.digital.make_differential_constellation
gnuradio.digital.make_non_differential_constellation
gnuradio.digital.qam_constellation
- gnuradio.digital.qam_mod
- gnuradio.digital.qam_demod
gnuradio.digital.qpsk_constellation
- gnuradio.digital.qpsk_mod
- gnuradio.digital.qpsk_demod
gnuradio.digital.dqpsk_constellation
- gnuradio.digital.dqpsk_mod
- gnuradio.digital.dqpsk_demod
gnuradio.digital.soft_dec_table_generator
gnuradio.digital.soft_dec_table
gnuradio.digital.calc_soft_dec_from_table
@@ -1464,13 +1411,3 @@ Helper Classes: Vocoder
gnuradio.vocoder.codec2
gnuradio.vocoder.cvsd_encode_fb
gnuradio.vocoder.cvsd_decode_bf
-
-
-Helper Classes: WXGUI
----------------------
-
-.. autosummary::
- :nosignatures:
-
- gnuradio.wxgui.oscope_sink_x
- gnuradio.wxgui.histo_sink_f
diff --git a/docs/sphinx/source/noaa_blocks.rst b/docs/sphinx/source/noaa_blocks.rst
deleted file mode 100644
index 711ce42785..0000000000
--- a/docs/sphinx/source/noaa_blocks.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-gnuradio.noaa
-=============
-
-.. automodule:: gnuradio.noaa
-
-.. autoblock:: gnuradio.noaa.hrpt_decoder
-.. autoblock:: gnuradio.noaa.hrpt_deframer
-.. autoblock:: gnuradio.noaa.hrpt_pll_cf
diff --git a/docs/sphinx/source/pager_blocks.rst b/docs/sphinx/source/pager_blocks.rst
deleted file mode 100644
index 5eef083aa5..0000000000
--- a/docs/sphinx/source/pager_blocks.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-gnuradio.pager
-==============
-
-.. automodule:: gnuradio.pager
-
-.. autoblock:: gnuradio.pager.flex_deinterleave
-.. autoblock:: gnuradio.pager.flex_frame
-.. autoblock:: gnuradio.pager.flex_parse
-.. autoblock:: gnuradio.pager.flex_sync
-.. autoblock:: gnuradio.pager.slicer_fb
diff --git a/docs/sphinx/source/wxgui.rst b/docs/sphinx/source/wxgui.rst
deleted file mode 100644
index dcaa4a8e4a..0000000000
--- a/docs/sphinx/source/wxgui.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-gnuradio.wxgui
-==============
-
-.. autoclass:: gnuradio.wxgui.oscope_sink_x
-.. autoclass:: gnuradio.wxgui.histo_sink_f
diff --git a/docs/sphinx/source/wxgui_blocks.rst b/docs/sphinx/source/wxgui_blocks.rst
deleted file mode 100644
index ccccd854da..0000000000
--- a/docs/sphinx/source/wxgui_blocks.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-gnuradio.wxgui
-==============
-
-.. automodule:: gnuradio.wxgui
-
-.. autoblock:: gnuradio.wxgui.histo_sink_f
-.. autoblock:: gnuradio.wxgui.oscope_sink_f