summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ham/Makefile3
-rw-r--r--ham/gnuradio-channels/Makefile3
-rw-r--r--ham/gnuradio-channels/PLIST4
-rw-r--r--ham/gnuradio-companion/Makefile3
-rw-r--r--ham/gnuradio-companion/PLIST14
-rw-r--r--ham/gnuradio-core/Makefile3
-rw-r--r--ham/gnuradio-core/Makefile.common9
-rw-r--r--ham/gnuradio-core/PLIST55
-rw-r--r--ham/gnuradio-core/buildlink3.mk8
-rw-r--r--ham/gnuradio-core/distinfo13
-rw-r--r--ham/gnuradio-core/patches/patch-cmake_Modules_GrPybind.cmake15
-rw-r--r--ham/gnuradio-core/patches/patch-gnuradio-runtime_CMakeLists.txt15
-rw-r--r--ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_CMakeLists.txt15
-rw-r--r--ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_constants.cc.in10
-rw-r--r--ham/gnuradio-core/version.mk4
-rw-r--r--ham/gnuradio-ctrlport/Makefile3
-rw-r--r--ham/gnuradio-ctrlport/buildlink3.mk5
-rw-r--r--ham/gnuradio-digital/Makefile3
-rw-r--r--ham/gnuradio-digital/PLIST23
-rw-r--r--ham/gnuradio-digital/buildlink3.mk5
-rw-r--r--ham/gnuradio-doxygen/Makefile3
-rw-r--r--ham/gnuradio-doxygen/PLIST1174
-rw-r--r--ham/gnuradio-dtv/Makefile3
-rw-r--r--ham/gnuradio-dtv/PLIST5
-rw-r--r--ham/gnuradio-dtv/buildlink3.mk5
-rw-r--r--ham/gnuradio-fec/Makefile3
-rw-r--r--ham/gnuradio-fec/PLIST4
-rw-r--r--ham/gnuradio-fec/buildlink3.mk5
-rw-r--r--ham/gnuradio-network/Makefile3
-rw-r--r--ham/gnuradio-network/PLIST8
-rw-r--r--ham/gnuradio-pdu/DESCR7
-rw-r--r--ham/gnuradio-pdu/Makefile17
-rw-r--r--ham/gnuradio-pdu/PLIST48
-rw-r--r--ham/gnuradio-pdu/buildlink3.mk12
-rw-r--r--ham/gnuradio-qtgui/Makefile3
-rw-r--r--ham/gnuradio-qtgui/PLIST4
-rw-r--r--ham/gnuradio-soapy-sdr/Makefile3
-rw-r--r--ham/gnuradio-soapy-sdr/PLIST4
-rw-r--r--ham/gnuradio-soapy-sdr/buildlink3.mk4
-rw-r--r--ham/gnuradio-trellis/Makefile3
-rw-r--r--ham/gnuradio-trellis/PLIST4
-rw-r--r--ham/gnuradio-trellis/buildlink3.mk5
-rw-r--r--ham/gnuradio-uhd/Makefile3
-rw-r--r--ham/gnuradio-uhd/PLIST4
-rw-r--r--ham/gnuradio-uhd/buildlink3.mk5
-rw-r--r--ham/gnuradio-utils/Makefile3
-rw-r--r--ham/gnuradio-utils/PLIST27
-rw-r--r--ham/gnuradio-utils/buildlink3.mk5
-rw-r--r--ham/gnuradio-video-sdl/Makefile3
-rw-r--r--ham/gnuradio-video-sdl/PLIST4
-rw-r--r--ham/gnuradio-video-sdl/buildlink3.mk5
-rw-r--r--ham/gnuradio-vocoder/Makefile3
-rw-r--r--ham/gnuradio-vocoder/PLIST4
-rw-r--r--ham/gnuradio-vocoder/buildlink3.mk5
-rw-r--r--ham/gnuradio-wavelet/Makefile3
-rw-r--r--ham/gnuradio-wavelet/PLIST4
-rw-r--r--ham/gnuradio-wavelet/buildlink3.mk5
-rw-r--r--ham/gnuradio-zeromq/Makefile3
-rw-r--r--ham/gnuradio-zeromq/PLIST4
-rw-r--r--ham/gnuradio-zeromq/buildlink3.mk5
-rw-r--r--ham/gnuradio-zeromq/files/zmq.hpp2986
-rw-r--r--meta-pkgs/gnuradio/Makefile3
62 files changed, 3701 insertions, 923 deletions
diff --git a/ham/Makefile b/ham/Makefile
index 8a5a28724b5..e331e958f9e 100644
--- a/ham/Makefile
+++ b/ham/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.50 2021/06/27 08:12:28 tnn Exp $
+# $NetBSD: Makefile,v 1.51 2022/01/16 18:06:25 tnn Exp $
#
COMMENT= Wireless communication tools and applications
@@ -22,6 +22,7 @@ SUBDIR+= gnuradio-doxygen
SUBDIR+= gnuradio-dtv
SUBDIR+= gnuradio-fec
SUBDIR+= gnuradio-network
+SUBDIR+= gnuradio-pdu
SUBDIR+= gnuradio-qtgui
SUBDIR+= gnuradio-soapy-sdr
SUBDIR+= gnuradio-trellis
diff --git a/ham/gnuradio-channels/Makefile b/ham/gnuradio-channels/Makefile
index 10541a4cf1b..6ba02ab6a00 100644
--- a/ham/gnuradio-channels/Makefile
+++ b/ham/gnuradio-channels/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.33 2022/01/10 01:46:35 ryoon Exp $
+# $NetBSD: Makefile,v 1.34 2022/01/16 18:06:25 tnn Exp $
PKGNAME= gnuradio-channels-${VERSION}
-PKGREVISION= 1
COMMENT= Signal processing blocks to simulate channel models of GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-channels/PLIST b/ham/gnuradio-channels/PLIST
index 3e87d8f8b18..f95cf4ae357 100644
--- a/ham/gnuradio-channels/PLIST
+++ b/ham/gnuradio-channels/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.7 2021/12/11 14:57:49 tnn Exp $
+@comment $NetBSD: PLIST,v 1.8 2022/01/16 18:06:25 tnn Exp $
include/gnuradio/channels/api.h
include/gnuradio/channels/channel_model.h
include/gnuradio/channels/channel_model2.h
@@ -9,7 +9,7 @@ lib/cmake/gnuradio/gnuradio-channelsConfig.cmake
lib/cmake/gnuradio/gnuradio-channelsTargets-release.cmake
lib/cmake/gnuradio/gnuradio-channelsTargets.cmake
lib/libgnuradio-channels.so
-lib/libgnuradio-channels.so.3.9.4
+lib/libgnuradio-channels.so.3.10.0
lib/libgnuradio-channels.so.${PKGVERSION}
lib/pkgconfig/gnuradio-channels.pc
${PYSITELIB}/gnuradio/channels/__init__.py
diff --git a/ham/gnuradio-companion/Makefile b/ham/gnuradio-companion/Makefile
index e44fe27e59e..ace9a9f3aad 100644
--- a/ham/gnuradio-companion/Makefile
+++ b/ham/gnuradio-companion/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.52 2022/01/10 01:46:35 ryoon Exp $
+# $NetBSD: Makefile,v 1.53 2022/01/16 18:06:25 tnn Exp $
PKGNAME= gnuradio-companion-${VERSION}
-PKGREVISION= 1
COMMENT= User interface entry of GNU Radio
#CONF_FILES+= ${EGDIR}/grc.conf ${PKG_SYSCONFDIR}/grc.conf
diff --git a/ham/gnuradio-companion/PLIST b/ham/gnuradio-companion/PLIST
index b28979ef438..16d55b70684 100644
--- a/ham/gnuradio-companion/PLIST
+++ b/ham/gnuradio-companion/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.12 2021/12/11 14:57:49 tnn Exp $
+@comment $NetBSD: PLIST,v 1.13 2022/01/16 18:06:25 tnn Exp $
bin/gnuradio-companion
bin/grcc
${PYSITELIB}/gnuradio/grc/__init__.py
@@ -418,10 +418,6 @@ share/gnuradio/grc/blocks/blocks_or_xx.block.yml
share/gnuradio/grc/blocks/blocks_pack_k_bits_bb.block.yml
share/gnuradio/grc/blocks/blocks_packed_to_unpacked_xx.block.yml
share/gnuradio/grc/blocks/blocks_patterned_interleaver.block.yml
-share/gnuradio/grc/blocks/blocks_pdu_filter.block.yml
-share/gnuradio/grc/blocks/blocks_pdu_remove.block.yml
-share/gnuradio/grc/blocks/blocks_pdu_set.block.yml
-share/gnuradio/grc/blocks/blocks_pdu_to_tagged_stream.block.yml
share/gnuradio/grc/blocks/blocks_peak_detector2_fb.block.yml
share/gnuradio/grc/blocks/blocks_peak_detector_xb.block.yml
share/gnuradio/grc/blocks/blocks_phase_shift.block.yml
@@ -429,7 +425,6 @@ share/gnuradio/grc/blocks/blocks_plateau_detector_fb.block.yml
share/gnuradio/grc/blocks/blocks_probe_rate.block.yml
share/gnuradio/grc/blocks/blocks_probe_signal_vx.block.yml
share/gnuradio/grc/blocks/blocks_probe_signal_x.block.yml
-share/gnuradio/grc/blocks/blocks_random_pdu.block.yml
share/gnuradio/grc/blocks/blocks_regenerate_bb.block.yml
share/gnuradio/grc/blocks/blocks_repack_bits_bb.block.yml
share/gnuradio/grc/blocks/blocks_repeat.block.yml
@@ -440,7 +435,6 @@ share/gnuradio/grc/blocks/blocks_selector.block.yml
share/gnuradio/grc/blocks/blocks_short_to_char.block.yml
share/gnuradio/grc/blocks/blocks_short_to_float.block.yml
share/gnuradio/grc/blocks/blocks_skiphead.block.yml
-share/gnuradio/grc/blocks/blocks_socket_pdu.block.yml
share/gnuradio/grc/blocks/blocks_stream_demux.block.yml
share/gnuradio/grc/blocks/blocks_stream_mux.block.yml
share/gnuradio/grc/blocks/blocks_stream_to_streams.block.yml
@@ -459,17 +453,12 @@ share/gnuradio/grc/blocks/blocks_tagged_file_sink.block.yml
share/gnuradio/grc/blocks/blocks_tagged_stream_align.block.yml
share/gnuradio/grc/blocks/blocks_tagged_stream_multiply_length.block.yml
share/gnuradio/grc/blocks/blocks_tagged_stream_mux.block.yml
-share/gnuradio/grc/blocks/blocks_tagged_stream_to_pdu.block.yml
share/gnuradio/grc/blocks/blocks_tags_strobe.block.yml
-share/gnuradio/grc/blocks/blocks_tcp_server_sink.block.yml
share/gnuradio/grc/blocks/blocks_test_tag_variable_rate_ff.block.yml
share/gnuradio/grc/blocks/blocks_threshold_ff.block.yml
share/gnuradio/grc/blocks/blocks_throttle.block.yml
share/gnuradio/grc/blocks/blocks_transcendental.block.yml
-share/gnuradio/grc/blocks/blocks_tuntap_pdu.block.yml
share/gnuradio/grc/blocks/blocks_uchar_to_float.block.yml
-share/gnuradio/grc/blocks/blocks_udp_sink.block.yml
-share/gnuradio/grc/blocks/blocks_udp_source.block.yml
share/gnuradio/grc/blocks/blocks_unpack_k_bits_bb.block.yml
share/gnuradio/grc/blocks/blocks_unpacked_to_packed_xx.block.yml
share/gnuradio/grc/blocks/blocks_var_to_msg.block.yml
@@ -506,7 +495,6 @@ share/gnuradio/grc/blocks/filter_iir_filter_xxx.block.yml
share/gnuradio/grc/blocks/filter_interp_fir_filter_xxx.block.yml
share/gnuradio/grc/blocks/filter_ival_decimator.block.yml
share/gnuradio/grc/blocks/filter_low_pass_filter.block.yml
-share/gnuradio/grc/blocks/filter_mmse_interpolator_xx.block.yml
share/gnuradio/grc/blocks/filter_mmse_resampler_xx.block.yml
share/gnuradio/grc/blocks/filter_pfb_arb_resampler.block.yml
share/gnuradio/grc/blocks/filter_pfb_channelizer.block.yml
diff --git a/ham/gnuradio-core/Makefile b/ham/gnuradio-core/Makefile
index b6ad4511d06..3b3d847acc9 100644
--- a/ham/gnuradio-core/Makefile
+++ b/ham/gnuradio-core/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.89 2022/01/10 01:46:35 ryoon Exp $
+# $NetBSD: Makefile,v 1.90 2022/01/16 18:06:25 tnn Exp $
PKGNAME= gnuradio-core-${VERSION}
-PKGREVISION= 1
COMMENT= Core part of GNU Radio, all others need this
PLIST_MINUS= # empty
diff --git a/ham/gnuradio-core/Makefile.common b/ham/gnuradio-core/Makefile.common
index b31ac98813a..6fee22a3eac 100644
--- a/ham/gnuradio-core/Makefile.common
+++ b/ham/gnuradio-core/Makefile.common
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.35 2021/06/27 08:08:59 tnn Exp $
+# $NetBSD: Makefile.common,v 1.36 2022/01/16 18:06:25 tnn Exp $
# This Makefile fragment is included in the package Makefiles for
# GNU Radio distributed packages (they all share common configure and build
# settings).
@@ -81,8 +81,6 @@ CMAKE_ARGS+= -DENABLE_GR_BLOCKS=ON
CMAKE_ARGS+= -DENABLE_GR_FFT=ON
CMAKE_ARGS+= -DENABLE_GR_FILTER=ON
CMAKE_ARGS+= -DENABLE_PYTHON=ON
-CMAKE_ARGS+= -DENABLE_VOLK=ON -DENABLE_INTERNAL_VOLK=OFF
-CMAKE_ARGS+= -DCMAKE_HAVE_PTHREADS_CREATE=OFF
CMAKE_ARGS+= -DLIB_SUFFIX=""
@@ -93,7 +91,6 @@ CMAKE_ARGS+= -DCMAKE_INCLUDE_PATH=${PREFIX}/include/portaudio2
CMAKE_ARGS+= -DCMAKE_LIBRARY_PATH=${PREFIX}/lib/portaudio2
CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH=${PREFIX}/lib:${PREFIX}/lib/portaudio2
CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE
-CMAKE_ARGS+= -DLIBUSB_INCLUDE_DIR=${PREFIX}/include/libusb-1.0
CMAKE_ARGS+= -Dpybind11_DIR=${PREFIX}/${PYSITELIB}/pybind11/share/cmake/pybind11
CMAKE_ARGS+= -DGR_LIBRARY_DIR=${PREFIX}/lib
@@ -140,15 +137,17 @@ do-install:
.include "../../devel/boost-libs/buildlink3.mk"
.include "../../devel/cppunit/buildlink3.mk"
.include "../../devel/gmp/buildlink3.mk"
+.include "../../devel/spdlog/buildlink3.mk"
BUILDLINK_API_DEPENDS.py-pybind11+= ${PYPKGPREFIX}-pybind11>=2.6.0
.include "../../devel/py-pybind11/buildlink3.mk"
.include "../../graphics/cairo/buildlink3.mk"
.include "../../graphics/cairo-gobject/buildlink3.mk"
+# FIXME should be optional
+.include "../../lang/libunwind/buildlink3.mk"
.include "../../lang/python/application.mk"
.include "../../math/py-numpy/buildlink3.mk"
.include "../../math/fftw/buildlink3.mk"
.include "../../math/gsl/buildlink3.mk"
.include "../../math/volk/buildlink3.mk"
-.include "../../textproc/log4cpp/buildlink3.mk"
.include "../../textproc/icu/buildlink3.mk"
.include "../../x11/gtk3/buildlink3.mk"
diff --git a/ham/gnuradio-core/PLIST b/ham/gnuradio-core/PLIST
index c4d63ae9eac..940b5b427ec 100644
--- a/ham/gnuradio-core/PLIST
+++ b/ham/gnuradio-core/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.34 2021/12/11 14:57:50 tnn Exp $
+@comment $NetBSD: PLIST,v 1.35 2022/01/16 18:06:25 tnn Exp $
bin/gnuradio-config-info
bin/gr_filter_design
include/gnuradio/analog/agc.h
@@ -134,11 +134,6 @@ include/gnuradio/blocks/pack_k_bits.h
include/gnuradio/blocks/pack_k_bits_bb.h
include/gnuradio/blocks/packed_to_unpacked.h
include/gnuradio/blocks/patterned_interleaver.h
-include/gnuradio/blocks/pdu.h
-include/gnuradio/blocks/pdu_filter.h
-include/gnuradio/blocks/pdu_remove.h
-include/gnuradio/blocks/pdu_set.h
-include/gnuradio/blocks/pdu_to_tagged_stream.h
include/gnuradio/blocks/peak_detector.h
include/gnuradio/blocks/peak_detector2_fb.h
include/gnuradio/blocks/phase_shift.h
@@ -146,7 +141,6 @@ include/gnuradio/blocks/plateau_detector_fb.h
include/gnuradio/blocks/probe_rate.h
include/gnuradio/blocks/probe_signal.h
include/gnuradio/blocks/probe_signal_v.h
-include/gnuradio/blocks/random_pdu.h
include/gnuradio/blocks/regenerate_bb.h
include/gnuradio/blocks/repack_bits_bb.h
include/gnuradio/blocks/repeat.h
@@ -159,7 +153,6 @@ include/gnuradio/blocks/selector.h
include/gnuradio/blocks/short_to_char.h
include/gnuradio/blocks/short_to_float.h
include/gnuradio/blocks/skiphead.h
-include/gnuradio/blocks/socket_pdu.h
include/gnuradio/blocks/stream_demux.h
include/gnuradio/blocks/stream_mux.h
include/gnuradio/blocks/stream_to_streams.h
@@ -176,18 +169,13 @@ include/gnuradio/blocks/tagged_file_sink.h
include/gnuradio/blocks/tagged_stream_align.h
include/gnuradio/blocks/tagged_stream_multiply_length.h
include/gnuradio/blocks/tagged_stream_mux.h
-include/gnuradio/blocks/tagged_stream_to_pdu.h
include/gnuradio/blocks/tags_strobe.h
-include/gnuradio/blocks/tcp_server_sink.h
include/gnuradio/blocks/test_tag_variable_rate_ff.h
include/gnuradio/blocks/threshold_ff.h
include/gnuradio/blocks/throttle.h
include/gnuradio/blocks/transcendental.h
include/gnuradio/blocks/tsb_vector_sink.h
-include/gnuradio/blocks/tuntap_pdu.h
include/gnuradio/blocks/uchar_to_float.h
-include/gnuradio/blocks/udp_sink.h
-include/gnuradio/blocks/udp_source.h
include/gnuradio/blocks/unpack_k_bits.h
include/gnuradio/blocks/unpack_k_bits_bb.h
include/gnuradio/blocks/unpacked_to_packed.h
@@ -204,8 +192,14 @@ include/gnuradio/blocks/wavfile_sink.h
include/gnuradio/blocks/wavfile_source.h
include/gnuradio/blocks/xor_blk.h
include/gnuradio/buffer.h
+include/gnuradio/buffer_double_mapped.h
+include/gnuradio/buffer_reader.h
+include/gnuradio/buffer_reader_sm.h
+include/gnuradio/buffer_single_mapped.h
+include/gnuradio/buffer_type.h
include/gnuradio/config.h
include/gnuradio/constants.h
+include/gnuradio/custom_lock.h
include/gnuradio/endianness.h
include/gnuradio/expj.h
include/gnuradio/fft/api.h
@@ -244,8 +238,6 @@ include/gnuradio/filter/mmse_fir_interpolator_cc.h
include/gnuradio/filter/mmse_fir_interpolator_ff.h
include/gnuradio/filter/mmse_interp_differentiator_cc.h
include/gnuradio/filter/mmse_interp_differentiator_ff.h
-include/gnuradio/filter/mmse_interpolator_cc.h
-include/gnuradio/filter/mmse_interpolator_ff.h
include/gnuradio/filter/mmse_resampler_cc.h
include/gnuradio/filter/mmse_resampler_ff.h
include/gnuradio/filter/pfb_arb_resampler.h
@@ -269,6 +261,7 @@ include/gnuradio/fxpt_vco.h
include/gnuradio/gr_complex.h
include/gnuradio/hier_block2.h
include/gnuradio/high_res_timer.h
+include/gnuradio/host_buffer.h
include/gnuradio/integer_math.h
include/gnuradio/io_signature.h
include/gnuradio/logger.h
@@ -279,11 +272,11 @@ include/gnuradio/messages/msg_accepter_msgq.h
include/gnuradio/messages/msg_passing.h
include/gnuradio/messages/msg_producer.h
include/gnuradio/messages/msg_queue.h
-include/gnuradio/misc.h
include/gnuradio/msg_accepter.h
include/gnuradio/msg_handler.h
include/gnuradio/msg_queue.h
include/gnuradio/nco.h
+include/gnuradio/pdu.h
include/gnuradio/prefs.h
include/gnuradio/pycallback_object.h
include/gnuradio/random.h
@@ -304,7 +297,6 @@ include/gnuradio/sync_block.h
include/gnuradio/sync_decimator.h
include/gnuradio/sync_interpolator.h
include/gnuradio/sys_paths.h
-include/gnuradio/tag_checker.h
include/gnuradio/tagged_stream_block.h
include/gnuradio/tags.h
include/gnuradio/thread/thread.h
@@ -312,7 +304,9 @@ include/gnuradio/thread/thread_body_wrapper.h
include/gnuradio/thread/thread_group.h
include/gnuradio/top_block.h
include/gnuradio/tpb_detail.h
+include/gnuradio/transfer_type.h
include/gnuradio/types.h
+include/gnuradio/xoroshiro128p.h
include/pmt/api.h
include/pmt/pmt.h
include/pmt/pmt_pool.h
@@ -328,7 +322,6 @@ lib/cmake/gnuradio/FindGMP.cmake
lib/cmake/gnuradio/FindGSM.cmake
lib/cmake/gnuradio/FindGit.cmake
lib/cmake/gnuradio/FindJACK.cmake
-lib/cmake/gnuradio/FindLOG4CPP.cmake
lib/cmake/gnuradio/FindMPIR.cmake
lib/cmake/gnuradio/FindMPLIB.cmake
lib/cmake/gnuradio/FindMathJax2.cmake
@@ -339,12 +332,16 @@ lib/cmake/gnuradio/FindSNDFILE.cmake
lib/cmake/gnuradio/FindTHRIFT.cmake
lib/cmake/gnuradio/FindUHD.cmake
lib/cmake/gnuradio/FindZeroMQ.cmake
+lib/cmake/gnuradio/Findlibad9361.cmake
+lib/cmake/gnuradio/Findlibiio.cmake
lib/cmake/gnuradio/Findlibunwind.cmake
lib/cmake/gnuradio/GnuradioConfig.cmake
lib/cmake/gnuradio/GnuradioConfigVersion.cmake
lib/cmake/gnuradio/GrBoost.cmake
lib/cmake/gnuradio/GrBuildTypes.cmake
+lib/cmake/gnuradio/GrCompilerSettings.cmake
lib/cmake/gnuradio/GrComponent.cmake
+lib/cmake/gnuradio/GrMinReq.cmake
lib/cmake/gnuradio/GrMiscUtils.cmake
lib/cmake/gnuradio/GrPlatform.cmake
lib/cmake/gnuradio/GrPybind.cmake
@@ -374,25 +371,25 @@ lib/cmake/gnuradio/gnuradio-runtimeConfig.cmake
lib/cmake/gnuradio/gnuradio-runtimeTargets-release.cmake
lib/cmake/gnuradio/gnuradio-runtimeTargets.cmake
lib/libgnuradio-analog.so
-lib/libgnuradio-analog.so.3.9.4
+lib/libgnuradio-analog.so.3.10.0
lib/libgnuradio-analog.so.${PKGVERSION}
lib/libgnuradio-audio.so
-lib/libgnuradio-audio.so.3.9.4
+lib/libgnuradio-audio.so.3.10.0
lib/libgnuradio-audio.so.${PKGVERSION}
lib/libgnuradio-blocks.so
-lib/libgnuradio-blocks.so.3.9.4
+lib/libgnuradio-blocks.so.3.10.0
lib/libgnuradio-blocks.so.${PKGVERSION}
lib/libgnuradio-fft.so
-lib/libgnuradio-fft.so.3.9.4
+lib/libgnuradio-fft.so.3.10.0
lib/libgnuradio-fft.so.${PKGVERSION}
lib/libgnuradio-filter.so
-lib/libgnuradio-filter.so.3.9.4
+lib/libgnuradio-filter.so.3.10.0
lib/libgnuradio-filter.so.${PKGVERSION}
lib/libgnuradio-pmt.so
-lib/libgnuradio-pmt.so.3.9.4
+lib/libgnuradio-pmt.so.3.10.0
lib/libgnuradio-pmt.so.${PKGVERSION}
lib/libgnuradio-runtime.so
-lib/libgnuradio-runtime.so.3.9.4
+lib/libgnuradio-runtime.so.3.10.0
lib/libgnuradio-runtime.so.${PKGVERSION}
lib/pkgconfig/gnuradio-analog.pc
lib/pkgconfig/gnuradio-audio.pc
@@ -457,6 +454,9 @@ ${PYSITELIB}/gnuradio/blocks/msg_pair_to_var.pyo
${PYSITELIB}/gnuradio/blocks/parse_file_metadata.py
${PYSITELIB}/gnuradio/blocks/parse_file_metadata.pyc
${PYSITELIB}/gnuradio/blocks/parse_file_metadata.pyo
+${PYSITELIB}/gnuradio/blocks/pdu_compatibility.py
+${PYSITELIB}/gnuradio/blocks/pdu_compatibility.pyc
+${PYSITELIB}/gnuradio/blocks/pdu_compatibility.pyo
${PYSITELIB}/gnuradio/blocks/stream_to_vector_decimator.py
${PYSITELIB}/gnuradio/blocks/stream_to_vector_decimator.pyc
${PYSITELIB}/gnuradio/blocks/stream_to_vector_decimator.pyo
@@ -657,8 +657,3 @@ share/gnuradio/examples/tags/tagged_file_sink.grc
share/gnuradio/examples/tags/test_file_tags.py
share/gnuradio/examples/tags/test_tag_prop.grc
share/gnuradio/examples/tags/uhd_burst_detector.py
-share/gnuradio/examples/volk_benchmark/README
-share/gnuradio/examples/volk_benchmark/volk_math.py
-share/gnuradio/examples/volk_benchmark/volk_plot.py
-share/gnuradio/examples/volk_benchmark/volk_test_funcs.py
-share/gnuradio/examples/volk_benchmark/volk_types.py
diff --git a/ham/gnuradio-core/buildlink3.mk b/ham/gnuradio-core/buildlink3.mk
index d7f24dd2f9c..2d7cbe70f2c 100644
--- a/ham/gnuradio-core/buildlink3.mk
+++ b/ham/gnuradio-core/buildlink3.mk
@@ -1,16 +1,16 @@
-# $NetBSD: buildlink3.mk,v 1.33 2021/12/11 14:57:50 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.34 2022/01/16 18:06:25 tnn Exp $
BUILDLINK_TREE+= gnuradio-core
.if !defined(GNURADIO_CORE_BUILDLINK3_MK)
GNURADIO_CORE_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-core+= gnuradio-core>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-core+= gnuradio-core>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-core+= gnuradio-core>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-core?= ../../ham/gnuradio-core
.include "../../devel/gmp/buildlink3.mk"
-.include "../../textproc/log4cpp/buildlink3.mk"
+.include "../../devel/spdlog/buildlink3.mk"
+.include "../../lang/libunwind/buildlink3.mk"
.include "../../math/volk/buildlink3.mk"
.endif # GNURADIO_CORE_BUILDLINK3_MK
diff --git a/ham/gnuradio-core/distinfo b/ham/gnuradio-core/distinfo
index 033ad61fc61..dedf9f77ff5 100644
--- a/ham/gnuradio-core/distinfo
+++ b/ham/gnuradio-core/distinfo
@@ -1,8 +1,11 @@
-$NetBSD: distinfo,v 1.45 2021/12/11 14:57:50 tnn Exp $
+$NetBSD: distinfo,v 1.46 2022/01/16 18:06:25 tnn Exp $
-BLAKE2s (gnuradio-3.9.4.0.tar.gz) = 33705adfc5e619f88647e17c1cd05ea8c3bebeac88c4a528f5d01940fe3f71f6
-SHA512 (gnuradio-3.9.4.0.tar.gz) = 61c8a943f3cc0b33e4d4994b9e0bf5f79458bb21a2648fe6094dfb9b50edea7452f1bd35e6b1e566e331cf7fb4ea2a342d59bbd8798d5710d80eb037f427a183
-Size (gnuradio-3.9.4.0.tar.gz) = 4243680 bytes
-SHA1 (patch-gnuradio-runtime_lib_constants.cc.in) = 1c82722bc97a1f6b8d58a80d45ce096fb4267870
+BLAKE2s (gnuradio-3.10.0.0.tar.gz) = f6104b70a50ee7ed85e344b7e3f2311994ef077bc12367a2e5ad1eb00522a53d
+SHA512 (gnuradio-3.10.0.0.tar.gz) = d0cded792c85148385f3c2d3db5b25d1329b345ee2a0afee28ab2c7aca9fd381ef9c4ed115e2e38bf6fab602c04d6cc2376ece0983d61fe3b8b354efe8a92086
+Size (gnuradio-3.10.0.0.tar.gz) = 4313414 bytes
+SHA1 (patch-cmake_Modules_GrPybind.cmake) = e2b42c840ca985dc3b1c0cba3029002a088c8407
+SHA1 (patch-gnuradio-runtime_CMakeLists.txt) = a5b2b60c7fcc46b5784027e08e137480c0cf3307
+SHA1 (patch-gnuradio-runtime_lib_CMakeLists.txt) = 310d0432de07cf5c03fbd9fd34dcb42733cf6367
+SHA1 (patch-gnuradio-runtime_lib_constants.cc.in) = fef80a546c713c565c3851ee7289b4fa3a49e45b
SHA1 (patch-gr-audio_lib_CMakeLists.txt) = 9adacb93a20b2be596a23985306cbfd5f93c80a8
SHA1 (patch-gr-audio_lib_alsa_alsa__impl_h) = cfa9b629e5cf21198cfd53cf27a908b5874866f4
diff --git a/ham/gnuradio-core/patches/patch-cmake_Modules_GrPybind.cmake b/ham/gnuradio-core/patches/patch-cmake_Modules_GrPybind.cmake
new file mode 100644
index 00000000000..fa9feeadbc7
--- /dev/null
+++ b/ham/gnuradio-core/patches/patch-cmake_Modules_GrPybind.cmake
@@ -0,0 +1,15 @@
+$NetBSD: patch-cmake_Modules_GrPybind.cmake,v 1.1 2022/01/16 18:06:25 tnn Exp $
+
+Disable use of precompiled headers; it doesn't play nice with pkgsrc nor ccache.
+
+--- cmake/Modules/GrPybind.cmake.orig 2022-01-14 15:27:04.000000000 +0000
++++ cmake/Modules/GrPybind.cmake
+@@ -158,7 +158,7 @@ target_include_directories(${name}_pytho
+ # Precompile the pybind11 header
+ # This should speed up building of the python bindings at least in larger modules
+ # This functionality is only available in CMake >= 3.16
+-if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
++if(false AND ${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
+ target_precompile_headers(
+ ${name}_python
+ PRIVATE
diff --git a/ham/gnuradio-core/patches/patch-gnuradio-runtime_CMakeLists.txt b/ham/gnuradio-core/patches/patch-gnuradio-runtime_CMakeLists.txt
new file mode 100644
index 00000000000..254750fb965
--- /dev/null
+++ b/ham/gnuradio-core/patches/patch-gnuradio-runtime_CMakeLists.txt
@@ -0,0 +1,15 @@
+$NetBSD: patch-gnuradio-runtime_CMakeLists.txt,v 1.1 2022/01/16 18:06:25 tnn Exp $
+
+Disable use of precompiled headers; it doesn't play nice with pkgsrc nor ccache.
+
+--- gnuradio-runtime/CMakeLists.txt.orig 2022-01-14 15:27:04.000000000 +0000
++++ gnuradio-runtime/CMakeLists.txt
+@@ -51,7 +51,7 @@ get_filename_component(GNURADIO_RUNTIME_
+ ########################################################################
+ # Setup precompiled header pseudo-component
+ ########################################################################
+-if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
++if(false AND ${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
+ set(GR_CMAKE_HAS_PCH ${CMAKE_VERSION})
+ endif()
+
diff --git a/ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_CMakeLists.txt b/ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_CMakeLists.txt
new file mode 100644
index 00000000000..f2d5c648c3e
--- /dev/null
+++ b/ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_CMakeLists.txt
@@ -0,0 +1,15 @@
+$NetBSD: patch-gnuradio-runtime_lib_CMakeLists.txt,v 1.1 2022/01/16 18:06:25 tnn Exp $
+
+Disable use of precompiled headers; it doesn't play nice with pkgsrc nor ccache.
+
+--- gnuradio-runtime/lib/CMakeLists.txt.orig 2022-01-14 15:27:04.000000000 +0000
++++ gnuradio-runtime/lib/CMakeLists.txt
+@@ -171,7 +171,7 @@ target_compile_definitions(gnuradio-runt
+ # constants.cc includes boost::dll headers, force them to use std::filesystem
+ target_compile_definitions(gnuradio-runtime PRIVATE BOOST_DLL_USE_STD_FS)
+
+-if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
++if(false AND ${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
+ target_precompile_headers(
+ gnuradio-runtime
+ PRIVATE
diff --git a/ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_constants.cc.in b/ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_constants.cc.in
index 2ea3f505406..3dd1e47e31e 100644
--- a/ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_constants.cc.in
+++ b/ham/gnuradio-core/patches/patch-gnuradio-runtime_lib_constants.cc.in
@@ -1,14 +1,14 @@
-$NetBSD: patch-gnuradio-runtime_lib_constants.cc.in,v 1.2 2021/12/11 14:57:50 tnn Exp $
+$NetBSD: patch-gnuradio-runtime_lib_constants.cc.in,v 1.3 2022/01/16 18:06:25 tnn Exp $
Override broken PREFIX detection.
---- gnuradio-runtime/lib/constants.cc.in.orig 2021-10-31 14:28:27.000000000 +0000
+--- gnuradio-runtime/lib/constants.cc.in.orig 2022-01-14 15:27:04.000000000 +0000
+++ gnuradio-runtime/lib/constants.cc.in
-@@ -28,6 +28,7 @@ const std::string prefix()
+@@ -27,6 +27,7 @@ const std::string prefix()
if (prefix != NULL)
return prefix;
+ return "@PREFIX@";
path prefix_rel_lib = "@prefix_relative_to_lib@";
- path gr_runtime_lib_path = boost::dll::this_line_location();
- // Ensure that the lib path is absolute (see next comment)
+ path gr_runtime_lib_path = boost::dll::this_line_location().string();
+ // Canonize before decomposing path so result is reliable and without symlinks
diff --git a/ham/gnuradio-core/version.mk b/ham/gnuradio-core/version.mk
index 19d010fc19d..a80ff49fea1 100644
--- a/ham/gnuradio-core/version.mk
+++ b/ham/gnuradio-core/version.mk
@@ -1,3 +1,3 @@
-# $NetBSD: version.mk,v 1.4 2021/12/11 14:57:50 tnn Exp $
+# $NetBSD: version.mk,v 1.5 2022/01/16 18:06:25 tnn Exp $
-VERSION= 3.9.4.0
+VERSION= 3.10.0.0
diff --git a/ham/gnuradio-ctrlport/Makefile b/ham/gnuradio-ctrlport/Makefile
index c08840c6eaa..0373a866af4 100644
--- a/ham/gnuradio-ctrlport/Makefile
+++ b/ham/gnuradio-ctrlport/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.34 2022/01/10 01:46:35 ryoon Exp $
+# $NetBSD: Makefile,v 1.35 2022/01/16 18:06:25 tnn Exp $
PKGNAME= gnuradio-ctrlport-${VERSION}
-PKGREVISION= 1
COMMENT= New set of hooks into GNU Radio to allow a remote client to attach
.include "../../ham/gnuradio-core/Makefile.common"
.include "../../ham/gnuradio-core/Nocore.mk"
diff --git a/ham/gnuradio-ctrlport/buildlink3.mk b/ham/gnuradio-ctrlport/buildlink3.mk
index 465efe2661b..596ee612a19 100644
--- a/ham/gnuradio-ctrlport/buildlink3.mk
+++ b/ham/gnuradio-ctrlport/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.3 2021/12/11 14:57:50 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.4 2022/01/16 18:06:25 tnn Exp $
BUILDLINK_TREE+= gnuradio-ctrlport
.if !defined(GNURADIO_CTRLPORT_BUILDLINK3_MK)
GNURADIO_CTRLPORT_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-ctrlport+= gnuradio-ctrlport>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-ctrlport+= gnuradio-ctrlport>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-ctrlport+= gnuradio-ctrlport>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-ctrlport?= ../../ham/gnuradio-ctrlport
.endif # GNURADIO_CTRLPORT_BUILDLINK3_MK
diff --git a/ham/gnuradio-digital/Makefile b/ham/gnuradio-digital/Makefile
index b5e787ce9f7..c6f3eb1e02c 100644
--- a/ham/gnuradio-digital/Makefile
+++ b/ham/gnuradio-digital/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.34 2022/01/10 01:46:35 ryoon Exp $
+# $NetBSD: Makefile,v 1.35 2022/01/16 18:06:26 tnn Exp $
PKGNAME= gnuradio-digital-${VERSION}
-PKGREVISION= 1
COMMENT= Digital related algorithms for GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-digital/PLIST b/ham/gnuradio-digital/PLIST
index c44f9ac3e5f..9c87d4495b3 100644
--- a/ham/gnuradio-digital/PLIST
+++ b/ham/gnuradio-digital/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.12 2021/12/11 14:57:50 tnn Exp $
+@comment $NetBSD: PLIST,v 1.13 2022/01/16 18:06:26 tnn Exp $
include/gnuradio/digital/adaptive_algorithm.h
include/gnuradio/digital/adaptive_algorithm_cma.h
include/gnuradio/digital/adaptive_algorithm_lms.h
@@ -10,7 +10,6 @@ include/gnuradio/digital/burst_shaper.h
include/gnuradio/digital/chunks_to_symbols.h
include/gnuradio/digital/clock_recovery_mm_cc.h
include/gnuradio/digital/clock_recovery_mm_ff.h
-include/gnuradio/digital/cma_equalizer_cc.h
include/gnuradio/digital/constellation.h
include/gnuradio/digital/constellation_decoder_cb.h
include/gnuradio/digital/constellation_encoder_bc.h
@@ -25,7 +24,6 @@ include/gnuradio/digital/correlate_access_code_tag_ff.h
include/gnuradio/digital/costas_loop_cc.h
include/gnuradio/digital/cpmmod_bc.h
include/gnuradio/digital/crc16_async_bb.h
-include/gnuradio/digital/crc32.h
include/gnuradio/digital/crc32_async_bb.h
include/gnuradio/digital/crc32_bb.h
include/gnuradio/digital/decision_feedback_equalizer.h
@@ -49,10 +47,8 @@ include/gnuradio/digital/header_format_default.h
include/gnuradio/digital/header_format_ofdm.h
include/gnuradio/digital/header_payload_demux.h
include/gnuradio/digital/interpolating_resampler_type.h
-include/gnuradio/digital/kurtotic_equalizer_cc.h
include/gnuradio/digital/lfsr.h
include/gnuradio/digital/linear_equalizer.h
-include/gnuradio/digital/lms_dd_equalizer_cc.h
include/gnuradio/digital/map_bb.h
include/gnuradio/digital/metric_type.h
include/gnuradio/digital/modulate_vector.h
@@ -82,9 +78,6 @@ include/gnuradio/digital/protocol_formatter_async.h
include/gnuradio/digital/protocol_formatter_bb.h
include/gnuradio/digital/protocol_parser_b.h
include/gnuradio/digital/scrambler_bb.h
-include/gnuradio/digital/simple_correlator.h
-include/gnuradio/digital/simple_framer.h
-include/gnuradio/digital/simple_framer_sync.h
include/gnuradio/digital/symbol_sync_cc.h
include/gnuradio/digital/symbol_sync_ff.h
include/gnuradio/digital/timing_error_detector_type.h
@@ -92,7 +85,7 @@ lib/cmake/gnuradio/gnuradio-digitalConfig.cmake
lib/cmake/gnuradio/gnuradio-digitalTargets-release.cmake
lib/cmake/gnuradio/gnuradio-digitalTargets.cmake
lib/libgnuradio-digital.so
-lib/libgnuradio-digital.so.3.9.4
+lib/libgnuradio-digital.so.3.10.0
lib/libgnuradio-digital.so.${PKGVERSION}
lib/pkgconfig/gnuradio-digital.pc
${PYSITELIB}/gnuradio/digital/__init__.py
@@ -107,9 +100,6 @@ ${PYSITELIB}/gnuradio/digital/constellation_map_generator.pyo
${PYSITELIB}/gnuradio/digital/cpm.py
${PYSITELIB}/gnuradio/digital/cpm.pyc
${PYSITELIB}/gnuradio/digital/cpm.pyo
-${PYSITELIB}/gnuradio/digital/crc.py
-${PYSITELIB}/gnuradio/digital/crc.pyc
-${PYSITELIB}/gnuradio/digital/crc.pyo
${PYSITELIB}/gnuradio/digital/digital_python.so
${PYSITELIB}/gnuradio/digital/generic_mod_demod.py
${PYSITELIB}/gnuradio/digital/generic_mod_demod.pyc
@@ -159,6 +149,9 @@ ${PYSITELIB}/gnuradio/digital/utils/alignment.pyo
${PYSITELIB}/gnuradio/digital/utils/gray_code.py
${PYSITELIB}/gnuradio/digital/utils/gray_code.pyc
${PYSITELIB}/gnuradio/digital/utils/gray_code.pyo
+${PYSITELIB}/gnuradio/digital/utils/lfsr.py
+${PYSITELIB}/gnuradio/digital/utils/lfsr.pyc
+${PYSITELIB}/gnuradio/digital/utils/lfsr.pyo
${PYSITELIB}/gnuradio/digital/utils/mod_codes.py
${PYSITELIB}/gnuradio/digital/utils/mod_codes.pyc
${PYSITELIB}/gnuradio/digital/utils/mod_codes.pyo
@@ -229,7 +222,6 @@ share/gnuradio/grc/blocks/digital_binary_slicer_fb.block.yml
share/gnuradio/grc/blocks/digital_burst_shaper.block.yml
share/gnuradio/grc/blocks/digital_chunks_to_symbols.block.yml
share/gnuradio/grc/blocks/digital_clock_recovery_mm_xx.block.yml
-share/gnuradio/grc/blocks/digital_cma_equalizer_cc.block.yml
share/gnuradio/grc/blocks/digital_constellation.block.yml
share/gnuradio/grc/blocks/digital_constellation_decoder_cb.block.yml
share/gnuradio/grc/blocks/digital_constellation_encoder_bc.block.yml
@@ -238,7 +230,6 @@ share/gnuradio/grc/blocks/digital_constellation_receiver_cb.block.yml
share/gnuradio/grc/blocks/digital_constellation_rect.block.yml
share/gnuradio/grc/blocks/digital_constellation_soft_decoder_cf.block.yml
share/gnuradio/grc/blocks/digital_corr_est_cc.block.yml
-share/gnuradio/grc/blocks/digital_correlate_access_code_bb.block.yml
share/gnuradio/grc/blocks/digital_correlate_access_code_tag_xx.block.yml
share/gnuradio/grc/blocks/digital_correlate_access_code_xx_ts.block.yml
share/gnuradio/grc/blocks/digital_costas_loop_cc.block.yml
@@ -262,9 +253,7 @@ share/gnuradio/grc/blocks/digital_gmskmod_bc.block.yml
share/gnuradio/grc/blocks/digital_hdlc_deframer_bp.block.yml
share/gnuradio/grc/blocks/digital_hdlc_framer_pb.block.yml
share/gnuradio/grc/blocks/digital_header_payload_demux.block.yml
-share/gnuradio/grc/blocks/digital_kurtotic_equalizer_cc.block.yml
share/gnuradio/grc/blocks/digital_linear_equalizer.block.yml
-share/gnuradio/grc/blocks/digital_lms_dd_equalizer_cc.block.yml
share/gnuradio/grc/blocks/digital_map_bb.block.yml
share/gnuradio/grc/blocks/digital_meas_evm_cc.block.yml
share/gnuradio/grc/blocks/digital_modulate_vector.block.yml
@@ -295,7 +284,5 @@ share/gnuradio/grc/blocks/digital_psk_mod.block.yml
share/gnuradio/grc/blocks/digital_qam_demod.block.yml
share/gnuradio/grc/blocks/digital_qam_mod.block.yml
share/gnuradio/grc/blocks/digital_scrambler_bb.block.yml
-share/gnuradio/grc/blocks/digital_simple_correlator.block.yml
-share/gnuradio/grc/blocks/digital_simple_framer.block.yml
share/gnuradio/grc/blocks/digital_symbol_sync_xx.block.yml
share/gnuradio/grc/blocks/variable_header_format_default.block.yml
diff --git a/ham/gnuradio-digital/buildlink3.mk b/ham/gnuradio-digital/buildlink3.mk
index d0b28dec893..90e2f92d409 100644
--- a/ham/gnuradio-digital/buildlink3.mk
+++ b/ham/gnuradio-digital/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.4 2021/12/11 14:57:50 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.5 2022/01/16 18:06:26 tnn Exp $
BUILDLINK_TREE+= gnuradio-digital
.if !defined(GNURADIO_DIGITAL_BUILDLINK3_MK)
GNURADIO_DIGITAL_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-digital+= gnuradio-digital>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-digital+= gnuradio-digital>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-digital+= gnuradio-digital>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-digital?= ../../ham/gnuradio-digital
.endif # GNURADIO_DIGITAL_BUILDLINK3_MK
diff --git a/ham/gnuradio-doxygen/Makefile b/ham/gnuradio-doxygen/Makefile
index 7c72c8a3e82..f59da94580a 100644
--- a/ham/gnuradio-doxygen/Makefile
+++ b/ham/gnuradio-doxygen/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.50 2022/01/10 01:46:35 ryoon Exp $
+# $NetBSD: Makefile,v 1.51 2022/01/16 18:06:26 tnn Exp $
PKGNAME= gnuradio-doxygen-${VERSION}
-PKGREVISION= 1
COMMENT= Doxygen documentation of GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-doxygen/PLIST b/ham/gnuradio-doxygen/PLIST
index 05d4785a6d4..c2d272a9a14 100644
--- a/ham/gnuradio-doxygen/PLIST
+++ b/ham/gnuradio-doxygen/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.26 2021/12/30 07:22:38 mef Exp $
+@comment $NetBSD: PLIST,v 1.27 2022/01/16 18:06:26 tnn Exp $
share/doc/gnuradio-${PKGVERSION}/html/ConstellationDisplayPlot_8h.html
share/doc/gnuradio-${PKGVERSION}/html/ConstellationDisplayPlot_8h__dep__incl.map
share/doc/gnuradio-${PKGVERSION}/html/ConstellationDisplayPlot_8h__dep__incl.md5
@@ -223,6 +223,17 @@ share/doc/gnuradio-${PKGVERSION}/html/add__const__v__pydoc__template_8h__incl.ma
share/doc/gnuradio-${PKGVERSION}/html/add__const__v__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/add__const__v__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/add__const__v__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/add__system__time__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/additive__scrambler__bb_8h.html
share/doc/gnuradio-${PKGVERSION}/html/additive__scrambler__bb_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/additive__scrambler__bb_8h__incl.md5
@@ -454,6 +465,9 @@ share/doc/gnuradio-${PKGVERSION}/html/async__encoder__pydoc__template_8h__incl.s
share/doc/gnuradio-${PKGVERSION}/html/async__encoder__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h.html
share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h__dep__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/atsc__consts_8h__incl.svg
@@ -563,6 +577,11 @@ share/doc/gnuradio-${PKGVERSION}/html/atsc__pad__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/atsc__pad__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/atsc__pad__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/atsc__pad__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/atsc__plinfo_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/atsc__plinfo_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/atsc__plinfo_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/atsc__plinfo_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/atsc__plinfo_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/atsc__randomizer_8h.html
share/doc/gnuradio-${PKGVERSION}/html/atsc__randomizer_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/atsc__randomizer_8h__incl.md5
@@ -629,6 +648,63 @@ share/doc/gnuradio-${PKGVERSION}/html/atsc__viterbi__decoder__pydoc__template_8h
share/doc/gnuradio-${PKGVERSION}/html/atsc__viterbi__decoder__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/atsc__viterbi__decoder__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/atsc__viterbi__decoder__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__sink__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__source_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__source__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/attr__updater__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/attributes_8h.html
share/doc/gnuradio-${PKGVERSION}/html/attributes_8h.js
share/doc/gnuradio-${PKGVERSION}/html/attributes_8h__dep__incl.map
@@ -745,16 +821,64 @@ share/doc/gnuradio-${PKGVERSION}/html/block__registry_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/blocks_8dox.html
share/doc/gnuradio-${PKGVERSION}/html/buffer_8h.html
share/doc/gnuradio-${PKGVERSION}/html/buffer_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/buffer_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer_8h__dep__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/buffer_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/buffer_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/buffer_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/buffer_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__double__mapped_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/buffer__pydoc__template_8h.html
share/doc/gnuradio-${PKGVERSION}/html/buffer__pydoc__template_8h.js
share/doc/gnuradio-${PKGVERSION}/html/buffer__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/buffer__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/buffer__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/buffer__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader__sm_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader__sm_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader__sm_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader__sm_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__reader__sm_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__single__mapped_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/buffer__type__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/build_2gnuradio-runtime_2python_2gnuradio_2gr_2bindings_2pydoc__macros_8h.html
share/doc/gnuradio-${PKGVERSION}/html/build_2gnuradio-runtime_2python_2gnuradio_2gr_2bindings_2pydoc__macros_8h.js
share/doc/gnuradio-${PKGVERSION}/html/build_2gnuradio-runtime_2python_2gnuradio_2gr_2bindings_2pydoc__macros_8h_source.html
@@ -1062,9 +1186,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classEyeDisplaysForm.js
share/doc/gnuradio-${PKGVERSION}/html/classFFTAverageMenu-members.html
share/doc/gnuradio-${PKGVERSION}/html/classFFTAverageMenu.html
share/doc/gnuradio-${PKGVERSION}/html/classFFTAverageMenu.js
-share/doc/gnuradio-${PKGVERSION}/html/classFFTSizeMenu-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classFFTSizeMenu.html
-share/doc/gnuradio-${PKGVERSION}/html/classFFTSizeMenu.js
share/doc/gnuradio-${PKGVERSION}/html/classFFTWindowMenu-members.html
share/doc/gnuradio-${PKGVERSION}/html/classFFTWindowMenu.html
share/doc/gnuradio-${PKGVERSION}/html/classFFTWindowMenu.js
@@ -1143,12 +1264,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classNumberLayoutMenu.js
share/doc/gnuradio-${PKGVERSION}/html/classNumberUpdateEvent-members.html
share/doc/gnuradio-${PKGVERSION}/html/classNumberUpdateEvent.html
share/doc/gnuradio-${PKGVERSION}/html/classNumberUpdateEvent.js
-share/doc/gnuradio-${PKGVERSION}/html/classOtherAction-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classOtherAction.html
-share/doc/gnuradio-${PKGVERSION}/html/classOtherAction.js
-share/doc/gnuradio-${PKGVERSION}/html/classOtherDualAction-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classOtherDualAction.html
-share/doc/gnuradio-${PKGVERSION}/html/classOtherDualAction.js
share/doc/gnuradio-${PKGVERSION}/html/classPlotTimeRaster-members.html
share/doc/gnuradio-${PKGVERSION}/html/classPlotTimeRaster.html
share/doc/gnuradio-${PKGVERSION}/html/classPlotTimeRaster.js
@@ -1658,18 +1773,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1packed__to__unpacked.
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1patterned__interleaver-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1patterned__interleaver.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1patterned__interleaver.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__filter-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__filter.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__filter.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__remove-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__remove.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__remove.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__set-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__set.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__set.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__to__tagged__stream-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__to__tagged__stream.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1pdu__to__tagged__stream.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1peak__detector-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1peak__detector.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1peak__detector.js
@@ -1691,9 +1794,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1probe__signal.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1probe__signal__v-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1probe__signal__v.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1probe__signal__v.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1random__pdu-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1random__pdu.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1random__pdu.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1regenerate__bb-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1regenerate__bb.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1regenerate__bb.js
@@ -1730,9 +1830,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1short__to__float.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1skiphead-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1skiphead.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1skiphead.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1socket__pdu-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1socket__pdu.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1socket__pdu.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1stream__demux-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1stream__demux.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1stream__demux.js
@@ -1784,15 +1881,9 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tagged__stream__multi
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tagged__stream__mux-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tagged__stream__mux.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tagged__stream__mux.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tagged__stream__to__pdu-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tagged__stream__to__pdu.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tagged__stream__to__pdu.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tags__strobe-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tags__strobe.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tags__strobe.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tcp__server__sink-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tcp__server__sink.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tcp__server__sink.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1test__tag__variable__rate__ff-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1test__tag__variable__rate__ff.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1test__tag__variable__rate__ff.js
@@ -1808,18 +1899,9 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1transcendental.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tsb__vector__sink-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tsb__vector__sink.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tsb__vector__sink.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tuntap__pdu-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tuntap__pdu.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1tuntap__pdu.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1uchar__to__float-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1uchar__to__float.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1uchar__to__float.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1udp__sink-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1udp__sink.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1udp__sink.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1udp__source-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1udp__source.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1udp__source.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1unpack__k__bits__bb-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1unpack__k__bits__bb.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1unpack__k__bits__bb.js
@@ -1862,9 +1944,21 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1blocks_1_1xor__blk.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__double__mapped-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__double__mapped.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__double__mapped.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__reader-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__reader.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__reader.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__reader__sm-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__reader__sm.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__reader__sm.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__single__mapped-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__single__mapped.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__single__mapped.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__type__base-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__type__base.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1buffer__type__base.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1channels_1_1cfo__model-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1channels_1_1cfo__model.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1channels_1_1cfo__model.js
@@ -1889,6 +1983,12 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1channels_1_1selective__fading__
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1channels_1_1sro__model-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1channels_1_1sro__model.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1channels_1_1sro__model.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1custom__lock-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1custom__lock.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1custom__lock.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1custom__lock__if-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1custom__lock__if.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1custom__lock__if.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1adaptive__algorithm-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1adaptive__algorithm.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1adaptive__algorithm.js
@@ -1919,9 +2019,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1clock__recovery__mm_
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1clock__recovery__mm__ff-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1clock__recovery__mm__ff.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1clock__recovery__mm__ff.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1cma__equalizer__cc-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1cma__equalizer__cc.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1cma__equalizer__cc.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1constellation-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1constellation.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1constellation.js
@@ -2060,18 +2157,12 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1header__format__ofdm
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1header__payload__demux-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1header__payload__demux.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1header__payload__demux.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1kurtotic__equalizer__cc-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1kurtotic__equalizer__cc.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1kurtotic__equalizer__cc.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1lfsr-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1lfsr.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1lfsr.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1linear__equalizer-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1linear__equalizer.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1linear__equalizer.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1lms__dd__equalizer__cc-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1lms__dd__equalizer__cc.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1lms__dd__equalizer__cc.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1map__bb-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1map__bb.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1map__bb.js
@@ -2171,12 +2262,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1protocol__parser__b.
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1scrambler__bb-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1scrambler__bb.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1scrambler__bb.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1simple__correlator-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1simple__correlator.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1simple__correlator.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1simple__framer-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1simple__framer.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1simple__framer.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1snr__est__m2m4-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1snr__est__m2m4.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1digital_1_1snr__est__m2m4.js
@@ -2342,6 +2427,9 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1dtv_1_1dvbt__symbol__inner__int
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1dtv_1_1dvbt__viterbi__decoder-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1dtv_1_1dvbt__viterbi__decoder.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1dtv_1_1dvbt__viterbi__decoder.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1dtv_1_1plinfo-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1dtv_1_1plinfo.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1dtv_1_1plinfo.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1edge-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1edge.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1edge.js
@@ -2597,12 +2685,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interp__differe
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interp__differentiator__ff-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interp__differentiator__ff.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interp__differentiator__ff.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interpolator__cc-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interpolator__cc.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interpolator__cc.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interpolator__ff-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interpolator__ff.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__interpolator__ff.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__resampler__cc-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__resampler__cc.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1filter_1_1mmse__resampler__cc.js
@@ -2660,15 +2742,87 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1fxpt__vco.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1hier__block2-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1hier__block2.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1hier__block2.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1host__buffer-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1host__buffer.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1host__buffer.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__sink-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__sink.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__sink.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__sink__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__sink__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__sink__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__source-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__source.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__source.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__source__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__source__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__source__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__updater-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__updater.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__updater.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__updater__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__updater__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1attr__updater__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1dds__control-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1dds__control.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1dds__control.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1dds__control__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1dds__control__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1dds__control__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__sink-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__sink.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__sink.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__sink__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__sink__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__sink__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__source-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__source.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__source.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__source__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__source__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1device__source__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__sink-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__sink.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__sink.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__sink__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__sink__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__sink__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__source-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__source.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__source.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__source__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__source__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms2__source__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink__f32c-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink__f32c.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink__f32c.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__sink__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source__f32c-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source__f32c.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source__f32c.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1fmcomms5__source__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1iio__param__t-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1iio__param__t.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1iio_1_1iio__param__t.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1io__signature-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1io__signature.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1io__signature.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logger-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logger.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logger.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logger__config-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logger__config.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logger__config.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logging-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logging.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1logging.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1message-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1message.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1message.js
@@ -2702,12 +2856,29 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1msg__queue.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1nco-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1nco.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1nco.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1socket__pdu-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1socket__pdu.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1socket__pdu.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1socket__pdu__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1socket__pdu__impl.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1socket__pdu__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1stream__pdu__base-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1stream__pdu__base.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1stream__pdu__base.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__connection-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__connection.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__connection.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__sink-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__sink.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__sink.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__sink__impl-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__sink__impl.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tcp__sink__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tuntap__pdu-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tuntap__pdu.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tuntap__pdu.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tuntap__pdu__impl-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1tuntap__pdu__impl.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1udp__sink-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1udp__sink.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1udp__sink.js
@@ -2720,6 +2891,42 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1udp__source.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1udp__source__impl-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1udp__source__impl.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1network_1_1udp__source__impl.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1add__system__time-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1add__system__time.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1add__system__time.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__filter-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__filter.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__filter.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__remove-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__remove.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__remove.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__set-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__set.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__set.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__split-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__split.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__split.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__to__stream-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__to__stream.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__to__stream.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__to__tagged__stream-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__to__tagged__stream.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1pdu__to__tagged__stream.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1random__pdu-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1random__pdu.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1random__pdu.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1tagged__stream__to__pdu-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1tagged__stream__to__pdu.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1tagged__stream__to__pdu.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1tags__to__pdu-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1tags__to__pdu.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1tags__to__pdu.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1take__skip__to__pdu-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1take__skip__to__pdu.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1take__skip__to__pdu.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1time__delta-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1time__delta.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1pdu_1_1time__delta.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1prefs-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1prefs.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1prefs.js
@@ -2807,9 +3014,6 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1sync__decimator.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1sync__interpolator-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1sync__interpolator.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1sync__interpolator.js
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1tag__checker-members.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1tag__checker.html
-share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1tag__checker.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1tagged__stream__block-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1tagged__stream__block.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1tagged__stream__block.js
@@ -2987,6 +3191,9 @@ share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1wavelet_1_1wavelet__ff.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1wavelet_1_1wvps__ff-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1wavelet_1_1wvps__ff.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1wavelet_1_1wvps__ff.js
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1xoroshiro128p__prng-members.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1xoroshiro128p__prng.html
+share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1xoroshiro128p__prng.js
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1zeromq_1_1pub__msg__sink-members.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1zeromq_1_1pub__msg__sink.html
share/doc/gnuradio-${PKGVERSION}/html/classgr_1_1zeromq_1_1pub__msg__sink.js
@@ -3231,17 +3438,6 @@ share/doc/gnuradio-${PKGVERSION}/html/clock__recovery__mm__ff__pydoc__template_8
share/doc/gnuradio-${PKGVERSION}/html/clock__recovery__mm__ff__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/clock__recovery__mm__ff__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/closed.png
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/cma__equalizer__cc__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/codec2_8h.html
share/doc/gnuradio-${PKGVERSION}/html/codec2_8h__dep__incl.map
share/doc/gnuradio-${PKGVERSION}/html/codec2_8h__dep__incl.md5
@@ -3731,12 +3927,6 @@ share/doc/gnuradio-${PKGVERSION}/html/crc16__async__bb__pydoc__template_8h__incl
share/doc/gnuradio-${PKGVERSION}/html/crc16__async__bb__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/crc16__async__bb__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/crc16__async__bb__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/crc32_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/crc32_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/crc32_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/crc32_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/crc32_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/crc32_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/crc32__async__bb_8h.html
share/doc/gnuradio-${PKGVERSION}/html/crc32__async__bb_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/crc32__async__bb_8h__incl.md5
@@ -3759,12 +3949,6 @@ share/doc/gnuradio-${PKGVERSION}/html/crc32__bb__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/crc32__bb__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/crc32__bb__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/crc32__bb__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/crc32__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/crc32__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/crc32__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/crc32__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/crc32__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/crc32__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/ctcss__squelch__ff_8h.html
share/doc/gnuradio-${PKGVERSION}/html/ctcss__squelch__ff_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/ctcss__squelch__ff_8h__incl.md5
@@ -3854,6 +4038,14 @@ share/doc/gnuradio-${PKGVERSION}/html/ctrlport__probe__psd__pydoc__template_8h__
share/doc/gnuradio-${PKGVERSION}/html/ctrlport__probe__psd__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/ctrlport__probe__psd__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/ctrlport__probe__psd__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/custom__lock_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/cvsd__decode__bs_8h.html
share/doc/gnuradio-${PKGVERSION}/html/cvsd__decode__bs_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/cvsd__decode__bs_8h__incl.md5
@@ -3898,6 +4090,25 @@ share/doc/gnuradio-${PKGVERSION}/html/dc__blocker__ff__pydoc__template_8h__incl.
share/doc/gnuradio-${PKGVERSION}/html/dc__blocker__ff__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/dc__blocker__ff__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/dc__blocker__ff__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/dds__control_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/dds__control__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/decision__feedback__equalizer_8h.html
share/doc/gnuradio-${PKGVERSION}/html/decision__feedback__equalizer_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/decision__feedback__equalizer_8h__incl.md5
@@ -3978,6 +4189,53 @@ share/doc/gnuradio-${PKGVERSION}/html/descrambler__bb__pydoc__template_8h__incl.
share/doc/gnuradio-${PKGVERSION}/html/descrambler__bb__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/descrambler__bb__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/descrambler__bb__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__sink_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__sink__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__source_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__source__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/device__source__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/device__source__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/device__source__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/device__source__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/device__source__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/device__source__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/diff__coding__type_8h.html
share/doc/gnuradio-${PKGVERSION}/html/diff__coding__type_8h.js
share/doc/gnuradio-${PKGVERSION}/html/diff__coding__type_8h__dep__incl.map
@@ -4231,6 +4489,23 @@ share/doc/gnuradio-${PKGVERSION}/html/dir_000203.html
share/doc/gnuradio-${PKGVERSION}/html/dir_000204.html
share/doc/gnuradio-${PKGVERSION}/html/dir_000205.html
share/doc/gnuradio-${PKGVERSION}/html/dir_000206.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000207.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000208.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000209.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000210.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000211.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000212.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000213.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000214.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000215.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000216.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000217.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000218.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000219.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000220.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000221.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000222.html
+share/doc/gnuradio-${PKGVERSION}/html/dir_000223.html
share/doc/gnuradio-${PKGVERSION}/html/display__qt_8h.html
share/doc/gnuradio-${PKGVERSION}/html/display__qt_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/display__qt_8h__incl.md5
@@ -5200,6 +5475,108 @@ share/doc/gnuradio-${PKGVERSION}/html/flowgraph__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/flowgraph__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/flowgraph__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/flowgraph__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__f32c__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__f32c__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__f32c__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__f32c__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__f32c__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__f32c__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__sink__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__f32c__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__f32c__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__f32c__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__f32c__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__f32c__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__f32c__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms2__source__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__f32c__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__f32c__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__f32c__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__f32c__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__f32c__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__f32c__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__sink__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__f32c__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__f32c__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__f32c__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__f32c__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__f32c__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__f32c__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/fmcomms5__source__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/fmdet__cf_8h.html
share/doc/gnuradio-${PKGVERSION}/html/fmdet__cf_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/fmdet__cf_8h__incl.md5
@@ -5460,6 +5837,7 @@ share/doc/gnuradio-${PKGVERSION}/html/functions_func_t.html
share/doc/gnuradio-${PKGVERSION}/html/functions_func_u.html
share/doc/gnuradio-${PKGVERSION}/html/functions_func_v.html
share/doc/gnuradio-${PKGVERSION}/html/functions_func_w.html
+share/doc/gnuradio-${PKGVERSION}/html/functions_func_x.html
share/doc/gnuradio-${PKGVERSION}/html/functions_func_~.html
share/doc/gnuradio-${PKGVERSION}/html/functions_g.html
share/doc/gnuradio-${PKGVERSION}/html/functions_h.html
@@ -5479,9 +5857,11 @@ share/doc/gnuradio-${PKGVERSION}/html/functions_s.html
share/doc/gnuradio-${PKGVERSION}/html/functions_t.html
share/doc/gnuradio-${PKGVERSION}/html/functions_type.html
share/doc/gnuradio-${PKGVERSION}/html/functions_type.js
+share/doc/gnuradio-${PKGVERSION}/html/functions_type_f.html
share/doc/gnuradio-${PKGVERSION}/html/functions_type_h.html
share/doc/gnuradio-${PKGVERSION}/html/functions_type_o.html
share/doc/gnuradio-${PKGVERSION}/html/functions_type_q.html
+share/doc/gnuradio-${PKGVERSION}/html/functions_type_r.html
share/doc/gnuradio-${PKGVERSION}/html/functions_type_s.html
share/doc/gnuradio-${PKGVERSION}/html/functions_type_t.html
share/doc/gnuradio-${PKGVERSION}/html/functions_u.html
@@ -5708,6 +6088,7 @@ share/doc/gnuradio-${PKGVERSION}/html/globals_defs_c.html
share/doc/gnuradio-${PKGVERSION}/html/globals_defs_d.html
share/doc/gnuradio-${PKGVERSION}/html/globals_defs_f.html
share/doc/gnuradio-${PKGVERSION}/html/globals_defs_g.html
+share/doc/gnuradio-${PKGVERSION}/html/globals_defs_i.html
share/doc/gnuradio-${PKGVERSION}/html/globals_defs_m.html
share/doc/gnuradio-${PKGVERSION}/html/globals_defs_n.html
share/doc/gnuradio-${PKGVERSION}/html/globals_defs_p.html
@@ -5856,28 +6237,6 @@ share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2api_
share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2api_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2api_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2api_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__sink_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__sink_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__sink_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__sink_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__sink_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__source_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__source_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__source_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__source_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2include_2gnuradio_2blocks_2udp__source_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__sink__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__sink__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__sink__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__sink__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__sink__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__sink__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__source__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__source__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__source__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__source__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__source__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__source__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/gr-channels_2include_2gnuradio_2channels_2api_8h.html
share/doc/gnuradio-${PKGVERSION}/html/gr-channels_2include_2gnuradio_2channels_2api_8h.js
share/doc/gnuradio-${PKGVERSION}/html/gr-channels_2include_2gnuradio_2channels_2api_8h__dep__incl.map
@@ -5958,6 +6317,15 @@ share/doc/gnuradio-${PKGVERSION}/html/gr-filter_2include_2gnuradio_2filter_2api_
share/doc/gnuradio-${PKGVERSION}/html/gr-filter_2include_2gnuradio_2filter_2api_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/gr-filter_2include_2gnuradio_2filter_2api_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/gr-filter_2include_2gnuradio_2filter_2api_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/gr-iio_2include_2gnuradio_2iio_2api_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2api_8h.html
share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2api_8h.js
share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2api_8h__dep__incl.map
@@ -5967,34 +6335,15 @@ share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2ap
share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2api_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2api_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2api_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h__dep__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h__dep__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h__dep__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__sink_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h__dep__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h__dep__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h__dep__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2include_2gnuradio_2network_2udp__source_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__sink__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__sink__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__sink__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__sink__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__sink__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__sink__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__source__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__source__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__source__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__source__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__source__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/gr-network_2python_2network_2bindings_2docstrings_2udp__source__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/gr-pdu_2include_2gnuradio_2pdu_2api_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/gr-qtgui_2include_2gnuradio_2qtgui_2api_8h.html
share/doc/gnuradio-${PKGVERSION}/html/gr-qtgui_2include_2gnuradio_2qtgui_2api_8h.js
share/doc/gnuradio-${PKGVERSION}/html/gr-qtgui_2include_2gnuradio_2qtgui_2api_8h__dep__incl.map
@@ -6208,6 +6557,8 @@ share/doc/gnuradio-${PKGVERSION}/html/group__ofdm__blk.html
share/doc/gnuradio-${PKGVERSION}/html/group__ofdm__blk.js
share/doc/gnuradio-${PKGVERSION}/html/group__packet__operators__blk.html
share/doc/gnuradio-${PKGVERSION}/html/group__packet__operators__blk.js
+share/doc/gnuradio-${PKGVERSION}/html/group__pdu__blk.html
+share/doc/gnuradio-${PKGVERSION}/html/group__pdu__blk.js
share/doc/gnuradio-${PKGVERSION}/html/group__peak__detectors__blk.html
share/doc/gnuradio-${PKGVERSION}/html/group__peak__detectors__blk.js
share/doc/gnuradio-${PKGVERSION}/html/group__qtgui__blk.html
@@ -6444,6 +6795,20 @@ share/doc/gnuradio-${PKGVERSION}/html/histogramdisplayform__pydoc__template_8h__
share/doc/gnuradio-${PKGVERSION}/html/histogramdisplayform__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/histogramdisplayform__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/histogramdisplayform__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/host__buffer_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/host__buffer_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/host__buffer_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/host__buffer_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/host__buffer_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/iio__types_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/iir__filter_8h.html
share/doc/gnuradio-${PKGVERSION}/html/iir__filter_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/iir__filter_8h__incl.md5
@@ -6625,6 +6990,27 @@ share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_130.svg
share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_131.map
share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_131.md5
share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_131.svg
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_132.map
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_132.md5
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_132.svg
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_133.map
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_133.md5
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_133.svg
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_134.map
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_134.md5
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_134.svg
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_135.map
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_135.md5
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_135.svg
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_136.map
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_136.md5
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_136.svg
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_137.map
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_137.md5
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_137.svg
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_138.map
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_138.md5
+share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_138.svg
share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_14.map
share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_14.md5
share/doc/gnuradio-${PKGVERSION}/html/inherit_graph_14.svg
@@ -7062,17 +7448,6 @@ share/doc/gnuradio-${PKGVERSION}/html/keep__one__in__n__pydoc__template_8h__incl
share/doc/gnuradio-${PKGVERSION}/html/keep__one__in__n__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/keep__one__in__n__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/keep__one__in__n__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/kurtotic__equalizer__cc__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/ldpc__G__matrix_8h.html
share/doc/gnuradio-${PKGVERSION}/html/ldpc__G__matrix_8h__dep__incl.map
share/doc/gnuradio-${PKGVERSION}/html/ldpc__G__matrix_8h__dep__incl.md5
@@ -7219,17 +7594,6 @@ share/doc/gnuradio-${PKGVERSION}/html/linear__equalizer__pydoc__template_8h__inc
share/doc/gnuradio-${PKGVERSION}/html/linear__equalizer__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/linear__equalizer__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/linear__equalizer__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/lms__dd__equalizer__cc__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/logger_8h.html
share/doc/gnuradio-${PKGVERSION}/html/logger_8h.js
share/doc/gnuradio-${PKGVERSION}/html/logger_8h__dep__incl.map
@@ -7412,12 +7776,6 @@ share/doc/gnuradio-${PKGVERSION}/html/min__blk__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/min__blk__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/min__blk__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/min__blk__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/misc_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/misc_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/misc_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/misc_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/misc_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/misc_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/mmse__fir__interpolator__cc_8h.html
share/doc/gnuradio-${PKGVERSION}/html/mmse__fir__interpolator__cc_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/mmse__fir__interpolator__cc_8h__incl.md5
@@ -7462,28 +7820,6 @@ share/doc/gnuradio-${PKGVERSION}/html/mmse__interp__differentiator__ff__pydoc__t
share/doc/gnuradio-${PKGVERSION}/html/mmse__interp__differentiator__ff__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/mmse__interp__differentiator__ff__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/mmse__interp__differentiator__ff__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__cc__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/mmse__interpolator__ff__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/mmse__resampler__cc_8h.html
share/doc/gnuradio-${PKGVERSION}/html/mmse__resampler__cc_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/mmse__resampler__cc_8h__incl.md5
@@ -7728,7 +8064,6 @@ share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1blocks.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1blocks.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1blocks_1_1kernel.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1blocks_1_1kernel.js
-share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1blocks_1_1pdu.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1channels.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1channels.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1digital.html
@@ -7746,10 +8081,16 @@ share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1filter.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1filter.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1filter_1_1kernel.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1filter_1_1kernel.js
+share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1iio.html
+share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1iio.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1messages.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1messages.js
+share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1metadata__keys.html
+share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1msgport__names.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1network.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1network.js
+share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1pdu.html
+share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1pdu.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1qtgui.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1qtgui.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1soapy.html
@@ -7758,6 +8099,7 @@ share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1thread.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1thread.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1trellis.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1trellis.js
+share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1types.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1uhd.html
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1uhd.js
share/doc/gnuradio-${PKGVERSION}/html/namespacegr_1_1video__sdl.html
@@ -7949,6 +8291,9 @@ share/doc/gnuradio-${PKGVERSION}/html/navtreeindex79.js
share/doc/gnuradio-${PKGVERSION}/html/navtreeindex8.js
share/doc/gnuradio-${PKGVERSION}/html/navtreeindex80.js
share/doc/gnuradio-${PKGVERSION}/html/navtreeindex81.js
+share/doc/gnuradio-${PKGVERSION}/html/navtreeindex82.js
+share/doc/gnuradio-${PKGVERSION}/html/navtreeindex83.js
+share/doc/gnuradio-${PKGVERSION}/html/navtreeindex84.js
share/doc/gnuradio-${PKGVERSION}/html/navtreeindex9.js
share/doc/gnuradio-${PKGVERSION}/html/nco_8h.html
share/doc/gnuradio-${PKGVERSION}/html/nco_8h__incl.map
@@ -8405,6 +8750,29 @@ share/doc/gnuradio-${PKGVERSION}/html/pdu__set__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/pdu__set__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/pdu__set__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/pdu__set__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/pdu__split__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/pdu__to__stream__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/pdu__to__tagged__stream_8h.html
share/doc/gnuradio-${PKGVERSION}/html/pdu__to__tagged__stream_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/pdu__to__tagged__stream_8h__incl.md5
@@ -8642,6 +9010,18 @@ share/doc/gnuradio-${PKGVERSION}/html/plot__waterfall_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/plot__waterfall_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/plot__waterfall_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/plot__waterfall_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/pluto__utils__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/pm__remez_8h.html
share/doc/gnuradio-${PKGVERSION}/html/pm__remez_8h.js
share/doc/gnuradio-${PKGVERSION}/html/pm__remez_8h__incl.map
@@ -8804,7 +9184,6 @@ share/doc/gnuradio-${PKGVERSION}/html/polyphase__filterbank__pydoc__template_8h_
share/doc/gnuradio-${PKGVERSION}/html/polyphase__filterbank__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/polyphase__filterbank__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/prefs_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/prefs_8h.js
share/doc/gnuradio-${PKGVERSION}/html/prefs_8h__dep__incl.map
share/doc/gnuradio-${PKGVERSION}/html/prefs_8h__dep__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/prefs_8h__dep__incl.svg
@@ -9285,16 +9664,34 @@ share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__generic_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__generic_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__generic_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__generic_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__block__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc_8h.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__ddc__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc_8h.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__duc__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__graph_8h.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__graph_8h__dep__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__graph_8h__dep__incl.md5
@@ -9314,6 +9711,12 @@ share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__radio__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__streamer_8h.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__streamer_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__rx__streamer_8h__incl.md5
@@ -9330,6 +9733,12 @@ share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__radio__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__streamer_8h.html
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__streamer_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/rfnoc__tx__streamer_8h__incl.md5
@@ -9705,6 +10114,8 @@ share/doc/gnuradio-${PKGVERSION}/html/search/defines_0.html
share/doc/gnuradio-${PKGVERSION}/html/search/defines_0.js
share/doc/gnuradio-${PKGVERSION}/html/search/defines_1.html
share/doc/gnuradio-${PKGVERSION}/html/search/defines_1.js
+share/doc/gnuradio-${PKGVERSION}/html/search/defines_10.html
+share/doc/gnuradio-${PKGVERSION}/html/search/defines_10.js
share/doc/gnuradio-${PKGVERSION}/html/search/defines_2.html
share/doc/gnuradio-${PKGVERSION}/html/search/defines_2.js
share/doc/gnuradio-${PKGVERSION}/html/search/defines_3.html
@@ -9779,6 +10190,8 @@ share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_11.html
share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_11.js
share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_12.html
share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_12.js
+share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_13.html
+share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_13.js
share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_2.html
share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_2.js
share/doc/gnuradio-${PKGVERSION}/html/search/enumvalues_3.html
@@ -10211,31 +10624,6 @@ share/doc/gnuradio-${PKGVERSION}/html/sig__source__waveform__pydoc__template_8h_
share/doc/gnuradio-${PKGVERSION}/html/sig__source__waveform__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/sig__source__waveform__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/sig__source__waveform__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/simple__correlator__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__sync_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__sync_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/simple__framer__sync_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/simple__framer__sync__pydoc__template_8h.html
share/doc/gnuradio-${PKGVERSION}/html/simple__framer__sync__pydoc__template_8h.js
share/doc/gnuradio-${PKGVERSION}/html/simple__framer__sync__pydoc__template_8h__incl.map
@@ -10414,10 +10802,18 @@ share/doc/gnuradio-${PKGVERSION}/html/soapy__types_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/soapy__types_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/soapy__types_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h__dep__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__impl_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__pydoc__template_8h.html
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__pydoc__template_8h.js
share/doc/gnuradio-${PKGVERSION}/html/socket__pdu__pydoc__template_8h__incl.map
@@ -10533,6 +10929,14 @@ share/doc/gnuradio-${PKGVERSION}/html/stream__mux__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/stream__mux__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/stream__mux__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/stream__mux__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/stream__pdu__base_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/stream__to__streams_8h.html
share/doc/gnuradio-${PKGVERSION}/html/stream__to__streams_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/stream__to__streams_8h__incl.md5
@@ -10605,9 +11009,15 @@ share/doc/gnuradio-${PKGVERSION}/html/structcallbackregister__base.js
share/doc/gnuradio-${PKGVERSION}/html/structcallbackregister__base_1_1callback__base__t-members.html
share/doc/gnuradio-${PKGVERSION}/html/structcallbackregister__base_1_1callback__base__t.html
share/doc/gnuradio-${PKGVERSION}/html/structcallbackregister__base_1_1callback__base__t.js
+share/doc/gnuradio-${PKGVERSION}/html/structfmt_1_1formatter_3_01boost_1_1format_01_4-members.html
+share/doc/gnuradio-${PKGVERSION}/html/structfmt_1_1formatter_3_01boost_1_1format_01_4.html
+share/doc/gnuradio-${PKGVERSION}/html/structfmt_1_1formatter_3_01boost_1_1format_01_4.js
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1blocks_1_1wav__header__info-members.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1blocks_1_1wav__header__info.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1blocks_1_1wav__header__info.js
+share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1buftype-members.html
+share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1buftype.html
+share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1buftype.js
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1fec_1_1code_1_1block__data-members.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1fec_1_1code_1_1block__data.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1fec_1_1code_1_1block__data.js
@@ -10629,6 +11039,9 @@ share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1fft_1_1fft__outbuf.js
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1fft_1_1fft__outbuf_3_01float_00_01true_01_4-members.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1fft_1_1fft__outbuf_3_01float_00_01true_01_4.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1fft_1_1fft__outbuf_3_01float_00_01true_01_4.js
+share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1iio_1_1ctxInfo-members.html
+share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1iio_1_1ctxInfo.html
+share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1iio_1_1ctxInfo.js
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1soapy_1_1device__deleter-members.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1soapy_1_1device__deleter.html
share/doc/gnuradio-${PKGVERSION}/html/structgr_1_1soapy_1_1device__deleter.js
@@ -10821,17 +11234,6 @@ share/doc/gnuradio-${PKGVERSION}/html/tab_b.png
share/doc/gnuradio-${PKGVERSION}/html/tab_h.png
share/doc/gnuradio-${PKGVERSION}/html/tab_s.png
share/doc/gnuradio-${PKGVERSION}/html/tabs.css
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/tag__checker__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/tag__debug_8h.html
share/doc/gnuradio-${PKGVERSION}/html/tag__debug_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/tag__debug_8h__incl.md5
@@ -10981,17 +11383,38 @@ share/doc/gnuradio-${PKGVERSION}/html/tags__strobe__pydoc__template_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/tags__strobe__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/tags__strobe__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/tags__strobe__pydoc__template_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink_8h_source.html
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink__pydoc__template_8h.html
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink__pydoc__template_8h.js
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink__pydoc__template_8h__incl.map
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink__pydoc__template_8h__incl.md5
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink__pydoc__template_8h__incl.svg
-share/doc/gnuradio-${PKGVERSION}/html/tcp__server__sink__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/tags__to__pdu__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/take__skip__to__pdu__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/tcp__connection_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/tcp__sink_8h.html
share/doc/gnuradio-${PKGVERSION}/html/tcp__sink_8h.js
share/doc/gnuradio-${PKGVERSION}/html/tcp__sink_8h__dep__incl.map
@@ -11098,6 +11521,17 @@ share/doc/gnuradio-${PKGVERSION}/html/timeRasterGlobalData_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/timeRasterGlobalData_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/timeRasterGlobalData_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/timeRasterGlobalData_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/time__delta_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/time__delta_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/time__delta_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/time__delta_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/time__delta_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/time__delta__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/time__delta__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/time__delta__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/time__delta__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/time__delta__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/time__delta__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/time__raster__sink__b_8h.html
share/doc/gnuradio-${PKGVERSION}/html/time__raster__sink__b_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/time__raster__sink__b_8h__incl.md5
@@ -11267,6 +11701,15 @@ share/doc/gnuradio-${PKGVERSION}/html/transcendental__pydoc__template_8h__incl.m
share/doc/gnuradio-${PKGVERSION}/html/transcendental__pydoc__template_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/transcendental__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/transcendental__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/transfer__type_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/trigger__mode_8h.html
share/doc/gnuradio-${PKGVERSION}/html/trigger__mode_8h.js
share/doc/gnuradio-${PKGVERSION}/html/trigger__mode_8h__dep__incl.map
@@ -11292,10 +11735,18 @@ share/doc/gnuradio-${PKGVERSION}/html/tsb__vector__sink__pydoc__template_8h__inc
share/doc/gnuradio-${PKGVERSION}/html/tsb__vector__sink__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/tsb__vector__sink__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h__dep__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__impl_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__impl_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__impl_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__impl_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__impl_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__pydoc__template_8h.html
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__pydoc__template_8h.js
share/doc/gnuradio-${PKGVERSION}/html/tuntap__pdu__pydoc__template_8h__incl.map
@@ -11328,16 +11779,44 @@ share/doc/gnuradio-${PKGVERSION}/html/udp__header__types_8h__dep__incl.map
share/doc/gnuradio-${PKGVERSION}/html/udp__header__types_8h__dep__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/udp__header__types_8h__dep__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/udp__header__types_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/udp__sink__impl_8h.html
share/doc/gnuradio-${PKGVERSION}/html/udp__sink__impl_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/udp__sink__impl_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/udp__sink__impl_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/udp__sink__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/udp__sink__pydoc__template_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h__dep__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/udp__source_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/udp__source__impl_8h.html
share/doc/gnuradio-${PKGVERSION}/html/udp__source__impl_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/udp__source__impl_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/udp__source__impl_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/udp__source__impl_8h_source.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__source__pydoc__template_8h.html
+share/doc/gnuradio-${PKGVERSION}/html/udp__source__pydoc__template_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/udp__source__pydoc__template_8h__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/udp__source__pydoc__template_8h__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/udp__source__pydoc__template_8h__incl.svg
+share/doc/gnuradio-${PKGVERSION}/html/udp__source__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/uhd_8dox.html
share/doc/gnuradio-${PKGVERSION}/html/uhd__types_8h.html
share/doc/gnuradio-${PKGVERSION}/html/uhd__types_8h__incl.map
@@ -11715,6 +12194,9 @@ share/doc/gnuradio-${PKGVERSION}/html/xor__blk__pydoc__template_8h__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/xor__blk__pydoc__template_8h_source.html
share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h.html
share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h.js
+share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h__dep__incl.map
+share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h__dep__incl.md5
+share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h__dep__incl.svg
share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h__incl.map
share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h__incl.md5
share/doc/gnuradio-${PKGVERSION}/html/xoroshiro128p_8h__incl.svg
@@ -11756,6 +12238,8 @@ share/doc/gnuradio-${PKGVERSION}/xml/add__const__ss_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/add__const__ss__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/add__const__v_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/add__const__v__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/add__system__time_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/add__system__time__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/additive__scrambler__bb_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/additive__scrambler__bb__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/agc2_8h.xml
@@ -11816,6 +12300,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/atsc__interleaver_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__interleaver__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__pad_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__pad__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/atsc__plinfo_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__randomizer_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__randomizer__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__rs__decoder_8h.xml
@@ -11828,6 +12313,15 @@ share/doc/gnuradio-${PKGVERSION}/xml/atsc__trellis__encoder_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__trellis__encoder__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__viterbi__decoder_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/atsc__viterbi__decoder__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__sink_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__sink__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__sink__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__source_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__source__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__source__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__updater_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__updater__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/attr__updater__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/attributes_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/audio_8dox.xml
share/doc/gnuradio-${PKGVERSION}/xml/awgn__bp_8h.xml
@@ -11848,7 +12342,13 @@ share/doc/gnuradio-${PKGVERSION}/xml/block__impl_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/block__registry_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/blocks_8dox.xml
share/doc/gnuradio-${PKGVERSION}/xml/buffer_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/buffer__double__mapped_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/buffer__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/buffer__reader_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/buffer__reader__sm_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/buffer__single__mapped_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/buffer__type_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/buffer__type__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/build_2gnuradio-runtime_2python_2gnuradio_2gr_2bindings_2pydoc__macros_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/build_2gnuradio-runtime_2python_2pmt_2bindings_2pydoc__macros_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/build_2gr-analog_2python_2analog_2bindings_2pydoc__macros_8h.xml
@@ -11917,7 +12417,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classEyeDisplayForm.xml
share/doc/gnuradio-${PKGVERSION}/xml/classEyeDisplayPlot.xml
share/doc/gnuradio-${PKGVERSION}/xml/classEyeDisplaysForm.xml
share/doc/gnuradio-${PKGVERSION}/xml/classFFTAverageMenu.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classFFTSizeMenu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classFFTWindowMenu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classFreqControlPanel.xml
share/doc/gnuradio-${PKGVERSION}/xml/classFreqDisplayForm.xml
@@ -11944,8 +12443,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classNumberColorMapMenu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classNumberDisplayForm.xml
share/doc/gnuradio-${PKGVERSION}/xml/classNumberLayoutMenu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classNumberUpdateEvent.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classOtherAction.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classOtherDualAction.xml
share/doc/gnuradio-${PKGVERSION}/xml/classPlotTimeRaster.xml
share/doc/gnuradio-${PKGVERSION}/xml/classPlotWaterfall.xml
share/doc/gnuradio-${PKGVERSION}/xml/classPopupMenu.xml
@@ -12116,10 +12613,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1or__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1pack__k__bits__bb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1packed__to__unpacked.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1patterned__interleaver.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1pdu__filter.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1pdu__remove.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1pdu__set.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1pdu__to__tagged__stream.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1peak__detector.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1peak__detector2__fb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1phase__shift.xml
@@ -12127,7 +12620,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1plateau__detector__fb.
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1probe__rate.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1probe__signal.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1probe__signal__v.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1random__pdu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1regenerate__bb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1repack__bits__bb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1repeat.xml
@@ -12140,7 +12632,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1selector.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1short__to__char.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1short__to__float.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1skiphead.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1socket__pdu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1stream__demux.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1stream__mux.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1stream__to__streams.xml
@@ -12158,18 +12649,13 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tagged__file__sink.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tagged__stream__align.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tagged__stream__multiply__length.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tagged__stream__mux.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tagged__stream__to__pdu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tags__strobe.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tcp__server__sink.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1test__tag__variable__rate__ff.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1threshold__ff.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1throttle.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1transcendental.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tsb__vector__sink.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1tuntap__pdu.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1uchar__to__float.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1udp__sink.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1udp__source.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1unpack__k__bits__bb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1unpacked__to__packed.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1vco__c.xml
@@ -12184,7 +12670,11 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1wavfile__sink.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1wavfile__source.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1blocks_1_1xor__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1buffer.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1buffer__double__mapped.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1buffer__reader.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1buffer__reader__sm.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1buffer__single__mapped.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1buffer__type__base.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1channels_1_1cfo__model.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1channels_1_1channel__model.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1channels_1_1channel__model2.xml
@@ -12193,6 +12683,8 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1channels_1_1fading__model.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1channels_1_1selective__fading__model.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1channels_1_1selective__fading__model2.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1channels_1_1sro__model.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1custom__lock.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1custom__lock__if.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1adaptive__algorithm.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1adaptive__algorithm__cma.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1adaptive__algorithm__lms.xml
@@ -12203,7 +12695,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1burst__shaper.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1chunks__to__symbols.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1clock__recovery__mm__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1clock__recovery__mm__ff.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1cma__equalizer__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1constellation.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1constellation__16qam.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1constellation__8psk.xml
@@ -12250,10 +12741,8 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1header__format__crc.x
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1header__format__default.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1header__format__ofdm.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1header__payload__demux.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1kurtotic__equalizer__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1lfsr.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1linear__equalizer.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1lms__dd__equalizer__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1map__bb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1meas__evm__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1mpsk__snr__est.xml
@@ -12287,8 +12776,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1protocol__formatter__
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1protocol__formatter__bb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1protocol__parser__b.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1scrambler__bb.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1simple__correlator.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1simple__framer.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1snr__est__m2m4.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1symbol__sync__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1digital_1_1symbol__sync__ff.xml
@@ -12344,6 +12831,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1dtv_1_1dvbt__reed__solomon__enc.
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1dtv_1_1dvbt__reference__signals.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1dtv_1_1dvbt__symbol__inner__interleaver.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1dtv_1_1dvbt__viterbi__decoder.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1dtv_1_1plinfo.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1edge.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1endpoint.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1fec_1_1async__decoder.xml
@@ -12429,8 +12917,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__fir__interpolato
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__fir__interpolator__ff.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__interp__differentiator__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__interp__differentiator__ff.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__interpolator__cc.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__interpolator__ff.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__resampler__cc.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1mmse__resampler__ff.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1filter_1_1pfb__arb__resampler__ccc.xml
@@ -12450,9 +12936,33 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1fxpt.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1fxpt__nco.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1fxpt__vco.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1hier__block2.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1host__buffer.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1attr__sink.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1attr__sink__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1attr__source.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1attr__source__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1attr__updater.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1attr__updater__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1dds__control.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1dds__control__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1device__sink.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1device__sink__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1device__source.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1device__source__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms2__sink.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms2__sink__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms2__source.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms2__source__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms5__sink.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms5__sink__f32c.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms5__sink__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms5__source.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms5__source__f32c.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1fmcomms5__source__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1iio_1_1iio__param__t.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1io__signature.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1logger.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1logger__config.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1logging.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1message.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1messages_1_1msg__accepter.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1messages_1_1msg__accepter__msgq.xml
@@ -12464,12 +12974,30 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1msg__endpoint.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1msg__handler.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1msg__queue.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1nco.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1socket__pdu.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1socket__pdu__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1stream__pdu__base.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1tcp__connection.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1tcp__sink.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1tcp__sink__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1tuntap__pdu.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1tuntap__pdu__impl.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1udp__sink.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1udp__sink__impl.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1udp__source.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1network_1_1udp__source__impl.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1add__system__time.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1pdu__filter.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1pdu__remove.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1pdu__set.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1pdu__split.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1pdu__to__stream.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1pdu__to__tagged__stream.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1random__pdu.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1tagged__stream__to__pdu.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1tags__to__pdu.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1take__skip__to__pdu.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1pdu_1_1time__delta.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1prefs.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1qtgui_1_1ber__sink__b.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1qtgui_1_1const__sink__c.xml
@@ -12499,7 +13027,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1soapy_1_1source__impl.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1sync__block.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1sync__decimator.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1sync__interpolator.xml
-share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1tag__checker.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1tagged__stream__block.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1thread_1_1thread__body__wrapper.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1thread_1_1thread__group.xml
@@ -12559,6 +13086,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1vocoder_1_1ulaw__encode__sb.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1wavelet_1_1squash__ff.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1wavelet_1_1wavelet__ff.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1wavelet_1_1wvps__ff.xml
+share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1xoroshiro128p__prng.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1zeromq_1_1pub__msg__sink.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1zeromq_1_1pub__sink.xml
share/doc/gnuradio-${PKGVERSION}/xml/classgr_1_1zeromq_1_1pull__msg__source.xml
@@ -12636,8 +13164,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/clock__recovery__mm__cc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/clock__recovery__mm__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/clock__recovery__mm__ff_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/clock__recovery__mm__ff__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/cma__equalizer__cc_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/cma__equalizer__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/codec2_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/codec2__decode__ps_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/codec2__decode__ps__pydoc__template_8h.xml
@@ -12726,12 +13252,10 @@ share/doc/gnuradio-${PKGVERSION}/xml/cpmmod__bc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/cpmmod__bc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/crc16__async__bb_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/crc16__async__bb__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/crc32_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/crc32__async__bb_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/crc32__async__bb__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/crc32__bb_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/crc32__bb__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/crc32__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ctcss__squelch__ff_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ctcss__squelch__ff__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ctrlport_8dox.xml
@@ -12749,6 +13273,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/ctrlport__probe__c_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ctrlport__probe__c__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ctrlport__probe__psd_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ctrlport__probe__psd__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/custom__lock_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/cvsd__decode__bs_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/cvsd__decode__bs__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/cvsd__encode__sb_8h.xml
@@ -12757,6 +13282,9 @@ share/doc/gnuradio-${PKGVERSION}/xml/dc__blocker__cc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/dc__blocker__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/dc__blocker__ff_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/dc__blocker__ff__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dds__control_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dds__control__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dds__control__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/decision__feedback__equalizer_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/decision__feedback__equalizer__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/decode__ccsds__27__fb_8h.xml
@@ -12771,6 +13299,12 @@ share/doc/gnuradio-${PKGVERSION}/xml/depuncture__bb_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/depuncture__bb__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/descrambler__bb_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/descrambler__bb__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/device__sink_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/device__sink__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/device__sink__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/device__source_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/device__source__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/device__source__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/diff__coding__type_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/diff__coding__type__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/diff__decoder__bb_8h.xml
@@ -12987,6 +13521,23 @@ share/doc/gnuradio-${PKGVERSION}/xml/dir_000203.xml
share/doc/gnuradio-${PKGVERSION}/xml/dir_000204.xml
share/doc/gnuradio-${PKGVERSION}/xml/dir_000205.xml
share/doc/gnuradio-${PKGVERSION}/xml/dir_000206.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000207.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000208.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000209.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000210.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000211.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000212.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000213.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000214.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000215.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000216.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000217.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000218.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000219.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000220.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000221.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000222.xml
+share/doc/gnuradio-${PKGVERSION}/xml/dir_000223.xml
share/doc/gnuradio-${PKGVERSION}/xml/display__qt_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/displayform_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/displayform__pydoc__template_8h.xml
@@ -13159,6 +13710,22 @@ share/doc/gnuradio-${PKGVERSION}/xml/float__to__uchar_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/float__to__uchar__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/flowgraph_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/flowgraph__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__sink_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__sink__f32c__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__sink__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__sink__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__source_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__source__f32c__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__source__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms2__source__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__sink_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__sink__f32c__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__sink__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__sink__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__source_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__source__f32c__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__source__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/fmcomms5__source__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/fmdet__cf_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/fmdet__cf__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/form__menus_8h.xml
@@ -13230,10 +13797,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/gr-audio_2include_2gnuradio_2audio_2source_
share/doc/gnuradio-${PKGVERSION}/xml/gr-audio_2python_2audio_2bindings_2docstrings_2sink__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-audio_2python_2audio_2bindings_2docstrings_2source__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-blocks_2include_2gnuradio_2blocks_2api_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-blocks_2include_2gnuradio_2blocks_2udp__sink_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-blocks_2include_2gnuradio_2blocks_2udp__source_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__sink__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-blocks_2python_2blocks_2bindings_2docstrings_2udp__source__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-channels_2include_2gnuradio_2channels_2api_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-digital_2include_2gnuradio_2digital_2api_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-dtv_2include_2gnuradio_2dtv_2api_8h.xml
@@ -13244,11 +13807,9 @@ share/doc/gnuradio-${PKGVERSION}/xml/gr-fec_2python_2fec_2bindings_2docstrings_2
share/doc/gnuradio-${PKGVERSION}/xml/gr-fec_2python_2fec_2bindings_2docstrings_2viterbi__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-fft_2include_2gnuradio_2fft_2api_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-filter_2include_2gnuradio_2filter_2api_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/gr-iio_2include_2gnuradio_2iio_2api_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-network_2include_2gnuradio_2network_2api_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-network_2include_2gnuradio_2network_2udp__sink_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-network_2include_2gnuradio_2network_2udp__source_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-network_2python_2network_2bindings_2docstrings_2udp__sink__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/gr-network_2python_2network_2bindings_2docstrings_2udp__source__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/gr-pdu_2include_2gnuradio_2pdu_2api_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-qtgui_2include_2gnuradio_2qtgui_2api_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-soapy_2include_2gnuradio_2soapy_2api_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/gr-soapy_2include_2gnuradio_2soapy_2block_8h.xml
@@ -13301,6 +13862,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/group__modulators__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/group__networking__tools__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/group__ofdm__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/group__packet__operators__blk.xml
+share/doc/gnuradio-${PKGVERSION}/xml/group__pdu__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/group__peak__detectors__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/group__qtgui__blk.xml
share/doc/gnuradio-${PKGVERSION}/xml/group__resamplers__blk.xml
@@ -13347,6 +13909,8 @@ share/doc/gnuradio-${PKGVERSION}/xml/histogram__sink__f_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/histogram__sink__f__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/histogramdisplayform_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/histogramdisplayform__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/host__buffer_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/iio__types_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/iir__filter_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/iir__filter__ccc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/iir__filter__ccc__pydoc__template_8h.xml
@@ -13389,8 +13953,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/keep__m__in__n_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/keep__m__in__n__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/keep__one__in__n_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/keep__one__in__n__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/kurtotic__equalizer__cc_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/kurtotic__equalizer__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ldpc__G__matrix_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ldpc__G__matrix__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ldpc__H__matrix_8h.xml
@@ -13416,8 +13978,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/lfsr__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/license_8dox.xml
share/doc/gnuradio-${PKGVERSION}/xml/linear__equalizer_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/linear__equalizer__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/lms__dd__equalizer__cc_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/lms__dd__equalizer__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/logger_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/logger__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/magphase__to__complex_8h.xml
@@ -13448,7 +14008,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/metrics_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/metrics__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/min__blk_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/min__blk__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/misc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__fir__interpolator__cc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__fir__interpolator__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__fir__interpolator__ff_8h.xml
@@ -13457,10 +14016,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/mmse__interp__differentiator__cc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__interp__differentiator__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__interp__differentiator__ff_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__interp__differentiator__ff__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/mmse__interpolator__cc_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/mmse__interpolator__cc__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/mmse__interpolator__ff_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/mmse__interpolator__ff__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__resampler__cc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__resampler__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mmse__resampler__ff_8h.xml
@@ -13499,11 +14054,12 @@ share/doc/gnuradio-${PKGVERSION}/xml/mute_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/mute__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespaceGNURadio.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespaceUi.xml
-share/doc/gnuradio-${PKGVERSION}/xml/namespace_0d81.xml
+share/doc/gnuradio-${PKGVERSION}/xml/namespace_0d87.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespaceapache.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespaceapache_1_1thrift.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespaceapache_1_1thrift_1_1server.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespaceboost.xml
+share/doc/gnuradio-${PKGVERSION}/xml/namespacefmt.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegnuradio.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegnuradio_1_1detail.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr.xml
@@ -13513,7 +14069,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1audio.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1audio_1_1osx.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1blocks.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1blocks_1_1kernel.xml
-share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1blocks_1_1pdu.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1channels.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1digital.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1dtv.xml
@@ -13523,12 +14078,17 @@ share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1fec_1_1code_1_1polar.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1fft.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1filter.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1filter_1_1kernel.xml
+share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1iio.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1messages.xml
+share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1metadata__keys.xml
+share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1msgport__names.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1network.xml
+share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1pdu.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1qtgui.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1soapy.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1thread.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1trellis.xml
+share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1types.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1uhd.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1video__sdl.xml
share/doc/gnuradio-${PKGVERSION}/xml/namespacegr_1_1vocoder.xml
@@ -13632,6 +14192,10 @@ share/doc/gnuradio-${PKGVERSION}/xml/pdu__remove_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pdu__remove__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pdu__set_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pdu__set__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/pdu__split_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/pdu__split__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/pdu__to__stream_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/pdu__to__stream__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pdu__to__tagged__stream_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pdu__to__tagged__stream__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/peak__detector2__fb_8h.xml
@@ -13674,6 +14238,8 @@ share/doc/gnuradio-${PKGVERSION}/xml/pll__refout__cc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pll__refout__cc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/plot__raster_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/plot__waterfall_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/pluto__utils_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/pluto__utils__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pm__remez_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pm__remez__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/pmt_8h.xml
@@ -13787,14 +14353,19 @@ share/doc/gnuradio-${PKGVERSION}/xml/req__source_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/req__source__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__block_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__block__generic_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__block__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__ddc_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__ddc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__duc_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__duc__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__graph_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__graph__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__rx__radio_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__rx__radio__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__rx__streamer_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__rx__streamer__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__tx__radio_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__tx__radio__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__tx__streamer_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rfnoc__tx__streamer__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/rms__cf_8h.xml
@@ -13852,11 +14423,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/sig__source_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/sig__source__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/sig__source__waveform_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/sig__source__waveform__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/simple__correlator_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/simple__correlator__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/simple__framer_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/simple__framer__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/simple__framer__sync_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/simple__framer__sync__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/simple__squelch__cc_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/simple__squelch__cc__pydoc__template_8h.xml
@@ -13888,6 +14454,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/skiphead__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/soapy__common_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/soapy__types_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/socket__pdu_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/socket__pdu__impl_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/socket__pdu__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/source__impl_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/spectrumUpdateEvents_8h.xml
@@ -13906,6 +14473,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/stream__demux_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/stream__demux__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/stream__mux_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/stream__mux__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/stream__pdu__base_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/stream__to__streams_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/stream__to__streams__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/stream__to__tagged__stream_8h.xml
@@ -13920,7 +14488,9 @@ share/doc/gnuradio-${PKGVERSION}/xml/stretch__ff_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/stretch__ff__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/structcallbackregister__base.xml
share/doc/gnuradio-${PKGVERSION}/xml/structcallbackregister__base_1_1callback__base__t.xml
+share/doc/gnuradio-${PKGVERSION}/xml/structfmt_1_1formatter_3_01boost_1_1format_01_4.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1blocks_1_1wav__header__info.xml
+share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1buftype.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1fec_1_1code_1_1block__data.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1fec_1_1code_1_1matrix.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1fec_1_1viterbi__state.xml
@@ -13928,6 +14498,7 @@ share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1fft_1_1fft__inbuf.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1fft_1_1fft__inbuf_3_01float_00_01false_01_4.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1fft_1_1fft__outbuf.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1fft_1_1fft__outbuf_3_01float_00_01true_01_4.xml
+share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1iio_1_1ctxInfo.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1soapy_1_1device__deleter.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1tag__t.xml
share/doc/gnuradio-${PKGVERSION}/xml/structgr_1_1tpb__detail.xml
@@ -13983,8 +14554,6 @@ share/doc/gnuradio-${PKGVERSION}/xml/sync__interpolator_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/sync__interpolator__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/sys__paths_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/sys__paths__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/tag__checker_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/tag__checker__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tag__debug_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tag__debug__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tag__gate_8h.xml
@@ -14011,8 +14580,11 @@ share/doc/gnuradio-${PKGVERSION}/xml/tags_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tags__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tags__strobe_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tags__strobe__pydoc__template_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/tcp__server__sink_8h.xml
-share/doc/gnuradio-${PKGVERSION}/xml/tcp__server__sink__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/tags__to__pdu_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/tags__to__pdu__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/take__skip__to__pdu_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/take__skip__to__pdu__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/tcp__connection_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tcp__sink_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tcp__sink__impl_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tcp__sink__pydoc__template_8h.xml
@@ -14029,6 +14601,8 @@ share/doc/gnuradio-${PKGVERSION}/xml/thrift__server__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/throttle_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/throttle__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/timeRasterGlobalData_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/time__delta_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/time__delta__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/time__raster__sink__b_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/time__raster__sink__b__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/time__raster__sink__f_8h.xml
@@ -14057,18 +14631,24 @@ share/doc/gnuradio-${PKGVERSION}/xml/tpc__encoder_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tpc__encoder__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/transcendental_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/transcendental__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/transfer__type_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/trigger__mode_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/trigger__mode__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tsb__vector__sink_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tsb__vector__sink__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tuntap__pdu_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/tuntap__pdu__impl_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/tuntap__pdu__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/types_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/uchar__to__float_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/uchar__to__float__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/udp__header__types_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/udp__sink_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/udp__sink__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/udp__sink__pydoc__template_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/udp__source_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/udp__source__impl_8h.xml
+share/doc/gnuradio-${PKGVERSION}/xml/udp__source__pydoc__template_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/uhd_8dox.xml
share/doc/gnuradio-${PKGVERSION}/xml/uhd__types_8h.xml
share/doc/gnuradio-${PKGVERSION}/xml/ulaw__decode__bs_8h.xml
diff --git a/ham/gnuradio-dtv/Makefile b/ham/gnuradio-dtv/Makefile
index f0b0aac6028..446e35fa5e0 100644
--- a/ham/gnuradio-dtv/Makefile
+++ b/ham/gnuradio-dtv/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.36 2022/01/10 01:46:35 ryoon Exp $
+# $NetBSD: Makefile,v 1.37 2022/01/16 18:06:26 tnn Exp $
PKGNAME= gnuradio-dtv-${VERSION}
-PKGREVISION= 1
COMMENT= Various digital television standards of GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-dtv/PLIST b/ham/gnuradio-dtv/PLIST
index 8b946f20023..f5cee2f18d7 100644
--- a/ham/gnuradio-dtv/PLIST
+++ b/ham/gnuradio-dtv/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.11 2021/12/11 14:57:50 tnn Exp $
+@comment $NetBSD: PLIST,v 1.12 2022/01/16 18:06:26 tnn Exp $
include/gnuradio/dtv/api.h
include/gnuradio/dtv/atsc_consts.h
include/gnuradio/dtv/atsc_deinterleaver.h
@@ -10,6 +10,7 @@ include/gnuradio/dtv/atsc_fpll.h
include/gnuradio/dtv/atsc_fs_checker.h
include/gnuradio/dtv/atsc_interleaver.h
include/gnuradio/dtv/atsc_pad.h
+include/gnuradio/dtv/atsc_plinfo.h
include/gnuradio/dtv/atsc_randomizer.h
include/gnuradio/dtv/atsc_rs_decoder.h
include/gnuradio/dtv/atsc_rs_encoder.h
@@ -62,7 +63,7 @@ lib/cmake/gnuradio/gnuradio-dtvConfig.cmake
lib/cmake/gnuradio/gnuradio-dtvTargets-release.cmake
lib/cmake/gnuradio/gnuradio-dtvTargets.cmake
lib/libgnuradio-dtv.so
-lib/libgnuradio-dtv.so.3.9.4
+lib/libgnuradio-dtv.so.3.10.0
lib/libgnuradio-dtv.so.${PKGVERSION}
lib/pkgconfig/gnuradio-dtv.pc
${PYSITELIB}/gnuradio/dtv/__init__.py
diff --git a/ham/gnuradio-dtv/buildlink3.mk b/ham/gnuradio-dtv/buildlink3.mk
index a056dd934da..2a34b6e8049 100644
--- a/ham/gnuradio-dtv/buildlink3.mk
+++ b/ham/gnuradio-dtv/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.3 2021/12/11 14:57:50 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.4 2022/01/16 18:06:26 tnn Exp $
BUILDLINK_TREE+= gnuradio-dtv
.if !defined(GNURADIO_DTV_BUILDLINK3_MK)
GNURADIO_DTV_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-dtv+= gnuradio-dtv>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-dtv+= gnuradio-dtv>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-dtv+= gnuradio-dtv>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-dtv?= ../../ham/gnuradio-dtv
.endif # GNURADIO_DTV_BUILDLINK3_MK
diff --git a/ham/gnuradio-fec/Makefile b/ham/gnuradio-fec/Makefile
index 6bd76e79205..df094b08811 100644
--- a/ham/gnuradio-fec/Makefile
+++ b/ham/gnuradio-fec/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.35 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.36 2022/01/16 18:06:26 tnn Exp $
PKGNAME= gnuradio-fec-${VERSION}
-PKGREVISION= 1
COMMENT= Forward Error Correction blocks, utilities, & examples of GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-fec/PLIST b/ham/gnuradio-fec/PLIST
index 1cbb45dabc4..99ba5bb843e 100644
--- a/ham/gnuradio-fec/PLIST
+++ b/ham/gnuradio-fec/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.12 2021/12/11 14:57:50 tnn Exp $
+@comment $NetBSD: PLIST,v 1.13 2022/01/16 18:06:26 tnn Exp $
bin/polar_channel_construction
include/gnuradio/fec/alist.h
include/gnuradio/fec/api.h
@@ -54,7 +54,7 @@ lib/cmake/gnuradio/gnuradio-fecConfig.cmake
lib/cmake/gnuradio/gnuradio-fecTargets-release.cmake
lib/cmake/gnuradio/gnuradio-fecTargets.cmake
lib/libgnuradio-fec.so
-lib/libgnuradio-fec.so.3.9.4
+lib/libgnuradio-fec.so.3.10.0
lib/libgnuradio-fec.so.${PKGVERSION}
lib/pkgconfig/gnuradio-fec.pc
${PYSITELIB}/gnuradio/fec/LDPC/Generate_LDPC_matrix.py
diff --git a/ham/gnuradio-fec/buildlink3.mk b/ham/gnuradio-fec/buildlink3.mk
index 10151b9142d..90e8d7e83b7 100644
--- a/ham/gnuradio-fec/buildlink3.mk
+++ b/ham/gnuradio-fec/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.3 2021/12/11 14:57:50 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.4 2022/01/16 18:06:26 tnn Exp $
BUILDLINK_TREE+= gnuradio-fec
.if !defined(GNURADIO_FEC_BUILDLINK3_MK)
GNURADIO_FEC_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-fec+= gnuradio-fec>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-fec+= gnuradio-fec>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-fec+= gnuradio-fec>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-fec?= ../../ham/gnuradio-fec
.endif # GNURADIO_FEC_BUILDLINK3_MK
diff --git a/ham/gnuradio-network/Makefile b/ham/gnuradio-network/Makefile
index 13db23dfea6..adf74e09c2c 100644
--- a/ham/gnuradio-network/Makefile
+++ b/ham/gnuradio-network/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.11 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.12 2022/01/16 18:06:26 tnn Exp $
PKGNAME= gnuradio-network-${VERSION}
-PKGREVISION= 1
COMMENT= Network blocks for GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-network/PLIST b/ham/gnuradio-network/PLIST
index 8f53a4de7f1..2cf124e46f9 100644
--- a/ham/gnuradio-network/PLIST
+++ b/ham/gnuradio-network/PLIST
@@ -1,7 +1,9 @@
-@comment $NetBSD: PLIST,v 1.3 2021/12/11 14:57:50 tnn Exp $
+@comment $NetBSD: PLIST,v 1.4 2022/01/16 18:06:26 tnn Exp $
include/gnuradio/network/api.h
include/gnuradio/network/packet_headers.h
+include/gnuradio/network/socket_pdu.h
include/gnuradio/network/tcp_sink.h
+include/gnuradio/network/tuntap_pdu.h
include/gnuradio/network/udp_header_types.h
include/gnuradio/network/udp_sink.h
include/gnuradio/network/udp_source.h
@@ -9,7 +11,7 @@ lib/cmake/gnuradio/gnuradio-networkConfig.cmake
lib/cmake/gnuradio/gnuradio-networkTargets-release.cmake
lib/cmake/gnuradio/gnuradio-networkTargets.cmake
lib/libgnuradio-network.so
-lib/libgnuradio-network.so.3.9.4
+lib/libgnuradio-network.so.3.10.0
lib/libgnuradio-network.so.${PKGVERSION}
lib/pkgconfig/gnuradio-network.pc
${PYSITELIB}/gnuradio/network/__init__.py
@@ -31,7 +33,9 @@ share/gnuradio/examples/network/test_udp_sink_seq.grc
share/gnuradio/examples/network/test_udp_source.grc
share/gnuradio/examples/network/test_udp_source_ipv6.grc
share/gnuradio/examples/network/test_udp_source_seq.grc
+share/gnuradio/grc/blocks/network_socket_pdu.block.yml
share/gnuradio/grc/blocks/network_tcp_sink.block.yml
share/gnuradio/grc/blocks/network_tcp_source.block.yml
+share/gnuradio/grc/blocks/network_tuntap_pdu.block.yml
share/gnuradio/grc/blocks/network_udp_sink.block.yml
share/gnuradio/grc/blocks/network_udp_source.block.yml
diff --git a/ham/gnuradio-pdu/DESCR b/ham/gnuradio-pdu/DESCR
new file mode 100644
index 00000000000..9dcd6fffdd1
--- /dev/null
+++ b/ham/gnuradio-pdu/DESCR
@@ -0,0 +1,7 @@
+GNU Radio is a collection of software that when combined with minimal hardware,
+allows the construction of radios where the actual waveforms transmitted and
+received are defined by software. What this means is that it turns the digital
+modulation schemes used in today's high performance wireless devices into
+software problems.
+
+Protocol Data Units.
diff --git a/ham/gnuradio-pdu/Makefile b/ham/gnuradio-pdu/Makefile
new file mode 100644
index 00000000000..0e7ac60a3f3
--- /dev/null
+++ b/ham/gnuradio-pdu/Makefile
@@ -0,0 +1,17 @@
+# $NetBSD: Makefile,v 1.1 2022/01/16 18:06:26 tnn Exp $
+
+PKGNAME= gnuradio-pdu-${VERSION}
+COMMENT= Protocol Data Units for GNU Radio
+
+.include "../../ham/gnuradio-core/Makefile.common"
+.include "../../ham/gnuradio-core/Nocore.mk"
+# link to libgnuradio-fft.so.${PKGVERSON_NOREV}
+.include "../../ham/gnuradio-core/buildlink3.mk"
+
+CMAKE_ARGS+= -DENABLE_DEFAULT=OFF
+CMAKE_ARGS+= -DENABLE_GR_PDU=ON
+CMAKE_ARGS+= -DENABLE_GRC=ON
+
+PLIST_MINUS+= companion
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/ham/gnuradio-pdu/PLIST b/ham/gnuradio-pdu/PLIST
new file mode 100644
index 00000000000..113aa601dbd
--- /dev/null
+++ b/ham/gnuradio-pdu/PLIST
@@ -0,0 +1,48 @@
+@comment $NetBSD: PLIST,v 1.1 2022/01/16 18:06:26 tnn Exp $
+include/gnuradio/pdu/add_system_time.h
+include/gnuradio/pdu/api.h
+include/gnuradio/pdu/pdu_filter.h
+include/gnuradio/pdu/pdu_remove.h
+include/gnuradio/pdu/pdu_set.h
+include/gnuradio/pdu/pdu_split.h
+include/gnuradio/pdu/pdu_to_stream.h
+include/gnuradio/pdu/pdu_to_tagged_stream.h
+include/gnuradio/pdu/random_pdu.h
+include/gnuradio/pdu/tagged_stream_to_pdu.h
+include/gnuradio/pdu/tags_to_pdu.h
+include/gnuradio/pdu/take_skip_to_pdu.h
+include/gnuradio/pdu/time_delta.h
+lib/cmake/gnuradio/gnuradio-pduConfig.cmake
+lib/cmake/gnuradio/gnuradio-pduTargets-release.cmake
+lib/cmake/gnuradio/gnuradio-pduTargets.cmake
+lib/libgnuradio-pdu.so
+lib/libgnuradio-pdu.so.3.10.0
+lib/libgnuradio-pdu.so.${PKGVERSION}
+lib/pkgconfig/gnuradio-pdu.pc
+${PYSITELIB}/gnuradio/pdu/__init__.py
+${PYSITELIB}/gnuradio/pdu/__init__.pyc
+${PYSITELIB}/gnuradio/pdu/__init__.pyo
+${PYSITELIB}/gnuradio/pdu/pdu_lambda.py
+${PYSITELIB}/gnuradio/pdu/pdu_lambda.pyc
+${PYSITELIB}/gnuradio/pdu/pdu_lambda.pyo
+${PYSITELIB}/gnuradio/pdu/pdu_python.so
+share/gnuradio/examples/pdu/pdu_lambda_chirp_demo.grc
+share/gnuradio/examples/pdu/pdu_lambda_example.grc
+share/gnuradio/examples/pdu/pdu_tools_demo.grc
+share/gnuradio/examples/pdu/simple_pdu_to_stream_example.grc
+share/gnuradio/examples/pdu/tags_to_pdu_example.grc
+share/gnuradio/examples/pdu/take_skip_to_pdu_example.grc
+share/gnuradio/grc/blocks/pdu.tree.yml
+share/gnuradio/grc/blocks/pdu_add_system_time.block.yml
+share/gnuradio/grc/blocks/pdu_pdu_filter.block.yml
+share/gnuradio/grc/blocks/pdu_pdu_lambda.block.yml
+share/gnuradio/grc/blocks/pdu_pdu_remove.block.yml
+share/gnuradio/grc/blocks/pdu_pdu_set.block.yml
+share/gnuradio/grc/blocks/pdu_pdu_split.block.yml
+share/gnuradio/grc/blocks/pdu_pdu_to_stream.block.yml
+share/gnuradio/grc/blocks/pdu_pdu_to_tagged_stream.block.yml
+share/gnuradio/grc/blocks/pdu_random_pdu.block.yml
+share/gnuradio/grc/blocks/pdu_tagged_stream_to_pdu.block.yml
+share/gnuradio/grc/blocks/pdu_tags_to_pdu.block.yml
+share/gnuradio/grc/blocks/pdu_take_skip_to_pdu.block.yml
+share/gnuradio/grc/blocks/pdu_time_delta.block.yml
diff --git a/ham/gnuradio-pdu/buildlink3.mk b/ham/gnuradio-pdu/buildlink3.mk
new file mode 100644
index 00000000000..399f4034d31
--- /dev/null
+++ b/ham/gnuradio-pdu/buildlink3.mk
@@ -0,0 +1,12 @@
+# $NetBSD: buildlink3.mk,v 1.1 2022/01/16 18:06:26 tnn Exp $
+
+BUILDLINK_TREE+= gnuradio-pdu
+
+.if !defined(GNURADIO_PDU_BUILDLINK3_MK)
+GNURADIO_PDU_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.gnuradio-pdu+= gnuradio-pdu>=3.10.0.0
+BUILDLINK_PKGSRCDIR.gnuradio-pdu?= ../../ham/gnuradio-pdu
+.endif # GNURADIO_PDU_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -gnuradio-pdu
diff --git a/ham/gnuradio-qtgui/Makefile b/ham/gnuradio-qtgui/Makefile
index ccc0665bc91..46c4e58df86 100644
--- a/ham/gnuradio-qtgui/Makefile
+++ b/ham/gnuradio-qtgui/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.44 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.45 2022/01/16 18:06:26 tnn Exp $
PKGNAME= gnuradio-qtgui-${VERSION}
-PKGREVISION= 1
COMMENT= Qt GUI module of GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-qtgui/PLIST b/ham/gnuradio-qtgui/PLIST
index ce03412a86a..6b7975fbeeb 100644
--- a/ham/gnuradio-qtgui/PLIST
+++ b/ham/gnuradio-qtgui/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.13 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.14 2022/01/16 18:06:26 tnn Exp $
include/gnuradio/qtgui/ConstellationDisplayPlot.h
include/gnuradio/qtgui/DisplayPlot.h
include/gnuradio/qtgui/EyeDisplayPlot.h
@@ -54,7 +54,7 @@ lib/cmake/gnuradio/gnuradio-qtguiConfig.cmake
lib/cmake/gnuradio/gnuradio-qtguiTargets-release.cmake
lib/cmake/gnuradio/gnuradio-qtguiTargets.cmake
lib/libgnuradio-qtgui.so
-lib/libgnuradio-qtgui.so.3.9.4
+lib/libgnuradio-qtgui.so.3.10.0
lib/libgnuradio-qtgui.so.${PKGVERSION}
lib/pkgconfig/gnuradio-qtgui.pc
${PYSITELIB}/gnuradio/qtgui/__init__.py
diff --git a/ham/gnuradio-soapy-sdr/Makefile b/ham/gnuradio-soapy-sdr/Makefile
index a754e36ccb3..b68efdc5f75 100644
--- a/ham/gnuradio-soapy-sdr/Makefile
+++ b/ham/gnuradio-soapy-sdr/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.6 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.7 2022/01/16 18:06:26 tnn Exp $
PKGNAME= gnuradio-soapy-sdr-${VERSION}
-PKGREVISION= 1
COMMENT= GNU Radio bindings for SoapySDR
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-soapy-sdr/PLIST b/ham/gnuradio-soapy-sdr/PLIST
index 69b2d0022aa..393986e2f78 100644
--- a/ham/gnuradio-soapy-sdr/PLIST
+++ b/ham/gnuradio-soapy-sdr/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.2 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.3 2022/01/16 18:06:26 tnn Exp $
include/gnuradio/soapy/api.h
include/gnuradio/soapy/block.h
include/gnuradio/soapy/sink.h
@@ -8,7 +8,7 @@ lib/cmake/gnuradio/gnuradio-soapyConfig.cmake
lib/cmake/gnuradio/gnuradio-soapyTargets-release.cmake
lib/cmake/gnuradio/gnuradio-soapyTargets.cmake
lib/libgnuradio-soapy.so
-lib/libgnuradio-soapy.so.3.9.4
+lib/libgnuradio-soapy.so.3.10.0
lib/libgnuradio-soapy.so.${PKGVERSION}
lib/pkgconfig/gnuradio-soapy.pc
${PYSITELIB}/gnuradio/soapy/__init__.py
diff --git a/ham/gnuradio-soapy-sdr/buildlink3.mk b/ham/gnuradio-soapy-sdr/buildlink3.mk
index a6bc89da99f..c625602d5fb 100644
--- a/ham/gnuradio-soapy-sdr/buildlink3.mk
+++ b/ham/gnuradio-soapy-sdr/buildlink3.mk
@@ -1,11 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.1 2021/06/27 08:11:54 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.2 2022/01/16 18:06:26 tnn Exp $
BUILDLINK_TREE+= gnuradio-soapy-sdr
.if !defined(GNURADIO_SOAPY_SDR_BUILDLINK3_MK)
GNURADIO_SOAPY_SDR_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-soapy-sdr+= gnuradio-soapy-sdr>=3.9.2.0
+BUILDLINK_API_DEPENDS.gnuradio-soapy-sdr+= gnuradio-soapy-sdr>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-soapy-sdr?= ../../ham/gnuradio-soapy-sdr
.include "../../ham/soapy-sdr/buildlink3.mk"
diff --git a/ham/gnuradio-trellis/Makefile b/ham/gnuradio-trellis/Makefile
index d2e67411984..372fa8aa9bd 100644
--- a/ham/gnuradio-trellis/Makefile
+++ b/ham/gnuradio-trellis/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.52 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.53 2022/01/16 18:06:27 tnn Exp $
PKGNAME= gnuradio-trellis-${VERSION}
-PKGREVISION= 1
COMMENT= Trellis-based encoding and decoding algorithms for GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-trellis/PLIST b/ham/gnuradio-trellis/PLIST
index 7123ad500f8..061f69d583e 100644
--- a/ham/gnuradio-trellis/PLIST
+++ b/ham/gnuradio-trellis/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.13 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.14 2022/01/16 18:06:27 tnn Exp $
include/gnuradio/trellis/api.h
include/gnuradio/trellis/base.h
include/gnuradio/trellis/calc_metric.h
@@ -25,7 +25,7 @@ lib/cmake/gnuradio/gnuradio-trellisConfig.cmake
lib/cmake/gnuradio/gnuradio-trellisTargets-release.cmake
lib/cmake/gnuradio/gnuradio-trellisTargets.cmake
lib/libgnuradio-trellis.so
-lib/libgnuradio-trellis.so.3.9.4
+lib/libgnuradio-trellis.so.3.10.0
lib/libgnuradio-trellis.so.${PKGVERSION}
lib/pkgconfig/gnuradio-trellis.pc
${PYSITELIB}/gnuradio/trellis/__init__.py
diff --git a/ham/gnuradio-trellis/buildlink3.mk b/ham/gnuradio-trellis/buildlink3.mk
index 3e432ec7170..b999a8ab15a 100644
--- a/ham/gnuradio-trellis/buildlink3.mk
+++ b/ham/gnuradio-trellis/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.4 2021/12/11 14:57:51 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.5 2022/01/16 18:06:27 tnn Exp $
BUILDLINK_TREE+= gnuradio-trellis
.if !defined(GNURADIO_TRELLIS_BUILDLINK3_MK)
GNURADIO_TRELLIS_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-trellis+= gnuradio-trellis>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-trellis+= gnuradio-trellis>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-trellis+= gnuradio-trellis>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-trellis?= ../../ham/gnuradio-trellis
.endif # GNURADIO_TRELLIS_BUILDLINK3_MK
diff --git a/ham/gnuradio-uhd/Makefile b/ham/gnuradio-uhd/Makefile
index cc4bdb870ba..21e6dbf6b3a 100644
--- a/ham/gnuradio-uhd/Makefile
+++ b/ham/gnuradio-uhd/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.35 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.36 2022/01/16 18:06:27 tnn Exp $
PKGNAME= gnuradio-uhd-${VERSION}
-PKGREVISION= 1
COMMENT= Uhd-based encoding and decoding algorithms for GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-uhd/PLIST b/ham/gnuradio-uhd/PLIST
index 3ee37d1e951..984ae2977a3 100644
--- a/ham/gnuradio-uhd/PLIST
+++ b/ham/gnuradio-uhd/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.9 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.10 2022/01/16 18:06:27 tnn Exp $
bin/uhd_fft
bin/uhd_rx_cfile
bin/uhd_rx_nogui
@@ -13,7 +13,7 @@ lib/cmake/gnuradio/gnuradio-uhdConfig.cmake
lib/cmake/gnuradio/gnuradio-uhdTargets-release.cmake
lib/cmake/gnuradio/gnuradio-uhdTargets.cmake
lib/libgnuradio-uhd.so
-lib/libgnuradio-uhd.so.3.9.4
+lib/libgnuradio-uhd.so.3.10.0
lib/libgnuradio-uhd.so.${PKGVERSION}
lib/pkgconfig/gnuradio-uhd.pc
${PYSITELIB}/gnuradio/uhd/__init__.py
diff --git a/ham/gnuradio-uhd/buildlink3.mk b/ham/gnuradio-uhd/buildlink3.mk
index b4f1e332c54..80425a59d4c 100644
--- a/ham/gnuradio-uhd/buildlink3.mk
+++ b/ham/gnuradio-uhd/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.3 2021/12/11 14:57:51 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.4 2022/01/16 18:06:27 tnn Exp $
BUILDLINK_TREE+= gnuradio-uhd
.if !defined(GNURADIO_UHD_BUILDLINK3_MK)
GNURADIO_UHD_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-uhd+= gnuradio-uhd>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-uhd+= gnuradio-uhd>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-uhd+= gnuradio-uhd>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-uhd?= ../../ham/gnuradio-uhd
.endif # GNURADIO_UHD_BUILDLINK3_MK
diff --git a/ham/gnuradio-utils/Makefile b/ham/gnuradio-utils/Makefile
index c63c12951f5..73a27fd1098 100644
--- a/ham/gnuradio-utils/Makefile
+++ b/ham/gnuradio-utils/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.36 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.37 2022/01/16 18:06:27 tnn Exp $
PKGNAME= gnuradio-utils-${VERSION}
-PKGREVISION= 1
COMMENT= Utilities in GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-utils/PLIST b/ham/gnuradio-utils/PLIST
index 56aa13aa17f..46b45f4eb6f 100644
--- a/ham/gnuradio-utils/PLIST
+++ b/ham/gnuradio-utils/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.5 2021/04/07 16:14:09 tnn Exp $
+@comment $NetBSD: PLIST,v 1.6 2022/01/16 18:06:27 tnn Exp $
bin/gr_modtool
bin/gr_plot
bin/gr_plot_const
@@ -172,12 +172,11 @@ ${PYSITELIB}/gnuradio/pyqt_plot.py
${PYSITELIB}/gnuradio/pyqt_plot.pyc
${PYSITELIB}/gnuradio/pyqt_plot.pyo
share/gnuradio/examples/modtool.conf
-share/gnuradio/modtool/templates/gr-newmod/.gitignore
share/gnuradio/modtool/templates/gr-newmod/CMakeLists.txt
share/gnuradio/modtool/templates/gr-newmod/MANIFEST.md
share/gnuradio/modtool/templates/gr-newmod/apps/CMakeLists.txt
share/gnuradio/modtool/templates/gr-newmod/cmake/Modules/CMakeParseArgumentsCopy.cmake
-share/gnuradio/modtool/templates/gr-newmod/cmake/Modules/howtoConfig.cmake
+share/gnuradio/modtool/templates/gr-newmod/cmake/Modules/gnuradio-howtoConfig.cmake
share/gnuradio/modtool/templates/gr-newmod/cmake/Modules/targetConfig.cmake.in
share/gnuradio/modtool/templates/gr-newmod/cmake/cmake_uninstall.cmake.in
share/gnuradio/modtool/templates/gr-newmod/docs/CMakeLists.txt
@@ -193,20 +192,22 @@ share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/doxyxml/generated/compou
share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/doxyxml/generated/index.py
share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/doxyxml/generated/indexsuper.py
share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/doxyxml/text.py
+share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/other/doxypy.py
share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/other/group_defs.dox
share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/other/main_page.dox
share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/pydoc_macros.h
share/gnuradio/modtool/templates/gr-newmod/docs/doxygen/update_pydoc.py
share/gnuradio/modtool/templates/gr-newmod/examples/README
share/gnuradio/modtool/templates/gr-newmod/grc/CMakeLists.txt
-share/gnuradio/modtool/templates/gr-newmod/include/howto/CMakeLists.txt
-share/gnuradio/modtool/templates/gr-newmod/include/howto/api.h
+share/gnuradio/modtool/templates/gr-newmod/include/gnuradio/howto/CMakeLists.txt
+share/gnuradio/modtool/templates/gr-newmod/include/gnuradio/howto/api.h
share/gnuradio/modtool/templates/gr-newmod/lib/CMakeLists.txt
-share/gnuradio/modtool/templates/gr-newmod/python/CMakeLists.txt
-share/gnuradio/modtool/templates/gr-newmod/python/__init__.py
-share/gnuradio/modtool/templates/gr-newmod/python/bindings/CMakeLists.txt
-share/gnuradio/modtool/templates/gr-newmod/python/bindings/README.md
-share/gnuradio/modtool/templates/gr-newmod/python/bindings/bind_oot_file.py
-share/gnuradio/modtool/templates/gr-newmod/python/bindings/docstrings/README.md
-share/gnuradio/modtool/templates/gr-newmod/python/bindings/header_utils.py
-share/gnuradio/modtool/templates/gr-newmod/python/bindings/python_bindings.cc
+share/gnuradio/modtool/templates/gr-newmod/python/howto/.gitignore
+share/gnuradio/modtool/templates/gr-newmod/python/howto/CMakeLists.txt
+share/gnuradio/modtool/templates/gr-newmod/python/howto/__init__.py
+share/gnuradio/modtool/templates/gr-newmod/python/howto/bindings/CMakeLists.txt
+share/gnuradio/modtool/templates/gr-newmod/python/howto/bindings/README.md
+share/gnuradio/modtool/templates/gr-newmod/python/howto/bindings/bind_oot_file.py
+share/gnuradio/modtool/templates/gr-newmod/python/howto/bindings/docstrings/README.md
+share/gnuradio/modtool/templates/gr-newmod/python/howto/bindings/header_utils.py
+share/gnuradio/modtool/templates/gr-newmod/python/howto/bindings/python_bindings.cc
diff --git a/ham/gnuradio-utils/buildlink3.mk b/ham/gnuradio-utils/buildlink3.mk
index 677263f3b6f..3ffe62be1fa 100644
--- a/ham/gnuradio-utils/buildlink3.mk
+++ b/ham/gnuradio-utils/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.3 2021/12/11 14:57:51 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.4 2022/01/16 18:06:27 tnn Exp $
BUILDLINK_TREE+= gnuradio-utils
.if !defined(GNURADIO_UTILS_BUILDLINK3_MK)
GNURADIO_UTILS_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-utils+= gnuradio-utils>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-utils+= gnuradio-utils>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-utils+= gnuradio-utils>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-utils?= ../../ham/gnuradio-utils
.endif # GNURADIO_UTILS_BUILDLINK3_MK
diff --git a/ham/gnuradio-video-sdl/Makefile b/ham/gnuradio-video-sdl/Makefile
index a6fd495f4e7..620b6b7fb25 100644
--- a/ham/gnuradio-video-sdl/Makefile
+++ b/ham/gnuradio-video-sdl/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.49 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.50 2022/01/16 18:06:27 tnn Exp $
PKGNAME= gnuradio-video-sdl-${VERSION}
-PKGREVISION= 1
COMMENT= SDL (Simple DirectMedia Layer) bindings for GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-video-sdl/PLIST b/ham/gnuradio-video-sdl/PLIST
index fdeab917519..479186ef0d6 100644
--- a/ham/gnuradio-video-sdl/PLIST
+++ b/ham/gnuradio-video-sdl/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.11 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.12 2022/01/16 18:06:27 tnn Exp $
include/gnuradio/video_sdl/api.h
include/gnuradio/video_sdl/sink_s.h
include/gnuradio/video_sdl/sink_uc.h
@@ -6,7 +6,7 @@ lib/cmake/gnuradio/gnuradio-video-sdlConfig.cmake
lib/cmake/gnuradio/gnuradio-video-sdlTargets-release.cmake
lib/cmake/gnuradio/gnuradio-video-sdlTargets.cmake
lib/libgnuradio-video-sdl.so
-lib/libgnuradio-video-sdl.so.3.9.4
+lib/libgnuradio-video-sdl.so.3.10.0
lib/libgnuradio-video-sdl.so.${PKGVERSION}
lib/pkgconfig/gnuradio-video-sdl.pc
${PYSITELIB}/gnuradio/video_sdl/__init__.py
diff --git a/ham/gnuradio-video-sdl/buildlink3.mk b/ham/gnuradio-video-sdl/buildlink3.mk
index 26d4900353c..4aeb48f3000 100644
--- a/ham/gnuradio-video-sdl/buildlink3.mk
+++ b/ham/gnuradio-video-sdl/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.3 2021/12/11 14:57:51 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.4 2022/01/16 18:06:27 tnn Exp $
BUILDLINK_TREE+= gnuradio-video-sdl
.if !defined(GNURADIO_VIDEO_SDL_BUILDLINK3_MK)
GNURADIO_VIDEO_SDL_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-video-sdl+= gnuradio-video-sdl>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-video-sdl+= gnuradio-video-sdl>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-video-sdl+= gnuradio-video-sdl>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-video-sdl?= ../../ham/gnuradio-video-sdl
.endif # GNURADIO_VIDEO_SDL_BUILDLINK3_MK
diff --git a/ham/gnuradio-vocoder/Makefile b/ham/gnuradio-vocoder/Makefile
index 88f70180c7b..f36b914e997 100644
--- a/ham/gnuradio-vocoder/Makefile
+++ b/ham/gnuradio-vocoder/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.34 2022/01/10 01:46:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.35 2022/01/16 18:06:27 tnn Exp $
PKGNAME= gnuradio-vocoder-${VERSION}
-PKGREVISION= 1
COMMENT= All available vocoders in GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-vocoder/PLIST b/ham/gnuradio-vocoder/PLIST
index 5cc71202b21..324264b6fb2 100644
--- a/ham/gnuradio-vocoder/PLIST
+++ b/ham/gnuradio-vocoder/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.9 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.10 2022/01/16 18:06:27 tnn Exp $
include/gnuradio/vocoder/alaw_decode_bs.h
include/gnuradio/vocoder/alaw_encode_sb.h
include/gnuradio/vocoder/api.h
@@ -24,7 +24,7 @@ lib/cmake/gnuradio/gnuradio-vocoderConfig.cmake
lib/cmake/gnuradio/gnuradio-vocoderTargets-release.cmake
lib/cmake/gnuradio/gnuradio-vocoderTargets.cmake
lib/libgnuradio-vocoder.so
-lib/libgnuradio-vocoder.so.3.9.4
+lib/libgnuradio-vocoder.so.3.10.0
lib/libgnuradio-vocoder.so.${PKGVERSION}
lib/pkgconfig/gnuradio-vocoder.pc
${PYSITELIB}/gnuradio/vocoder/__init__.py
diff --git a/ham/gnuradio-vocoder/buildlink3.mk b/ham/gnuradio-vocoder/buildlink3.mk
index cf663f5d5fb..9d62ffc6c83 100644
--- a/ham/gnuradio-vocoder/buildlink3.mk
+++ b/ham/gnuradio-vocoder/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.4 2021/12/11 14:57:51 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.5 2022/01/16 18:06:27 tnn Exp $
BUILDLINK_TREE+= gnuradio-vocoder
.if !defined(GNURADIO_VOCODER_BUILDLINK3_MK)
GNURADIO_VOCODER_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-vocoder+= gnuradio-vocoder>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-vocoder+= gnuradio-vocoder>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-vocoder+= gnuradio-vocoder>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-vocoder?= ../../ham/gnuradio-vocoder
.endif # GNURADIO_VOCODER_BUILDLINK3_MK
diff --git a/ham/gnuradio-wavelet/Makefile b/ham/gnuradio-wavelet/Makefile
index 7c7acd8b155..a10bea51436 100644
--- a/ham/gnuradio-wavelet/Makefile
+++ b/ham/gnuradio-wavelet/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.33 2022/01/10 01:46:37 ryoon Exp $
+# $NetBSD: Makefile,v 1.34 2022/01/16 18:06:27 tnn Exp $
PKGNAME= gnuradio-wavelet-${VERSION}
-PKGREVISION= 1
COMMENT= Wavelet transform of GNU Radio
.include "../../ham/gnuradio-core/Makefile.common"
diff --git a/ham/gnuradio-wavelet/PLIST b/ham/gnuradio-wavelet/PLIST
index ae578a47159..5bc507e3948 100644
--- a/ham/gnuradio-wavelet/PLIST
+++ b/ham/gnuradio-wavelet/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.7 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.8 2022/01/16 18:06:27 tnn Exp $
include/gnuradio/wavelet/api.h
include/gnuradio/wavelet/squash_ff.h
include/gnuradio/wavelet/wavelet_ff.h
@@ -7,7 +7,7 @@ lib/cmake/gnuradio/gnuradio-waveletConfig.cmake
lib/cmake/gnuradio/gnuradio-waveletTargets-release.cmake
lib/cmake/gnuradio/gnuradio-waveletTargets.cmake
lib/libgnuradio-wavelet.so
-lib/libgnuradio-wavelet.so.3.9.4
+lib/libgnuradio-wavelet.so.3.10.0
lib/libgnuradio-wavelet.so.${PKGVERSION}
lib/pkgconfig/gnuradio-wavelet.pc
${PYSITELIB}/gnuradio/wavelet/__init__.py
diff --git a/ham/gnuradio-wavelet/buildlink3.mk b/ham/gnuradio-wavelet/buildlink3.mk
index f9195543363..c43e255a24e 100644
--- a/ham/gnuradio-wavelet/buildlink3.mk
+++ b/ham/gnuradio-wavelet/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.4 2021/12/11 14:57:51 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.5 2022/01/16 18:06:27 tnn Exp $
BUILDLINK_TREE+= gnuradio-wavelet
.if !defined(GNURADIO_WAVELET_BUILDLINK3_MK)
GNURADIO_WAVELET_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-wavelet+= gnuradio-wavelet>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-wavelet+= gnuradio-wavelet>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-wavelet+= gnuradio-wavelet>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-wavelet?= ../../ham/gnuradio-wavelet
.endif # GNURADIO_WAVELET_BUILDLINK3_MK
diff --git a/ham/gnuradio-zeromq/Makefile b/ham/gnuradio-zeromq/Makefile
index 3dd335048c0..aa0e2fdaea3 100644
--- a/ham/gnuradio-zeromq/Makefile
+++ b/ham/gnuradio-zeromq/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.36 2022/01/10 01:46:37 ryoon Exp $
+# $NetBSD: Makefile,v 1.37 2022/01/16 18:06:27 tnn Exp $
PKGNAME= gnuradio-zeromq-${VERSION}
-PKGREVISION= 1
COMMENT= All of the zeromq blocks, utilities, and examples
# zmq.hpp: No such file or directory
diff --git a/ham/gnuradio-zeromq/PLIST b/ham/gnuradio-zeromq/PLIST
index 1df6a514f67..cff7ce8b6ac 100644
--- a/ham/gnuradio-zeromq/PLIST
+++ b/ham/gnuradio-zeromq/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.8 2021/12/11 14:57:51 tnn Exp $
+@comment $NetBSD: PLIST,v 1.9 2022/01/16 18:06:27 tnn Exp $
include/gnuradio/zeromq/api.h
include/gnuradio/zeromq/pub_msg_sink.h
include/gnuradio/zeromq/pub_sink.h
@@ -16,7 +16,7 @@ lib/cmake/gnuradio/gnuradio-zeromqConfig.cmake
lib/cmake/gnuradio/gnuradio-zeromqTargets-release.cmake
lib/cmake/gnuradio/gnuradio-zeromqTargets.cmake
lib/libgnuradio-zeromq.so
-lib/libgnuradio-zeromq.so.3.9.4
+lib/libgnuradio-zeromq.so.3.10.0
lib/libgnuradio-zeromq.so.${PKGVERSION}
lib/pkgconfig/gnuradio-zeromq.pc
${PYSITELIB}/gnuradio/zeromq/__init__.py
diff --git a/ham/gnuradio-zeromq/buildlink3.mk b/ham/gnuradio-zeromq/buildlink3.mk
index d1fd8b7ccfc..e94dd4d88e6 100644
--- a/ham/gnuradio-zeromq/buildlink3.mk
+++ b/ham/gnuradio-zeromq/buildlink3.mk
@@ -1,12 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.3 2021/12/11 14:57:51 tnn Exp $
+# $NetBSD: buildlink3.mk,v 1.4 2022/01/16 18:06:27 tnn Exp $
BUILDLINK_TREE+= gnuradio-zeromq
.if !defined(GNURADIO_ZEROMQ_BUILDLINK3_MK)
GNURADIO_ZEROMQ_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.gnuradio-zeromq+= gnuradio-zeromq>=3.9.4.0
-BUILDLINK_ABI_DEPENDS.gnuradio-zeromq+= gnuradio-zeromq>=3.9.4.0
+BUILDLINK_API_DEPENDS.gnuradio-zeromq+= gnuradio-zeromq>=3.10.0.0
BUILDLINK_PKGSRCDIR.gnuradio-zeromq?= ../../ham/gnuradio-zeromq
.endif # GNURADIO_ZEROMQ_BUILDLINK3_MK
diff --git a/ham/gnuradio-zeromq/files/zmq.hpp b/ham/gnuradio-zeromq/files/zmq.hpp
index 2af095654f9..b4629b0f23a 100644
--- a/ham/gnuradio-zeromq/files/zmq.hpp
+++ b/ham/gnuradio-zeromq/files/zmq.hpp
@@ -1,4 +1,5 @@
/*
+ Copyright (c) 2016-2017 ZeroMQ community
Copyright (c) 2009-2011 250bpm s.r.o.
Copyright (c) 2011 Botond Ballo
Copyright (c) 2007-2009 iMatix Corporation
@@ -25,35 +26,175 @@
#ifndef __ZMQ_HPP_INCLUDED__
#define __ZMQ_HPP_INCLUDED__
+#ifdef _WIN32
+#ifndef NOMINMAX
+#define NOMINMAX
+#endif
+#endif
+
+// included here for _HAS_CXX* macros
#include <zmq.h>
-#include <algorithm>
+#if defined(_MSVC_LANG)
+#define CPPZMQ_LANG _MSVC_LANG
+#else
+#define CPPZMQ_LANG __cplusplus
+#endif
+// overwrite if specific language macros indicate higher version
+#if defined(_HAS_CXX14) && _HAS_CXX14 && CPPZMQ_LANG < 201402L
+#undef CPPZMQ_LANG
+#define CPPZMQ_LANG 201402L
+#endif
+#if defined(_HAS_CXX17) && _HAS_CXX17 && CPPZMQ_LANG < 201703L
+#undef CPPZMQ_LANG
+#define CPPZMQ_LANG 201703L
+#endif
+
+// macros defined if has a specific standard or greater
+#if CPPZMQ_LANG >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1900)
+#define ZMQ_CPP11
+#endif
+#if CPPZMQ_LANG >= 201402L
+#define ZMQ_CPP14
+#endif
+#if CPPZMQ_LANG >= 201703L
+#define ZMQ_CPP17
+#endif
+
+#if defined(ZMQ_CPP14) && !defined(_MSC_VER)
+#define ZMQ_DEPRECATED(msg) [[deprecated(msg)]]
+#elif defined(_MSC_VER)
+#define ZMQ_DEPRECATED(msg) __declspec(deprecated(msg))
+#elif defined(__GNUC__)
+#define ZMQ_DEPRECATED(msg) __attribute__((deprecated(msg)))
+#else
+#define ZMQ_DEPRECATED(msg)
+#endif
+
+#if defined(ZMQ_CPP17)
+#define ZMQ_NODISCARD [[nodiscard]]
+#else
+#define ZMQ_NODISCARD
+#endif
+
+#if defined(ZMQ_CPP11)
+#define ZMQ_NOTHROW noexcept
+#define ZMQ_EXPLICIT explicit
+#define ZMQ_OVERRIDE override
+#define ZMQ_NULLPTR nullptr
+#define ZMQ_CONSTEXPR_FN constexpr
+#define ZMQ_CONSTEXPR_VAR constexpr
+#define ZMQ_CPP11_DEPRECATED(msg) ZMQ_DEPRECATED(msg)
+#else
+#define ZMQ_NOTHROW throw()
+#define ZMQ_EXPLICIT
+#define ZMQ_OVERRIDE
+#define ZMQ_NULLPTR 0
+#define ZMQ_CONSTEXPR_FN
+#define ZMQ_CONSTEXPR_VAR const
+#define ZMQ_CPP11_DEPRECATED(msg)
+#endif
+#if defined(ZMQ_CPP14) && (!defined(_MSC_VER) || _MSC_VER > 1900)
+#define ZMQ_EXTENDED_CONSTEXPR
+#endif
+#if defined(ZMQ_CPP17)
+#define ZMQ_INLINE_VAR inline
+#define ZMQ_CONSTEXPR_IF constexpr
+#else
+#define ZMQ_INLINE_VAR
+#define ZMQ_CONSTEXPR_IF
+#endif
+
#include <cassert>
#include <cstring>
-#include <string>
+
+#include <algorithm>
#include <exception>
+#include <iomanip>
+#include <sstream>
+#include <string>
+#include <vector>
+#ifdef ZMQ_CPP11
+#include <array>
+#include <chrono>
+#include <tuple>
+#include <memory>
+#endif
+
+#if defined(__has_include) && defined(ZMQ_CPP17)
+#define CPPZMQ_HAS_INCLUDE_CPP17(X) __has_include(X)
+#else
+#define CPPZMQ_HAS_INCLUDE_CPP17(X) 0
+#endif
+
+#if CPPZMQ_HAS_INCLUDE_CPP17(<optional>) && !defined(CPPZMQ_HAS_OPTIONAL)
+#define CPPZMQ_HAS_OPTIONAL 1
+#endif
+#ifndef CPPZMQ_HAS_OPTIONAL
+#define CPPZMQ_HAS_OPTIONAL 0
+#elif CPPZMQ_HAS_OPTIONAL
+#include <optional>
+#endif
+
+#if CPPZMQ_HAS_INCLUDE_CPP17(<string_view>) && !defined(CPPZMQ_HAS_STRING_VIEW)
+#define CPPZMQ_HAS_STRING_VIEW 1
+#endif
+#ifndef CPPZMQ_HAS_STRING_VIEW
+#define CPPZMQ_HAS_STRING_VIEW 0
+#elif CPPZMQ_HAS_STRING_VIEW
+#include <string_view>
+#endif
+
+/* Version macros for compile-time API version detection */
+#define CPPZMQ_VERSION_MAJOR 4
+#define CPPZMQ_VERSION_MINOR 8
+#define CPPZMQ_VERSION_PATCH 1
+
+#define CPPZMQ_VERSION \
+ ZMQ_MAKE_VERSION(CPPZMQ_VERSION_MAJOR, CPPZMQ_VERSION_MINOR, \
+ CPPZMQ_VERSION_PATCH)
// Detect whether the compiler supports C++11 rvalue references.
-#if (defined(__GNUC__) && (__GNUC__ > 4 || \
- (__GNUC__ == 4 && __GNUC_MINOR__ > 2)) && \
- defined(__GXX_EXPERIMENTAL_CXX0X__))
- #define ZMQ_HAS_RVALUE_REFS
- #define ZMQ_DELETED_FUNCTION = delete
+#if (defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 2)) \
+ && defined(__GXX_EXPERIMENTAL_CXX0X__))
+#define ZMQ_HAS_RVALUE_REFS
+#define ZMQ_DELETED_FUNCTION = delete
#elif defined(__clang__)
- #if __has_feature(cxx_rvalue_references)
- #define ZMQ_HAS_RVALUE_REFS
- #endif
-
- #if __has_feature(cxx_deleted_functions)
- #define ZMQ_DELETED_FUNCTION = delete
- #else
- #define ZMQ_DELETED_FUNCTION
- #endif
+#if __has_feature(cxx_rvalue_references)
+#define ZMQ_HAS_RVALUE_REFS
+#endif
+
+#if __has_feature(cxx_deleted_functions)
+#define ZMQ_DELETED_FUNCTION = delete
+#else
+#define ZMQ_DELETED_FUNCTION
+#endif
+#elif defined(_MSC_VER) && (_MSC_VER >= 1900)
+#define ZMQ_HAS_RVALUE_REFS
+#define ZMQ_DELETED_FUNCTION = delete
#elif defined(_MSC_VER) && (_MSC_VER >= 1600)
- #define ZMQ_HAS_RVALUE_REFS
- #define ZMQ_DELETED_FUNCTION
+#define ZMQ_HAS_RVALUE_REFS
+#define ZMQ_DELETED_FUNCTION
#else
- #define ZMQ_DELETED_FUNCTION
+#define ZMQ_DELETED_FUNCTION
+#endif
+
+#if defined(ZMQ_CPP11) && !defined(__llvm__) && !defined(__INTEL_COMPILER) \
+ && defined(__GNUC__) && __GNUC__ < 5
+#define ZMQ_CPP11_PARTIAL
+#elif defined(__GLIBCXX__) && __GLIBCXX__ < 20160805
+//the date here is the last date of gcc 4.9.4, which
+// effectively means libstdc++ from gcc 5.5 and higher won't trigger this branch
+#define ZMQ_CPP11_PARTIAL
+#endif
+
+#ifdef ZMQ_CPP11
+#ifdef ZMQ_CPP11_PARTIAL
+#define ZMQ_IS_TRIVIALLY_COPYABLE(T) __has_trivial_copy(T)
+#else
+#include <type_traits>
+#define ZMQ_IS_TRIVIALLY_COPYABLE(T) std::is_trivially_copyable<T>::value
+#endif
#endif
#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(3, 3, 0)
@@ -63,533 +204,2510 @@
#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 1, 0)
#define ZMQ_HAS_PROXY_STEERABLE
/* Socket event data */
-typedef struct {
- uint16_t event; // id of the event as bitfield
- int32_t value ; // value is either error code, fd or reconnect interval
+typedef struct
+{
+ uint16_t event; // id of the event as bitfield
+ int32_t value; // value is either error code, fd or reconnect interval
} zmq_event_t;
#endif
+// Avoid using deprecated message receive function when possible
+#if ZMQ_VERSION < ZMQ_MAKE_VERSION(3, 2, 0)
+#define zmq_msg_recv(msg, socket, flags) zmq_recvmsg(socket, msg, flags)
+#endif
+
+
// In order to prevent unused variable warnings when building in non-debug
// mode use this macro to make assertions.
#ifndef NDEBUG
-# define ZMQ_ASSERT(expression) assert(expression)
+#define ZMQ_ASSERT(expression) assert(expression)
#else
-# define ZMQ_ASSERT(expression) (void)(expression)
+#define ZMQ_ASSERT(expression) (void) (expression)
#endif
namespace zmq
{
+#ifdef ZMQ_CPP11
+namespace detail
+{
+namespace ranges
+{
+using std::begin;
+using std::end;
+template<class T> auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
+{
+ return begin(std::forward<T>(r));
+}
+template<class T> auto end(T &&r) -> decltype(end(std::forward<T>(r)))
+{
+ return end(std::forward<T>(r));
+}
+} // namespace ranges
+
+template<class T> using void_t = void;
+
+template<class Iter>
+using iter_value_t = typename std::iterator_traits<Iter>::value_type;
+
+template<class Range>
+using range_iter_t = decltype(
+ ranges::begin(std::declval<typename std::remove_reference<Range>::type &>()));
+
+template<class Range> using range_value_t = iter_value_t<range_iter_t<Range>>;
+
+template<class T, class = void> struct is_range : std::false_type
+{
+};
+
+template<class T>
+struct is_range<
+ T,
+ void_t<decltype(
+ ranges::begin(std::declval<typename std::remove_reference<T>::type &>())
+ == ranges::end(std::declval<typename std::remove_reference<T>::type &>()))>>
+ : std::true_type
+{
+};
+
+} // namespace detail
+#endif
- typedef zmq_free_fn free_fn;
- typedef zmq_pollitem_t pollitem_t;
+typedef zmq_free_fn free_fn;
+typedef zmq_pollitem_t pollitem_t;
- class error_t : public std::exception
+// duplicate definition from libzmq 4.3.3
+#if defined _WIN32
+#if defined _WIN64
+typedef unsigned __int64 fd_t;
+#else
+typedef unsigned int fd_t;
+#endif
+#else
+typedef int fd_t;
+#endif
+
+class error_t : public std::exception
+{
+ public:
+ error_t() ZMQ_NOTHROW : errnum(zmq_errno()) {}
+ explicit error_t(int err) ZMQ_NOTHROW : errnum(err) {}
+ virtual const char *what() const ZMQ_NOTHROW ZMQ_OVERRIDE
{
- public:
+ return zmq_strerror(errnum);
+ }
+ int num() const ZMQ_NOTHROW { return errnum; }
- error_t () : errnum (zmq_errno ()) {}
+ private:
+ int errnum;
+};
- virtual const char *what () const throw ()
- {
- return zmq_strerror (errnum);
- }
+namespace detail {
+inline int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_)
+{
+ int rc = zmq_poll(items_, static_cast<int>(nitems_), timeout_);
+ if (rc < 0)
+ throw error_t();
+ return rc;
+}
+}
- int num () const
- {
- return errnum;
+#ifdef ZMQ_CPP11
+ZMQ_DEPRECATED("from 4.8.0, use poll taking std::chrono::duration instead of long")
+inline int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_)
+#else
+inline int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_ = -1)
+#endif
+{
+ return detail::poll(items_, nitems_, timeout_);
+}
+
+ZMQ_DEPRECATED("from 4.3.1, use poll taking non-const items")
+inline int poll(zmq_pollitem_t const *items_, size_t nitems_, long timeout_ = -1)
+{
+ return detail::poll(const_cast<zmq_pollitem_t *>(items_), nitems_, timeout_);
+}
+
+#ifdef ZMQ_CPP11
+ZMQ_DEPRECATED("from 4.3.1, use poll taking non-const items")
+inline int
+poll(zmq_pollitem_t const *items, size_t nitems, std::chrono::milliseconds timeout)
+{
+ return detail::poll(const_cast<zmq_pollitem_t *>(items), nitems,
+ static_cast<long>(timeout.count()));
+}
+
+ZMQ_DEPRECATED("from 4.3.1, use poll taking non-const items")
+inline int poll(std::vector<zmq_pollitem_t> const &items,
+ std::chrono::milliseconds timeout)
+{
+ return detail::poll(const_cast<zmq_pollitem_t *>(items.data()), items.size(),
+ static_cast<long>(timeout.count()));
+}
+
+ZMQ_DEPRECATED("from 4.3.1, use poll taking non-const items")
+inline int poll(std::vector<zmq_pollitem_t> const &items, long timeout_ = -1)
+{
+ return detail::poll(const_cast<zmq_pollitem_t *>(items.data()), items.size(), timeout_);
+}
+
+inline int
+poll(zmq_pollitem_t *items, size_t nitems, std::chrono::milliseconds timeout = std::chrono::milliseconds{-1})
+{
+ return detail::poll(items, nitems, static_cast<long>(timeout.count()));
+}
+
+inline int poll(std::vector<zmq_pollitem_t> &items,
+ std::chrono::milliseconds timeout = std::chrono::milliseconds{-1})
+{
+ return detail::poll(items.data(), items.size(), static_cast<long>(timeout.count()));
+}
+
+ZMQ_DEPRECATED("from 4.3.1, use poll taking std::chrono::duration instead of long")
+inline int poll(std::vector<zmq_pollitem_t> &items, long timeout_)
+{
+ return detail::poll(items.data(), items.size(), timeout_);
+}
+
+template<std::size_t SIZE>
+inline int poll(std::array<zmq_pollitem_t, SIZE> &items,
+ std::chrono::milliseconds timeout = std::chrono::milliseconds{-1})
+{
+ return detail::poll(items.data(), items.size(), static_cast<long>(timeout.count()));
+}
+#endif
+
+
+inline void version(int *major_, int *minor_, int *patch_)
+{
+ zmq_version(major_, minor_, patch_);
+}
+
+#ifdef ZMQ_CPP11
+inline std::tuple<int, int, int> version()
+{
+ std::tuple<int, int, int> v;
+ zmq_version(&std::get<0>(v), &std::get<1>(v), &std::get<2>(v));
+ return v;
+}
+
+#if !defined(ZMQ_CPP11_PARTIAL)
+namespace detail
+{
+template<class T> struct is_char_type
+{
+ // true if character type for string literals in C++11
+ static constexpr bool value =
+ std::is_same<T, char>::value || std::is_same<T, wchar_t>::value
+ || std::is_same<T, char16_t>::value || std::is_same<T, char32_t>::value;
+};
+}
+#endif
+
+#endif
+
+class message_t
+{
+ public:
+ message_t() ZMQ_NOTHROW
+ {
+ int rc = zmq_msg_init(&msg);
+ ZMQ_ASSERT(rc == 0);
+ }
+
+ explicit message_t(size_t size_)
+ {
+ int rc = zmq_msg_init_size(&msg, size_);
+ if (rc != 0)
+ throw error_t();
+ }
+
+ template<class ForwardIter> message_t(ForwardIter first, ForwardIter last)
+ {
+ typedef typename std::iterator_traits<ForwardIter>::value_type value_t;
+
+ assert(std::distance(first, last) >= 0);
+ size_t const size_ =
+ static_cast<size_t>(std::distance(first, last)) * sizeof(value_t);
+ int const rc = zmq_msg_init_size(&msg, size_);
+ if (rc != 0)
+ throw error_t();
+ std::copy(first, last, data<value_t>());
+ }
+
+ message_t(const void *data_, size_t size_)
+ {
+ int rc = zmq_msg_init_size(&msg, size_);
+ if (rc != 0)
+ throw error_t();
+ if (size_) {
+ // this constructor allows (nullptr, 0),
+ // memcpy with a null pointer is UB
+ memcpy(data(), data_, size_);
}
+ }
- private:
+ message_t(void *data_, size_t size_, free_fn *ffn_, void *hint_ = ZMQ_NULLPTR)
+ {
+ int rc = zmq_msg_init_data(&msg, data_, size_, ffn_, hint_);
+ if (rc != 0)
+ throw error_t();
+ }
- int errnum;
- };
+ // overload set of string-like types and generic containers
+#if defined(ZMQ_CPP11) && !defined(ZMQ_CPP11_PARTIAL)
+ // NOTE this constructor will include the null terminator
+ // when called with a string literal.
+ // An overload taking const char* can not be added because
+ // it would be preferred over this function and break compatiblity.
+ template<
+ class Char,
+ size_t N,
+ typename = typename std::enable_if<detail::is_char_type<Char>::value>::type>
+ ZMQ_DEPRECATED("from 4.7.0, use constructors taking iterators, (pointer, size) "
+ "or strings instead")
+ explicit message_t(const Char (&data)[N]) :
+ message_t(detail::ranges::begin(data), detail::ranges::end(data))
+ {
+ }
- inline int poll (zmq_pollitem_t *items_, int nitems_, long timeout_ = -1)
+ template<class Range,
+ typename = typename std::enable_if<
+ detail::is_range<Range>::value
+ && ZMQ_IS_TRIVIALLY_COPYABLE(detail::range_value_t<Range>)
+ && !detail::is_char_type<detail::range_value_t<Range>>::value
+ && !std::is_same<Range, message_t>::value>::type>
+ explicit message_t(const Range &rng) :
+ message_t(detail::ranges::begin(rng), detail::ranges::end(rng))
{
- int rc = zmq_poll (items_, nitems_, timeout_);
- if (rc < 0)
- throw error_t ();
- return rc;
}
- inline void proxy (void *frontend, void *backend, void *capture)
+ explicit message_t(const std::string &str) : message_t(str.data(), str.size()) {}
+
+#if CPPZMQ_HAS_STRING_VIEW
+ explicit message_t(std::string_view str) : message_t(str.data(), str.size()) {}
+#endif
+
+#endif
+
+#ifdef ZMQ_HAS_RVALUE_REFS
+ message_t(message_t &&rhs) ZMQ_NOTHROW : msg(rhs.msg)
+ {
+ int rc = zmq_msg_init(&rhs.msg);
+ ZMQ_ASSERT(rc == 0);
+ }
+
+ message_t &operator=(message_t &&rhs) ZMQ_NOTHROW
+ {
+ std::swap(msg, rhs.msg);
+ return *this;
+ }
+#endif
+
+ ~message_t() ZMQ_NOTHROW
+ {
+ int rc = zmq_msg_close(&msg);
+ ZMQ_ASSERT(rc == 0);
+ }
+
+ void rebuild()
{
- int rc = zmq_proxy (frontend, backend, capture);
+ int rc = zmq_msg_close(&msg);
if (rc != 0)
- throw error_t ();
+ throw error_t();
+ rc = zmq_msg_init(&msg);
+ ZMQ_ASSERT(rc == 0);
}
-
-#ifdef ZMQ_HAS_PROXY_STEERABLE
- inline void proxy_steerable (void *frontend, void *backend, void *capture, void *control)
+
+ void rebuild(size_t size_)
{
- int rc = zmq_proxy_steerable (frontend, backend, capture, control);
+ int rc = zmq_msg_close(&msg);
+ if (rc != 0)
+ throw error_t();
+ rc = zmq_msg_init_size(&msg, size_);
if (rc != 0)
- throw error_t ();
+ throw error_t();
+ }
+
+ void rebuild(const void *data_, size_t size_)
+ {
+ int rc = zmq_msg_close(&msg);
+ if (rc != 0)
+ throw error_t();
+ rc = zmq_msg_init_size(&msg, size_);
+ if (rc != 0)
+ throw error_t();
+ memcpy(data(), data_, size_);
+ }
+
+ void rebuild(void *data_, size_t size_, free_fn *ffn_, void *hint_ = ZMQ_NULLPTR)
+ {
+ int rc = zmq_msg_close(&msg);
+ if (rc != 0)
+ throw error_t();
+ rc = zmq_msg_init_data(&msg, data_, size_, ffn_, hint_);
+ if (rc != 0)
+ throw error_t();
+ }
+
+ ZMQ_DEPRECATED("from 4.3.1, use move taking non-const reference instead")
+ void move(message_t const *msg_)
+ {
+ int rc = zmq_msg_move(&msg, const_cast<zmq_msg_t *>(msg_->handle()));
+ if (rc != 0)
+ throw error_t();
+ }
+
+ void move(message_t &msg_)
+ {
+ int rc = zmq_msg_move(&msg, msg_.handle());
+ if (rc != 0)
+ throw error_t();
+ }
+
+ ZMQ_DEPRECATED("from 4.3.1, use copy taking non-const reference instead")
+ void copy(message_t const *msg_)
+ {
+ int rc = zmq_msg_copy(&msg, const_cast<zmq_msg_t *>(msg_->handle()));
+ if (rc != 0)
+ throw error_t();
+ }
+
+ void copy(message_t &msg_)
+ {
+ int rc = zmq_msg_copy(&msg, msg_.handle());
+ if (rc != 0)
+ throw error_t();
+ }
+
+ bool more() const ZMQ_NOTHROW
+ {
+ int rc = zmq_msg_more(const_cast<zmq_msg_t *>(&msg));
+ return rc != 0;
+ }
+
+ void *data() ZMQ_NOTHROW { return zmq_msg_data(&msg); }
+
+ const void *data() const ZMQ_NOTHROW
+ {
+ return zmq_msg_data(const_cast<zmq_msg_t *>(&msg));
+ }
+
+ size_t size() const ZMQ_NOTHROW
+ {
+ return zmq_msg_size(const_cast<zmq_msg_t *>(&msg));
+ }
+
+ ZMQ_NODISCARD bool empty() const ZMQ_NOTHROW { return size() == 0u; }
+
+ template<typename T> T *data() ZMQ_NOTHROW { return static_cast<T *>(data()); }
+
+ template<typename T> T const *data() const ZMQ_NOTHROW
+ {
+ return static_cast<T const *>(data());
+ }
+
+ ZMQ_DEPRECATED("from 4.3.0, use operator== instead")
+ bool equal(const message_t *other) const ZMQ_NOTHROW { return *this == *other; }
+
+ bool operator==(const message_t &other) const ZMQ_NOTHROW
+ {
+ const size_t my_size = size();
+ return my_size == other.size() && 0 == memcmp(data(), other.data(), my_size);
+ }
+
+ bool operator!=(const message_t &other) const ZMQ_NOTHROW
+ {
+ return !(*this == other);
+ }
+
+#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(3, 2, 0)
+ int get(int property_)
+ {
+ int value = zmq_msg_get(&msg, property_);
+ if (value == -1)
+ throw error_t();
+ return value;
}
#endif
-
- inline void version (int *major_, int *minor_, int *patch_)
+
+#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 1, 0)
+ const char *gets(const char *property_)
{
- zmq_version (major_, minor_, patch_);
+ const char *value = zmq_msg_gets(&msg, property_);
+ if (value == ZMQ_NULLPTR)
+ throw error_t();
+ return value;
}
+#endif
- class message_t
+#if defined(ZMQ_BUILD_DRAFT_API) && ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 0)
+ uint32_t routing_id() const
{
- friend class socket_t;
+ return zmq_msg_routing_id(const_cast<zmq_msg_t *>(&msg));
+ }
- public:
+ void set_routing_id(uint32_t routing_id)
+ {
+ int rc = zmq_msg_set_routing_id(&msg, routing_id);
+ if (rc != 0)
+ throw error_t();
+ }
- inline message_t ()
- {
- int rc = zmq_msg_init (&msg);
- if (rc != 0)
- throw error_t ();
- }
+ const char *group() const
+ {
+ return zmq_msg_group(const_cast<zmq_msg_t *>(&msg));
+ }
- inline explicit message_t (size_t size_)
- {
- int rc = zmq_msg_init_size (&msg, size_);
- if (rc != 0)
- throw error_t ();
- }
+ void set_group(const char *group)
+ {
+ int rc = zmq_msg_set_group(&msg, group);
+ if (rc != 0)
+ throw error_t();
+ }
+#endif
- inline message_t (void *data_, size_t size_, free_fn *ffn_,
- void *hint_ = NULL)
- {
- int rc = zmq_msg_init_data (&msg, data_, size_, ffn_, hint_);
- if (rc != 0)
- throw error_t ();
+ // interpret message content as a string
+ std::string to_string() const
+ {
+ return std::string(static_cast<const char *>(data()), size());
+ }
+#if CPPZMQ_HAS_STRING_VIEW
+ // interpret message content as a string
+ std::string_view to_string_view() const noexcept
+ {
+ return std::string_view(static_cast<const char *>(data()), size());
+ }
+#endif
+
+ /** Dump content to string for debugging.
+ * Ascii chars are readable, the rest is printed as hex.
+ * Probably ridiculously slow.
+ * Use to_string() or to_string_view() for
+ * interpreting the message as a string.
+ */
+ std::string str() const
+ {
+ // Partly mutuated from the same method in zmq::multipart_t
+ std::stringstream os;
+
+ const unsigned char *msg_data = this->data<unsigned char>();
+ unsigned char byte;
+ size_t size = this->size();
+ int is_ascii[2] = {0, 0};
+
+ os << "zmq::message_t [size " << std::dec << std::setw(3)
+ << std::setfill('0') << size << "] (";
+ // Totally arbitrary
+ if (size >= 1000) {
+ os << "... too big to print)";
+ } else {
+ while (size--) {
+ byte = *msg_data++;
+
+ is_ascii[1] = (byte >= 32 && byte < 127);
+ if (is_ascii[1] != is_ascii[0])
+ os << " "; // Separate text/non text
+
+ if (is_ascii[1]) {
+ os << byte;
+ } else {
+ os << std::hex << std::uppercase << std::setw(2)
+ << std::setfill('0') << static_cast<short>(byte);
+ }
+ is_ascii[0] = is_ascii[1];
+ }
+ os << ")";
}
+ return os.str();
+ }
+
+ void swap(message_t &other) ZMQ_NOTHROW
+ {
+ // this assumes zmq::msg_t from libzmq is trivially relocatable
+ std::swap(msg, other.msg);
+ }
+
+ ZMQ_NODISCARD zmq_msg_t *handle() ZMQ_NOTHROW { return &msg; }
+ ZMQ_NODISCARD const zmq_msg_t *handle() const ZMQ_NOTHROW { return &msg; }
+
+ private:
+ // The underlying message
+ zmq_msg_t msg;
+
+ // Disable implicit message copying, so that users won't use shared
+ // messages (less efficient) without being aware of the fact.
+ message_t(const message_t &) ZMQ_DELETED_FUNCTION;
+ void operator=(const message_t &) ZMQ_DELETED_FUNCTION;
+};
+
+inline void swap(message_t &a, message_t &b) ZMQ_NOTHROW
+{
+ a.swap(b);
+}
+
+#ifdef ZMQ_CPP11
+enum class ctxopt
+{
+#ifdef ZMQ_BLOCKY
+ blocky = ZMQ_BLOCKY,
+#endif
+#ifdef ZMQ_IO_THREADS
+ io_threads = ZMQ_IO_THREADS,
+#endif
+#ifdef ZMQ_THREAD_SCHED_POLICY
+ thread_sched_policy = ZMQ_THREAD_SCHED_POLICY,
+#endif
+#ifdef ZMQ_THREAD_PRIORITY
+ thread_priority = ZMQ_THREAD_PRIORITY,
+#endif
+#ifdef ZMQ_THREAD_AFFINITY_CPU_ADD
+ thread_affinity_cpu_add = ZMQ_THREAD_AFFINITY_CPU_ADD,
+#endif
+#ifdef ZMQ_THREAD_AFFINITY_CPU_REMOVE
+ thread_affinity_cpu_remove = ZMQ_THREAD_AFFINITY_CPU_REMOVE,
+#endif
+#ifdef ZMQ_THREAD_NAME_PREFIX
+ thread_name_prefix = ZMQ_THREAD_NAME_PREFIX,
+#endif
+#ifdef ZMQ_MAX_MSGSZ
+ max_msgsz = ZMQ_MAX_MSGSZ,
+#endif
+#ifdef ZMQ_ZERO_COPY_RECV
+ zero_copy_recv = ZMQ_ZERO_COPY_RECV,
+#endif
+#ifdef ZMQ_MAX_SOCKETS
+ max_sockets = ZMQ_MAX_SOCKETS,
+#endif
+#ifdef ZMQ_SOCKET_LIMIT
+ socket_limit = ZMQ_SOCKET_LIMIT,
+#endif
+#ifdef ZMQ_IPV6
+ ipv6 = ZMQ_IPV6,
+#endif
+#ifdef ZMQ_MSG_T_SIZE
+ msg_t_size = ZMQ_MSG_T_SIZE
+#endif
+};
+#endif
+
+class context_t
+{
+ public:
+ context_t()
+ {
+ ptr = zmq_ctx_new();
+ if (ptr == ZMQ_NULLPTR)
+ throw error_t();
+ }
+
+
+ explicit context_t(int io_threads_, int max_sockets_ = ZMQ_MAX_SOCKETS_DFLT)
+ {
+ ptr = zmq_ctx_new();
+ if (ptr == ZMQ_NULLPTR)
+ throw error_t();
+
+ int rc = zmq_ctx_set(ptr, ZMQ_IO_THREADS, io_threads_);
+ ZMQ_ASSERT(rc == 0);
+
+ rc = zmq_ctx_set(ptr, ZMQ_MAX_SOCKETS, max_sockets_);
+ ZMQ_ASSERT(rc == 0);
+ }
#ifdef ZMQ_HAS_RVALUE_REFS
- inline message_t (message_t &&rhs) : msg (rhs.msg)
- {
- int rc = zmq_msg_init (&rhs.msg);
- if (rc != 0)
- throw error_t ();
- }
+ context_t(context_t &&rhs) ZMQ_NOTHROW : ptr(rhs.ptr) { rhs.ptr = ZMQ_NULLPTR; }
+ context_t &operator=(context_t &&rhs) ZMQ_NOTHROW
+ {
+ close();
+ std::swap(ptr, rhs.ptr);
+ return *this;
+ }
+#endif
- inline message_t &operator = (message_t &&rhs)
- {
- std::swap (msg, rhs.msg);
- return *this;
- }
+ ~context_t() ZMQ_NOTHROW { close(); }
+
+ ZMQ_CPP11_DEPRECATED("from 4.7.0, use set taking zmq::ctxopt instead")
+ int setctxopt(int option_, int optval_)
+ {
+ int rc = zmq_ctx_set(ptr, option_, optval_);
+ ZMQ_ASSERT(rc == 0);
+ return rc;
+ }
+
+ ZMQ_CPP11_DEPRECATED("from 4.7.0, use get taking zmq::ctxopt instead")
+ int getctxopt(int option_) { return zmq_ctx_get(ptr, option_); }
+
+#ifdef ZMQ_CPP11
+ void set(ctxopt option, int optval)
+ {
+ int rc = zmq_ctx_set(ptr, static_cast<int>(option), optval);
+ if (rc == -1)
+ throw error_t();
+ }
+
+ ZMQ_NODISCARD int get(ctxopt option)
+ {
+ int rc = zmq_ctx_get(ptr, static_cast<int>(option));
+ // some options have a default value of -1
+ // which is unfortunate, and may result in errors
+ // that don't make sense
+ if (rc == -1)
+ throw error_t();
+ return rc;
+ }
#endif
- inline ~message_t ()
- {
- int rc = zmq_msg_close (&msg);
- ZMQ_ASSERT (rc == 0);
- }
+ // Terminates context (see also shutdown()).
+ void close() ZMQ_NOTHROW
+ {
+ if (ptr == ZMQ_NULLPTR)
+ return;
- inline void rebuild ()
- {
- int rc = zmq_msg_close (&msg);
- if (rc != 0)
- throw error_t ();
- rc = zmq_msg_init (&msg);
- if (rc != 0)
- throw error_t ();
- }
+ int rc;
+ do {
+ rc = zmq_ctx_term(ptr);
+ } while (rc == -1 && errno == EINTR);
- inline void rebuild (size_t size_)
- {
- int rc = zmq_msg_close (&msg);
- if (rc != 0)
- throw error_t ();
- rc = zmq_msg_init_size (&msg, size_);
- if (rc != 0)
- throw error_t ();
- }
+ ZMQ_ASSERT(rc == 0);
+ ptr = ZMQ_NULLPTR;
+ }
- inline void rebuild (void *data_, size_t size_, free_fn *ffn_,
- void *hint_ = NULL)
- {
- int rc = zmq_msg_close (&msg);
- if (rc != 0)
- throw error_t ();
- rc = zmq_msg_init_data (&msg, data_, size_, ffn_, hint_);
- if (rc != 0)
- throw error_t ();
- }
+ // Shutdown context in preparation for termination (close()).
+ // Causes all blocking socket operations and any further
+ // socket operations to return with ETERM.
+ void shutdown() ZMQ_NOTHROW
+ {
+ if (ptr == ZMQ_NULLPTR)
+ return;
+ int rc = zmq_ctx_shutdown(ptr);
+ ZMQ_ASSERT(rc == 0);
+ }
- inline void move (message_t *msg_)
- {
- int rc = zmq_msg_move (&msg, &(msg_->msg));
- if (rc != 0)
- throw error_t ();
- }
+ // Be careful with this, it's probably only useful for
+ // using the C api together with an existing C++ api.
+ // Normally you should never need to use this.
+ ZMQ_EXPLICIT operator void *() ZMQ_NOTHROW { return ptr; }
- inline void copy (message_t *msg_)
- {
- int rc = zmq_msg_copy (&msg, &(msg_->msg));
- if (rc != 0)
- throw error_t ();
- }
+ ZMQ_EXPLICIT operator void const *() const ZMQ_NOTHROW { return ptr; }
- inline bool more ()
- {
- int rc = zmq_msg_more (&msg);
- return rc != 0;
- }
+ ZMQ_NODISCARD void *handle() ZMQ_NOTHROW { return ptr; }
- inline void *data ()
- {
- return zmq_msg_data (&msg);
- }
+ ZMQ_DEPRECATED("from 4.7.0, use handle() != nullptr instead")
+ operator bool() const ZMQ_NOTHROW { return ptr != ZMQ_NULLPTR; }
- inline const void* data () const
- {
- return zmq_msg_data (const_cast<zmq_msg_t*>(&msg));
- }
+ void swap(context_t &other) ZMQ_NOTHROW { std::swap(ptr, other.ptr); }
- inline size_t size () const
- {
- return zmq_msg_size (const_cast<zmq_msg_t*>(&msg));
- }
+ private:
+ void *ptr;
- private:
+ context_t(const context_t &) ZMQ_DELETED_FUNCTION;
+ void operator=(const context_t &) ZMQ_DELETED_FUNCTION;
+};
- // The underlying message
- zmq_msg_t msg;
+inline void swap(context_t &a, context_t &b) ZMQ_NOTHROW
+{
+ a.swap(b);
+}
- // Disable implicit message copying, so that users won't use shared
- // messages (less efficient) without being aware of the fact.
- message_t (const message_t&);
- void operator = (const message_t&);
- };
+#ifdef ZMQ_CPP11
- class context_t
+struct recv_buffer_size
+{
+ size_t size; // number of bytes written to buffer
+ size_t untruncated_size; // untruncated message size in bytes
+
+ ZMQ_NODISCARD bool truncated() const noexcept
{
- friend class socket_t;
+ return size != untruncated_size;
+ }
+};
- public:
- inline context_t ()
- {
- ptr = zmq_ctx_new ();
- if (ptr == NULL)
- throw error_t ();
- }
+#if CPPZMQ_HAS_OPTIONAL
+using send_result_t = std::optional<size_t>;
+using recv_result_t = std::optional<size_t>;
+using recv_buffer_result_t = std::optional<recv_buffer_size>;
- inline explicit context_t (int io_threads_, int max_sockets_ = ZMQ_MAX_SOCKETS_DFLT)
- {
- ptr = zmq_ctx_new ();
- if (ptr == NULL)
- throw error_t ();
+#else
- int rc = zmq_ctx_set (ptr, ZMQ_IO_THREADS, io_threads_);
- ZMQ_ASSERT (rc == 0);
+namespace detail
+{
+// A C++11 type emulating the most basic
+// operations of std::optional for trivial types
+template<class T> class trivial_optional
+{
+ public:
+ static_assert(std::is_trivial<T>::value, "T must be trivial");
+ using value_type = T;
- rc = zmq_ctx_set (ptr, ZMQ_MAX_SOCKETS, max_sockets_);
- ZMQ_ASSERT (rc == 0);
- }
+ trivial_optional() = default;
+ trivial_optional(T value) noexcept : _value(value), _has_value(true) {}
-#ifdef ZMQ_HAS_RVALUE_REFS
- inline context_t (context_t &&rhs) : ptr (rhs.ptr)
- {
- rhs.ptr = NULL;
+ const T *operator->() const noexcept
+ {
+ assert(_has_value);
+ return &_value;
+ }
+ T *operator->() noexcept
+ {
+ assert(_has_value);
+ return &_value;
+ }
+
+ const T &operator*() const noexcept
+ {
+ assert(_has_value);
+ return _value;
+ }
+ T &operator*() noexcept
+ {
+ assert(_has_value);
+ return _value;
+ }
+
+ T &value()
+ {
+ if (!_has_value)
+ throw std::exception();
+ return _value;
+ }
+ const T &value() const
+ {
+ if (!_has_value)
+ throw std::exception();
+ return _value;
+ }
+
+ explicit operator bool() const noexcept { return _has_value; }
+ bool has_value() const noexcept { return _has_value; }
+
+ private:
+ T _value{};
+ bool _has_value{false};
+};
+} // namespace detail
+
+using send_result_t = detail::trivial_optional<size_t>;
+using recv_result_t = detail::trivial_optional<size_t>;
+using recv_buffer_result_t = detail::trivial_optional<recv_buffer_size>;
+
+#endif
+
+namespace detail
+{
+template<class T> constexpr T enum_bit_or(T a, T b) noexcept
+{
+ static_assert(std::is_enum<T>::value, "must be enum");
+ using U = typename std::underlying_type<T>::type;
+ return static_cast<T>(static_cast<U>(a) | static_cast<U>(b));
+}
+template<class T> constexpr T enum_bit_and(T a, T b) noexcept
+{
+ static_assert(std::is_enum<T>::value, "must be enum");
+ using U = typename std::underlying_type<T>::type;
+ return static_cast<T>(static_cast<U>(a) & static_cast<U>(b));
+}
+template<class T> constexpr T enum_bit_xor(T a, T b) noexcept
+{
+ static_assert(std::is_enum<T>::value, "must be enum");
+ using U = typename std::underlying_type<T>::type;
+ return static_cast<T>(static_cast<U>(a) ^ static_cast<U>(b));
+}
+template<class T> constexpr T enum_bit_not(T a) noexcept
+{
+ static_assert(std::is_enum<T>::value, "must be enum");
+ using U = typename std::underlying_type<T>::type;
+ return static_cast<T>(~static_cast<U>(a));
+}
+} // namespace detail
+
+// partially satisfies named requirement BitmaskType
+enum class send_flags : int
+{
+ none = 0,
+ dontwait = ZMQ_DONTWAIT,
+ sndmore = ZMQ_SNDMORE
+};
+
+constexpr send_flags operator|(send_flags a, send_flags b) noexcept
+{
+ return detail::enum_bit_or(a, b);
+}
+constexpr send_flags operator&(send_flags a, send_flags b) noexcept
+{
+ return detail::enum_bit_and(a, b);
+}
+constexpr send_flags operator^(send_flags a, send_flags b) noexcept
+{
+ return detail::enum_bit_xor(a, b);
+}
+constexpr send_flags operator~(send_flags a) noexcept
+{
+ return detail::enum_bit_not(a);
+}
+
+// partially satisfies named requirement BitmaskType
+enum class recv_flags : int
+{
+ none = 0,
+ dontwait = ZMQ_DONTWAIT
+};
+
+constexpr recv_flags operator|(recv_flags a, recv_flags b) noexcept
+{
+ return detail::enum_bit_or(a, b);
+}
+constexpr recv_flags operator&(recv_flags a, recv_flags b) noexcept
+{
+ return detail::enum_bit_and(a, b);
+}
+constexpr recv_flags operator^(recv_flags a, recv_flags b) noexcept
+{
+ return detail::enum_bit_xor(a, b);
+}
+constexpr recv_flags operator~(recv_flags a) noexcept
+{
+ return detail::enum_bit_not(a);
+}
+
+
+// mutable_buffer, const_buffer and buffer are based on
+// the Networking TS specification, draft:
+// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/n4771.pdf
+
+class mutable_buffer
+{
+ public:
+ constexpr mutable_buffer() noexcept : _data(nullptr), _size(0) {}
+ constexpr mutable_buffer(void *p, size_t n) noexcept : _data(p), _size(n)
+ {
+#ifdef ZMQ_EXTENDED_CONSTEXPR
+ assert(p != nullptr || n == 0);
+#endif
+ }
+
+ constexpr void *data() const noexcept { return _data; }
+ constexpr size_t size() const noexcept { return _size; }
+ mutable_buffer &operator+=(size_t n) noexcept
+ {
+ // (std::min) is a workaround for when a min macro is defined
+ const auto shift = (std::min)(n, _size);
+ _data = static_cast<char *>(_data) + shift;
+ _size -= shift;
+ return *this;
+ }
+
+ private:
+ void *_data;
+ size_t _size;
+};
+
+inline mutable_buffer operator+(const mutable_buffer &mb, size_t n) noexcept
+{
+ return mutable_buffer(static_cast<char *>(mb.data()) + (std::min)(n, mb.size()),
+ mb.size() - (std::min)(n, mb.size()));
+}
+inline mutable_buffer operator+(size_t n, const mutable_buffer &mb) noexcept
+{
+ return mb + n;
+}
+
+class const_buffer
+{
+ public:
+ constexpr const_buffer() noexcept : _data(nullptr), _size(0) {}
+ constexpr const_buffer(const void *p, size_t n) noexcept : _data(p), _size(n)
+ {
+#ifdef ZMQ_EXTENDED_CONSTEXPR
+ assert(p != nullptr || n == 0);
+#endif
+ }
+ constexpr const_buffer(const mutable_buffer &mb) noexcept :
+ _data(mb.data()), _size(mb.size())
+ {
+ }
+
+ constexpr const void *data() const noexcept { return _data; }
+ constexpr size_t size() const noexcept { return _size; }
+ const_buffer &operator+=(size_t n) noexcept
+ {
+ const auto shift = (std::min)(n, _size);
+ _data = static_cast<const char *>(_data) + shift;
+ _size -= shift;
+ return *this;
+ }
+
+ private:
+ const void *_data;
+ size_t _size;
+};
+
+inline const_buffer operator+(const const_buffer &cb, size_t n) noexcept
+{
+ return const_buffer(static_cast<const char *>(cb.data())
+ + (std::min)(n, cb.size()),
+ cb.size() - (std::min)(n, cb.size()));
+}
+inline const_buffer operator+(size_t n, const const_buffer &cb) noexcept
+{
+ return cb + n;
+}
+
+// buffer creation
+
+constexpr mutable_buffer buffer(void *p, size_t n) noexcept
+{
+ return mutable_buffer(p, n);
+}
+constexpr const_buffer buffer(const void *p, size_t n) noexcept
+{
+ return const_buffer(p, n);
+}
+constexpr mutable_buffer buffer(const mutable_buffer &mb) noexcept
+{
+ return mb;
+}
+inline mutable_buffer buffer(const mutable_buffer &mb, size_t n) noexcept
+{
+ return mutable_buffer(mb.data(), (std::min)(mb.size(), n));
+}
+constexpr const_buffer buffer(const const_buffer &cb) noexcept
+{
+ return cb;
+}
+inline const_buffer buffer(const const_buffer &cb, size_t n) noexcept
+{
+ return const_buffer(cb.data(), (std::min)(cb.size(), n));
+}
+
+namespace detail
+{
+template<class T> struct is_buffer
+{
+ static constexpr bool value =
+ std::is_same<T, const_buffer>::value || std::is_same<T, mutable_buffer>::value;
+};
+
+template<class T> struct is_pod_like
+{
+ // NOTE: The networking draft N4771 section 16.11 requires
+ // T in the buffer functions below to be
+ // trivially copyable OR standard layout.
+ // Here we decide to be conservative and require both.
+ static constexpr bool value =
+ ZMQ_IS_TRIVIALLY_COPYABLE(T) && std::is_standard_layout<T>::value;
+};
+
+template<class C> constexpr auto seq_size(const C &c) noexcept -> decltype(c.size())
+{
+ return c.size();
+}
+template<class T, size_t N>
+constexpr size_t seq_size(const T (&/*array*/)[N]) noexcept
+{
+ return N;
+}
+
+template<class Seq>
+auto buffer_contiguous_sequence(Seq &&seq) noexcept
+ -> decltype(buffer(std::addressof(*std::begin(seq)), size_t{}))
+{
+ using T = typename std::remove_cv<
+ typename std::remove_reference<decltype(*std::begin(seq))>::type>::type;
+ static_assert(detail::is_pod_like<T>::value, "T must be POD");
+
+ const auto size = seq_size(seq);
+ return buffer(size != 0u ? std::addressof(*std::begin(seq)) : nullptr,
+ size * sizeof(T));
+}
+template<class Seq>
+auto buffer_contiguous_sequence(Seq &&seq, size_t n_bytes) noexcept
+ -> decltype(buffer_contiguous_sequence(seq))
+{
+ using T = typename std::remove_cv<
+ typename std::remove_reference<decltype(*std::begin(seq))>::type>::type;
+ static_assert(detail::is_pod_like<T>::value, "T must be POD");
+
+ const auto size = seq_size(seq);
+ return buffer(size != 0u ? std::addressof(*std::begin(seq)) : nullptr,
+ (std::min)(size * sizeof(T), n_bytes));
+}
+
+} // namespace detail
+
+// C array
+template<class T, size_t N> mutable_buffer buffer(T (&data)[N]) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, size_t N>
+mutable_buffer buffer(T (&data)[N], size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+template<class T, size_t N> const_buffer buffer(const T (&data)[N]) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, size_t N>
+const_buffer buffer(const T (&data)[N], size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+// std::array
+template<class T, size_t N> mutable_buffer buffer(std::array<T, N> &data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, size_t N>
+mutable_buffer buffer(std::array<T, N> &data, size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+template<class T, size_t N>
+const_buffer buffer(std::array<const T, N> &data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, size_t N>
+const_buffer buffer(std::array<const T, N> &data, size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+template<class T, size_t N>
+const_buffer buffer(const std::array<T, N> &data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, size_t N>
+const_buffer buffer(const std::array<T, N> &data, size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+// std::vector
+template<class T, class Allocator>
+mutable_buffer buffer(std::vector<T, Allocator> &data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, class Allocator>
+mutable_buffer buffer(std::vector<T, Allocator> &data, size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+template<class T, class Allocator>
+const_buffer buffer(const std::vector<T, Allocator> &data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, class Allocator>
+const_buffer buffer(const std::vector<T, Allocator> &data, size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+// std::basic_string
+template<class T, class Traits, class Allocator>
+mutable_buffer buffer(std::basic_string<T, Traits, Allocator> &data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, class Traits, class Allocator>
+mutable_buffer buffer(std::basic_string<T, Traits, Allocator> &data,
+ size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+template<class T, class Traits, class Allocator>
+const_buffer buffer(const std::basic_string<T, Traits, Allocator> &data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, class Traits, class Allocator>
+const_buffer buffer(const std::basic_string<T, Traits, Allocator> &data,
+ size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+
+#if CPPZMQ_HAS_STRING_VIEW
+// std::basic_string_view
+template<class T, class Traits>
+const_buffer buffer(std::basic_string_view<T, Traits> data) noexcept
+{
+ return detail::buffer_contiguous_sequence(data);
+}
+template<class T, class Traits>
+const_buffer buffer(std::basic_string_view<T, Traits> data, size_t n_bytes) noexcept
+{
+ return detail::buffer_contiguous_sequence(data, n_bytes);
+}
+#endif
+
+// Buffer for a string literal (null terminated)
+// where the buffer size excludes the terminating character.
+// Equivalent to zmq::buffer(std::string_view("...")).
+template<class Char, size_t N>
+constexpr const_buffer str_buffer(const Char (&data)[N]) noexcept
+{
+ static_assert(detail::is_pod_like<Char>::value, "Char must be POD");
+#ifdef ZMQ_EXTENDED_CONSTEXPR
+ assert(data[N - 1] == Char{0});
+#endif
+ return const_buffer(static_cast<const Char *>(data), (N - 1) * sizeof(Char));
+}
+
+namespace literals
+{
+constexpr const_buffer operator"" _zbuf(const char *str, size_t len) noexcept
+{
+ return const_buffer(str, len * sizeof(char));
+}
+constexpr const_buffer operator"" _zbuf(const wchar_t *str, size_t len) noexcept
+{
+ return const_buffer(str, len * sizeof(wchar_t));
+}
+constexpr const_buffer operator"" _zbuf(const char16_t *str, size_t len) noexcept
+{
+ return const_buffer(str, len * sizeof(char16_t));
+}
+constexpr const_buffer operator"" _zbuf(const char32_t *str, size_t len) noexcept
+{
+ return const_buffer(str, len * sizeof(char32_t));
+}
+}
+
+#ifdef ZMQ_CPP11
+enum class socket_type : int
+{
+ req = ZMQ_REQ,
+ rep = ZMQ_REP,
+ dealer = ZMQ_DEALER,
+ router = ZMQ_ROUTER,
+ pub = ZMQ_PUB,
+ sub = ZMQ_SUB,
+ xpub = ZMQ_XPUB,
+ xsub = ZMQ_XSUB,
+ push = ZMQ_PUSH,
+ pull = ZMQ_PULL,
+#if defined(ZMQ_BUILD_DRAFT_API) && ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 0)
+ server = ZMQ_SERVER,
+ client = ZMQ_CLIENT,
+ radio = ZMQ_RADIO,
+ dish = ZMQ_DISH,
+ gather = ZMQ_GATHER,
+ scatter = ZMQ_SCATTER,
+ dgram = ZMQ_DGRAM,
+#endif
+#if defined(ZMQ_BUILD_DRAFT_API) && ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 3, 3)
+ peer = ZMQ_PEER,
+ channel = ZMQ_CHANNEL,
+#endif
+#if ZMQ_VERSION_MAJOR >= 4
+ stream = ZMQ_STREAM,
+#endif
+ pair = ZMQ_PAIR
+};
+#endif
+
+namespace sockopt
+{
+// There are two types of options,
+// integral type with known compiler time size (int, bool, int64_t, uint64_t)
+// and arrays with dynamic size (strings, binary data).
+
+// BoolUnit: if true accepts values of type bool (but passed as T into libzmq)
+template<int Opt, class T, bool BoolUnit = false> struct integral_option
+{
+};
+
+// NullTerm:
+// 0: binary data
+// 1: null-terminated string (`getsockopt` size includes null)
+// 2: binary (size 32) or Z85 encoder string of size 41 (null included)
+template<int Opt, int NullTerm = 1> struct array_option
+{
+};
+
+#define ZMQ_DEFINE_INTEGRAL_OPT(OPT, NAME, TYPE) \
+ using NAME##_t = integral_option<OPT, TYPE, false>; \
+ ZMQ_INLINE_VAR ZMQ_CONSTEXPR_VAR NAME##_t NAME {}
+#define ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(OPT, NAME, TYPE) \
+ using NAME##_t = integral_option<OPT, TYPE, true>; \
+ ZMQ_INLINE_VAR ZMQ_CONSTEXPR_VAR NAME##_t NAME {}
+#define ZMQ_DEFINE_ARRAY_OPT(OPT, NAME) \
+ using NAME##_t = array_option<OPT>; \
+ ZMQ_INLINE_VAR ZMQ_CONSTEXPR_VAR NAME##_t NAME {}
+#define ZMQ_DEFINE_ARRAY_OPT_BINARY(OPT, NAME) \
+ using NAME##_t = array_option<OPT, 0>; \
+ ZMQ_INLINE_VAR ZMQ_CONSTEXPR_VAR NAME##_t NAME {}
+#define ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85(OPT, NAME) \
+ using NAME##_t = array_option<OPT, 2>; \
+ ZMQ_INLINE_VAR ZMQ_CONSTEXPR_VAR NAME##_t NAME {}
+
+// deprecated, use zmq::fd_t
+using cppzmq_fd_t = ::zmq::fd_t;
+
+#ifdef ZMQ_AFFINITY
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_AFFINITY, affinity, uint64_t);
+#endif
+#ifdef ZMQ_BACKLOG
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_BACKLOG, backlog, int);
+#endif
+#ifdef ZMQ_BINDTODEVICE
+ZMQ_DEFINE_ARRAY_OPT_BINARY(ZMQ_BINDTODEVICE, bindtodevice);
+#endif
+#ifdef ZMQ_CONFLATE
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_CONFLATE, conflate, int);
+#endif
+#ifdef ZMQ_CONNECT_ROUTING_ID
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_CONNECT_ROUTING_ID, connect_routing_id);
+#endif
+#ifdef ZMQ_CONNECT_TIMEOUT
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_CONNECT_TIMEOUT, connect_timeout, int);
+#endif
+#ifdef ZMQ_CURVE_PUBLICKEY
+ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85(ZMQ_CURVE_PUBLICKEY, curve_publickey);
+#endif
+#ifdef ZMQ_CURVE_SECRETKEY
+ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85(ZMQ_CURVE_SECRETKEY, curve_secretkey);
+#endif
+#ifdef ZMQ_CURVE_SERVER
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_CURVE_SERVER, curve_server, int);
+#endif
+#ifdef ZMQ_CURVE_SERVERKEY
+ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85(ZMQ_CURVE_SERVERKEY, curve_serverkey);
+#endif
+#ifdef ZMQ_EVENTS
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_EVENTS, events, int);
+#endif
+#ifdef ZMQ_FD
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_FD, fd, ::zmq::fd_t);
+#endif
+#ifdef ZMQ_GSSAPI_PLAINTEXT
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_GSSAPI_PLAINTEXT, gssapi_plaintext, int);
+#endif
+#ifdef ZMQ_GSSAPI_SERVER
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_GSSAPI_SERVER, gssapi_server, int);
+#endif
+#ifdef ZMQ_GSSAPI_SERVICE_PRINCIPAL
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_GSSAPI_SERVICE_PRINCIPAL, gssapi_service_principal);
+#endif
+#ifdef ZMQ_GSSAPI_SERVICE_PRINCIPAL_NAMETYPE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_GSSAPI_SERVICE_PRINCIPAL_NAMETYPE,
+ gssapi_service_principal_nametype,
+ int);
+#endif
+#ifdef ZMQ_GSSAPI_PRINCIPAL
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_GSSAPI_PRINCIPAL, gssapi_principal);
+#endif
+#ifdef ZMQ_GSSAPI_PRINCIPAL_NAMETYPE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_GSSAPI_PRINCIPAL_NAMETYPE,
+ gssapi_principal_nametype,
+ int);
+#endif
+#ifdef ZMQ_HANDSHAKE_IVL
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_HANDSHAKE_IVL, handshake_ivl, int);
+#endif
+#ifdef ZMQ_HEARTBEAT_IVL
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_HEARTBEAT_IVL, heartbeat_ivl, int);
+#endif
+#ifdef ZMQ_HEARTBEAT_TIMEOUT
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_HEARTBEAT_TIMEOUT, heartbeat_timeout, int);
+#endif
+#ifdef ZMQ_HEARTBEAT_TTL
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_HEARTBEAT_TTL, heartbeat_ttl, int);
+#endif
+#ifdef ZMQ_IMMEDIATE
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_IMMEDIATE, immediate, int);
+#endif
+#ifdef ZMQ_INVERT_MATCHING
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_INVERT_MATCHING, invert_matching, int);
+#endif
+#ifdef ZMQ_IPV6
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_IPV6, ipv6, int);
+#endif
+#ifdef ZMQ_LAST_ENDPOINT
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_LAST_ENDPOINT, last_endpoint);
+#endif
+#ifdef ZMQ_LINGER
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_LINGER, linger, int);
+#endif
+#ifdef ZMQ_MAXMSGSIZE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_MAXMSGSIZE, maxmsgsize, int64_t);
+#endif
+#ifdef ZMQ_MECHANISM
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_MECHANISM, mechanism, int);
+#endif
+#ifdef ZMQ_METADATA
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_METADATA, metadata);
+#endif
+#ifdef ZMQ_MULTICAST_HOPS
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_MULTICAST_HOPS, multicast_hops, int);
+#endif
+#ifdef ZMQ_MULTICAST_LOOP
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_MULTICAST_LOOP, multicast_loop, int);
+#endif
+#ifdef ZMQ_MULTICAST_MAXTPDU
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_MULTICAST_MAXTPDU, multicast_maxtpdu, int);
+#endif
+#ifdef ZMQ_PLAIN_SERVER
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_PLAIN_SERVER, plain_server, int);
+#endif
+#ifdef ZMQ_PLAIN_PASSWORD
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_PLAIN_PASSWORD, plain_password);
+#endif
+#ifdef ZMQ_PLAIN_USERNAME
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_PLAIN_USERNAME, plain_username);
+#endif
+#ifdef ZMQ_USE_FD
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_USE_FD, use_fd, int);
+#endif
+#ifdef ZMQ_PROBE_ROUTER
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_PROBE_ROUTER, probe_router, int);
+#endif
+#ifdef ZMQ_RATE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_RATE, rate, int);
+#endif
+#ifdef ZMQ_RCVBUF
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_RCVBUF, rcvbuf, int);
+#endif
+#ifdef ZMQ_RCVHWM
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_RCVHWM, rcvhwm, int);
+#endif
+#ifdef ZMQ_RCVMORE
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_RCVMORE, rcvmore, int);
+#endif
+#ifdef ZMQ_RCVTIMEO
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_RCVTIMEO, rcvtimeo, int);
+#endif
+#ifdef ZMQ_RECONNECT_IVL
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_RECONNECT_IVL, reconnect_ivl, int);
+#endif
+#ifdef ZMQ_RECONNECT_IVL_MAX
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_RECONNECT_IVL_MAX, reconnect_ivl_max, int);
+#endif
+#ifdef ZMQ_RECOVERY_IVL
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_RECOVERY_IVL, recovery_ivl, int);
+#endif
+#ifdef ZMQ_REQ_CORRELATE
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_REQ_CORRELATE, req_correlate, int);
+#endif
+#ifdef ZMQ_REQ_RELAXED
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_REQ_RELAXED, req_relaxed, int);
+#endif
+#ifdef ZMQ_ROUTER_HANDOVER
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_ROUTER_HANDOVER, router_handover, int);
+#endif
+#ifdef ZMQ_ROUTER_MANDATORY
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_ROUTER_MANDATORY, router_mandatory, int);
+#endif
+#ifdef ZMQ_ROUTER_NOTIFY
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_ROUTER_NOTIFY, router_notify, int);
+#endif
+#ifdef ZMQ_ROUTING_ID
+ZMQ_DEFINE_ARRAY_OPT_BINARY(ZMQ_ROUTING_ID, routing_id);
+#endif
+#ifdef ZMQ_SNDBUF
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_SNDBUF, sndbuf, int);
+#endif
+#ifdef ZMQ_SNDHWM
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_SNDHWM, sndhwm, int);
+#endif
+#ifdef ZMQ_SNDTIMEO
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_SNDTIMEO, sndtimeo, int);
+#endif
+#ifdef ZMQ_SOCKS_PROXY
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_SOCKS_PROXY, socks_proxy);
+#endif
+#ifdef ZMQ_STREAM_NOTIFY
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_STREAM_NOTIFY, stream_notify, int);
+#endif
+#ifdef ZMQ_SUBSCRIBE
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_SUBSCRIBE, subscribe);
+#endif
+#ifdef ZMQ_TCP_KEEPALIVE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TCP_KEEPALIVE, tcp_keepalive, int);
+#endif
+#ifdef ZMQ_TCP_KEEPALIVE_CNT
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TCP_KEEPALIVE_CNT, tcp_keepalive_cnt, int);
+#endif
+#ifdef ZMQ_TCP_KEEPALIVE_IDLE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TCP_KEEPALIVE_IDLE, tcp_keepalive_idle, int);
+#endif
+#ifdef ZMQ_TCP_KEEPALIVE_INTVL
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TCP_KEEPALIVE_INTVL, tcp_keepalive_intvl, int);
+#endif
+#ifdef ZMQ_TCP_MAXRT
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TCP_MAXRT, tcp_maxrt, int);
+#endif
+#ifdef ZMQ_THREAD_SAFE
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_THREAD_SAFE, thread_safe, int);
+#endif
+#ifdef ZMQ_TOS
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TOS, tos, int);
+#endif
+#ifdef ZMQ_TYPE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TYPE, type, int);
+#ifdef ZMQ_CPP11
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_TYPE, socket_type, socket_type);
+#endif // ZMQ_CPP11
+#endif // ZMQ_TYPE
+#ifdef ZMQ_UNSUBSCRIBE
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_UNSUBSCRIBE, unsubscribe);
+#endif
+#ifdef ZMQ_VMCI_BUFFER_SIZE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_VMCI_BUFFER_SIZE, vmci_buffer_size, uint64_t);
+#endif
+#ifdef ZMQ_VMCI_BUFFER_MIN_SIZE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_VMCI_BUFFER_MIN_SIZE, vmci_buffer_min_size, uint64_t);
+#endif
+#ifdef ZMQ_VMCI_BUFFER_MAX_SIZE
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_VMCI_BUFFER_MAX_SIZE, vmci_buffer_max_size, uint64_t);
+#endif
+#ifdef ZMQ_VMCI_CONNECT_TIMEOUT
+ZMQ_DEFINE_INTEGRAL_OPT(ZMQ_VMCI_CONNECT_TIMEOUT, vmci_connect_timeout, int);
+#endif
+#ifdef ZMQ_XPUB_VERBOSE
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_XPUB_VERBOSE, xpub_verbose, int);
+#endif
+#ifdef ZMQ_XPUB_VERBOSER
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_XPUB_VERBOSER, xpub_verboser, int);
+#endif
+#ifdef ZMQ_XPUB_MANUAL
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_XPUB_MANUAL, xpub_manual, int);
+#endif
+#ifdef ZMQ_XPUB_NODROP
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_XPUB_NODROP, xpub_nodrop, int);
+#endif
+#ifdef ZMQ_XPUB_WELCOME_MSG
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_XPUB_WELCOME_MSG, xpub_welcome_msg);
+#endif
+#ifdef ZMQ_ZAP_ENFORCE_DOMAIN
+ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(ZMQ_ZAP_ENFORCE_DOMAIN, zap_enforce_domain, int);
+#endif
+#ifdef ZMQ_ZAP_DOMAIN
+ZMQ_DEFINE_ARRAY_OPT(ZMQ_ZAP_DOMAIN, zap_domain);
+#endif
+
+} // namespace sockopt
+#endif // ZMQ_CPP11
+
+
+namespace detail
+{
+class socket_base
+{
+ public:
+ socket_base() ZMQ_NOTHROW : _handle(ZMQ_NULLPTR) {}
+ ZMQ_EXPLICIT socket_base(void *handle) ZMQ_NOTHROW : _handle(handle) {}
+
+ template<typename T>
+ ZMQ_CPP11_DEPRECATED("from 4.7.0, use `set` taking option from zmq::sockopt")
+ void setsockopt(int option_, T const &optval)
+ {
+ setsockopt(option_, &optval, sizeof(T));
+ }
+
+ ZMQ_CPP11_DEPRECATED("from 4.7.0, use `set` taking option from zmq::sockopt")
+ void setsockopt(int option_, const void *optval_, size_t optvallen_)
+ {
+ int rc = zmq_setsockopt(_handle, option_, optval_, optvallen_);
+ if (rc != 0)
+ throw error_t();
+ }
+
+ ZMQ_CPP11_DEPRECATED("from 4.7.0, use `get` taking option from zmq::sockopt")
+ void getsockopt(int option_, void *optval_, size_t *optvallen_) const
+ {
+ int rc = zmq_getsockopt(_handle, option_, optval_, optvallen_);
+ if (rc != 0)
+ throw error_t();
+ }
+
+ template<typename T>
+ ZMQ_CPP11_DEPRECATED("from 4.7.0, use `get` taking option from zmq::sockopt")
+ T getsockopt(int option_) const
+ {
+ T optval;
+ size_t optlen = sizeof(T);
+ getsockopt(option_, &optval, &optlen);
+ return optval;
+ }
+
+#ifdef ZMQ_CPP11
+ // Set integral socket option, e.g.
+ // `socket.set(zmq::sockopt::linger, 0)`
+ template<int Opt, class T, bool BoolUnit>
+ void set(sockopt::integral_option<Opt, T, BoolUnit>, const T &val)
+ {
+ static_assert(std::is_integral<T>::value, "T must be integral");
+ set_option(Opt, &val, sizeof val);
+ }
+
+ // Set integral socket option from boolean, e.g.
+ // `socket.set(zmq::sockopt::immediate, false)`
+ template<int Opt, class T>
+ void set(sockopt::integral_option<Opt, T, true>, bool val)
+ {
+ static_assert(std::is_integral<T>::value, "T must be integral");
+ T rep_val = val;
+ set_option(Opt, &rep_val, sizeof rep_val);
+ }
+
+ // Set array socket option, e.g.
+ // `socket.set(zmq::sockopt::plain_username, "foo123")`
+ template<int Opt, int NullTerm>
+ void set(sockopt::array_option<Opt, NullTerm>, const char *buf)
+ {
+ set_option(Opt, buf, std::strlen(buf));
+ }
+
+ // Set array socket option, e.g.
+ // `socket.set(zmq::sockopt::routing_id, zmq::buffer(id))`
+ template<int Opt, int NullTerm>
+ void set(sockopt::array_option<Opt, NullTerm>, const_buffer buf)
+ {
+ set_option(Opt, buf.data(), buf.size());
+ }
+
+ // Set array socket option, e.g.
+ // `socket.set(zmq::sockopt::routing_id, id_str)`
+ template<int Opt, int NullTerm>
+ void set(sockopt::array_option<Opt, NullTerm>, const std::string &buf)
+ {
+ set_option(Opt, buf.data(), buf.size());
+ }
+
+#if CPPZMQ_HAS_STRING_VIEW
+ // Set array socket option, e.g.
+ // `socket.set(zmq::sockopt::routing_id, id_str)`
+ template<int Opt, int NullTerm>
+ void set(sockopt::array_option<Opt, NullTerm>, std::string_view buf)
+ {
+ set_option(Opt, buf.data(), buf.size());
+ }
+#endif
+
+ // Get scalar socket option, e.g.
+ // `auto opt = socket.get(zmq::sockopt::linger)`
+ template<int Opt, class T, bool BoolUnit>
+ ZMQ_NODISCARD T get(sockopt::integral_option<Opt, T, BoolUnit>) const
+ {
+ static_assert(std::is_scalar<T>::value, "T must be scalar");
+ T val;
+ size_t size = sizeof val;
+ get_option(Opt, &val, &size);
+ assert(size == sizeof val);
+ return val;
+ }
+
+ // Get array socket option, writes to buf, returns option size in bytes, e.g.
+ // `size_t optsize = socket.get(zmq::sockopt::routing_id, zmq::buffer(id))`
+ template<int Opt, int NullTerm>
+ ZMQ_NODISCARD size_t get(sockopt::array_option<Opt, NullTerm>,
+ mutable_buffer buf) const
+ {
+ size_t size = buf.size();
+ get_option(Opt, buf.data(), &size);
+ return size;
+ }
+
+ // Get array socket option as string (initializes the string buffer size to init_size) e.g.
+ // `auto s = socket.get(zmq::sockopt::routing_id)`
+ // Note: removes the null character from null-terminated string options,
+ // i.e. the string size excludes the null character.
+ template<int Opt, int NullTerm>
+ ZMQ_NODISCARD std::string get(sockopt::array_option<Opt, NullTerm>,
+ size_t init_size = 1024) const
+ {
+ if ZMQ_CONSTEXPR_IF (NullTerm == 2) {
+ if (init_size == 1024) {
+ init_size = 41; // get as Z85 string
+ }
}
- inline context_t &operator = (context_t &&rhs)
- {
- std::swap (ptr, rhs.ptr);
- return *this;
+ std::string str(init_size, '\0');
+ size_t size = get(sockopt::array_option<Opt>{}, buffer(str));
+ if ZMQ_CONSTEXPR_IF (NullTerm == 1) {
+ if (size > 0) {
+ assert(str[size - 1] == '\0');
+ --size;
+ }
+ } else if ZMQ_CONSTEXPR_IF (NullTerm == 2) {
+ assert(size == 32 || size == 41);
+ if (size == 41) {
+ assert(str[size - 1] == '\0');
+ --size;
+ }
}
+ str.resize(size);
+ return str;
+ }
#endif
- inline ~context_t ()
- {
- close();
- }
+ void bind(std::string const &addr) { bind(addr.c_str()); }
- inline void close()
- {
- if (ptr == NULL)
- return;
- int rc = zmq_ctx_destroy (ptr);
- ZMQ_ASSERT (rc == 0);
- ptr = NULL;
- }
+ void bind(const char *addr_)
+ {
+ int rc = zmq_bind(_handle, addr_);
+ if (rc != 0)
+ throw error_t();
+ }
- // Be careful with this, it's probably only useful for
- // using the C api together with an existing C++ api.
- // Normally you should never need to use this.
- inline operator void* ()
- {
- return ptr;
- }
+ void unbind(std::string const &addr) { unbind(addr.c_str()); }
- private:
+ void unbind(const char *addr_)
+ {
+ int rc = zmq_unbind(_handle, addr_);
+ if (rc != 0)
+ throw error_t();
+ }
- void *ptr;
+ void connect(std::string const &addr) { connect(addr.c_str()); }
- context_t (const context_t&);
- void operator = (const context_t&);
- };
+ void connect(const char *addr_)
+ {
+ int rc = zmq_connect(_handle, addr_);
+ if (rc != 0)
+ throw error_t();
+ }
- class socket_t
+ void disconnect(std::string const &addr) { disconnect(addr.c_str()); }
+
+ void disconnect(const char *addr_)
{
- friend class monitor_t;
- public:
+ int rc = zmq_disconnect(_handle, addr_);
+ if (rc != 0)
+ throw error_t();
+ }
- inline socket_t (context_t &context_, int type_)
- {
- ctxptr = context_.ptr;
- ptr = zmq_socket (context_.ptr, type_);
- if (ptr == NULL)
- throw error_t ();
- }
+ ZMQ_DEPRECATED("from 4.7.1, use handle() != nullptr or operator bool")
+ bool connected() const ZMQ_NOTHROW { return (_handle != ZMQ_NULLPTR); }
+
+ ZMQ_CPP11_DEPRECATED("from 4.3.1, use send taking a const_buffer and send_flags")
+ size_t send(const void *buf_, size_t len_, int flags_ = 0)
+ {
+ int nbytes = zmq_send(_handle, buf_, len_, flags_);
+ if (nbytes >= 0)
+ return static_cast<size_t>(nbytes);
+ if (zmq_errno() == EAGAIN)
+ return 0;
+ throw error_t();
+ }
+
+ ZMQ_CPP11_DEPRECATED("from 4.3.1, use send taking message_t and send_flags")
+ bool send(message_t &msg_,
+ int flags_ = 0) // default until removed
+ {
+ int nbytes = zmq_msg_send(msg_.handle(), _handle, flags_);
+ if (nbytes >= 0)
+ return true;
+ if (zmq_errno() == EAGAIN)
+ return false;
+ throw error_t();
+ }
+
+ template<typename T>
+ ZMQ_CPP11_DEPRECATED(
+ "from 4.4.1, use send taking message_t or buffer (for contiguous "
+ "ranges), and send_flags")
+ bool send(T first, T last, int flags_ = 0)
+ {
+ zmq::message_t msg(first, last);
+ int nbytes = zmq_msg_send(msg.handle(), _handle, flags_);
+ if (nbytes >= 0)
+ return true;
+ if (zmq_errno() == EAGAIN)
+ return false;
+ throw error_t();
+ }
#ifdef ZMQ_HAS_RVALUE_REFS
- inline socket_t(socket_t&& rhs) : ptr(rhs.ptr)
- {
- rhs.ptr = NULL;
- }
- inline socket_t& operator=(socket_t&& rhs)
- {
- std::swap(ptr, rhs.ptr);
- return *this;
- }
+ ZMQ_CPP11_DEPRECATED("from 4.3.1, use send taking message_t and send_flags")
+ bool send(message_t &&msg_,
+ int flags_ = 0) // default until removed
+ {
+#ifdef ZMQ_CPP11
+ return send(msg_, static_cast<send_flags>(flags_)).has_value();
+#else
+ return send(msg_, flags_);
+#endif
+ }
#endif
- inline ~socket_t ()
- {
- close();
- }
+#ifdef ZMQ_CPP11
+ send_result_t send(const_buffer buf, send_flags flags = send_flags::none)
+ {
+ const int nbytes =
+ zmq_send(_handle, buf.data(), buf.size(), static_cast<int>(flags));
+ if (nbytes >= 0)
+ return static_cast<size_t>(nbytes);
+ if (zmq_errno() == EAGAIN)
+ return {};
+ throw error_t();
+ }
- inline operator void* ()
- {
- return ptr;
- }
+ send_result_t send(message_t &msg, send_flags flags)
+ {
+ int nbytes = zmq_msg_send(msg.handle(), _handle, static_cast<int>(flags));
+ if (nbytes >= 0)
+ return static_cast<size_t>(nbytes);
+ if (zmq_errno() == EAGAIN)
+ return {};
+ throw error_t();
+ }
- inline void close()
- {
- if(ptr == NULL)
- // already closed
- return ;
- int rc = zmq_close (ptr);
- ZMQ_ASSERT (rc == 0);
- ptr = 0 ;
- }
+ send_result_t send(message_t &&msg, send_flags flags)
+ {
+ return send(msg, flags);
+ }
+#endif
- inline void setsockopt (int option_, const void *optval_,
- size_t optvallen_)
- {
- int rc = zmq_setsockopt (ptr, option_, optval_, optvallen_);
- if (rc != 0)
- throw error_t ();
- }
+ ZMQ_CPP11_DEPRECATED(
+ "from 4.3.1, use recv taking a mutable_buffer and recv_flags")
+ size_t recv(void *buf_, size_t len_, int flags_ = 0)
+ {
+ int nbytes = zmq_recv(_handle, buf_, len_, flags_);
+ if (nbytes >= 0)
+ return static_cast<size_t>(nbytes);
+ if (zmq_errno() == EAGAIN)
+ return 0;
+ throw error_t();
+ }
- inline void getsockopt (int option_, void *optval_,
- size_t *optvallen_)
- {
- int rc = zmq_getsockopt (ptr, option_, optval_, optvallen_);
- if (rc != 0)
- throw error_t ();
- }
-
- inline void bind (const char *addr_)
- {
- int rc = zmq_bind (ptr, addr_);
- if (rc != 0)
- throw error_t ();
- }
+ ZMQ_CPP11_DEPRECATED(
+ "from 4.3.1, use recv taking a reference to message_t and recv_flags")
+ bool recv(message_t *msg_, int flags_ = 0)
+ {
+ int nbytes = zmq_msg_recv(msg_->handle(), _handle, flags_);
+ if (nbytes >= 0)
+ return true;
+ if (zmq_errno() == EAGAIN)
+ return false;
+ throw error_t();
+ }
- inline void unbind (const char *addr_)
- {
- int rc = zmq_unbind (ptr, addr_);
- if (rc != 0)
- throw error_t ();
+#ifdef ZMQ_CPP11
+ ZMQ_NODISCARD
+ recv_buffer_result_t recv(mutable_buffer buf,
+ recv_flags flags = recv_flags::none)
+ {
+ const int nbytes =
+ zmq_recv(_handle, buf.data(), buf.size(), static_cast<int>(flags));
+ if (nbytes >= 0) {
+ return recv_buffer_size{
+ (std::min)(static_cast<size_t>(nbytes), buf.size()),
+ static_cast<size_t>(nbytes)};
}
+ if (zmq_errno() == EAGAIN)
+ return {};
+ throw error_t();
+ }
- inline void connect (const char *addr_)
- {
- int rc = zmq_connect (ptr, addr_);
- if (rc != 0)
- throw error_t ();
+ ZMQ_NODISCARD
+ recv_result_t recv(message_t &msg, recv_flags flags = recv_flags::none)
+ {
+ const int nbytes =
+ zmq_msg_recv(msg.handle(), _handle, static_cast<int>(flags));
+ if (nbytes >= 0) {
+ assert(msg.size() == static_cast<size_t>(nbytes));
+ return static_cast<size_t>(nbytes);
}
+ if (zmq_errno() == EAGAIN)
+ return {};
+ throw error_t();
+ }
+#endif
- inline void disconnect (const char *addr_)
- {
- int rc = zmq_disconnect (ptr, addr_);
- if (rc != 0)
- throw error_t ();
- }
+#if defined(ZMQ_BUILD_DRAFT_API) && ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 0)
+ void join(const char *group)
+ {
+ int rc = zmq_join(_handle, group);
+ if (rc != 0)
+ throw error_t();
+ }
- inline bool connected()
- {
- return(ptr != NULL);
- }
-
- inline size_t send (const void *buf_, size_t len_, int flags_ = 0)
- {
- int nbytes = zmq_send (ptr, buf_, len_, flags_);
- if (nbytes >= 0)
- return (size_t) nbytes;
- if (zmq_errno () == EAGAIN)
- return 0;
- throw error_t ();
- }
+ void leave(const char *group)
+ {
+ int rc = zmq_leave(_handle, group);
+ if (rc != 0)
+ throw error_t();
+ }
+#endif
- inline bool send (message_t &msg_, int flags_ = 0)
- {
- int nbytes = zmq_msg_send (&(msg_.msg), ptr, flags_);
- if (nbytes >= 0)
- return true;
- if (zmq_errno () == EAGAIN)
- return false;
- throw error_t ();
- }
+ ZMQ_NODISCARD void *handle() ZMQ_NOTHROW { return _handle; }
+ ZMQ_NODISCARD const void *handle() const ZMQ_NOTHROW { return _handle; }
- inline size_t recv (void *buf_, size_t len_, int flags_ = 0)
- {
- int nbytes = zmq_recv (ptr, buf_, len_, flags_);
- if (nbytes >= 0)
- return (size_t) nbytes;
- if (zmq_errno () == EAGAIN)
- return 0;
- throw error_t ();
- }
+ ZMQ_EXPLICIT operator bool() const ZMQ_NOTHROW { return _handle != ZMQ_NULLPTR; }
+ // note: non-const operator bool can be removed once
+ // operator void* is removed from socket_t
+ ZMQ_EXPLICIT operator bool() ZMQ_NOTHROW { return _handle != ZMQ_NULLPTR; }
- inline bool recv (message_t *msg_, int flags_ = 0)
- {
- int nbytes = zmq_msg_recv (&(msg_->msg), ptr, flags_);
- if (nbytes >= 0)
- return true;
- if (zmq_errno () == EAGAIN)
- return false;
- throw error_t ();
+ protected:
+ void *_handle;
+
+ private:
+ void set_option(int option_, const void *optval_, size_t optvallen_)
+ {
+ int rc = zmq_setsockopt(_handle, option_, optval_, optvallen_);
+ if (rc != 0)
+ throw error_t();
+ }
+
+ void get_option(int option_, void *optval_, size_t *optvallen_) const
+ {
+ int rc = zmq_getsockopt(_handle, option_, optval_, optvallen_);
+ if (rc != 0)
+ throw error_t();
+ }
+};
+} // namespace detail
+
+struct from_handle_t
+{
+ struct _private
+ {
+ }; // disabling use other than with from_handle
+ ZMQ_CONSTEXPR_FN ZMQ_EXPLICIT from_handle_t(_private /*p*/) ZMQ_NOTHROW {}
+};
+
+ZMQ_CONSTEXPR_VAR from_handle_t from_handle =
+ from_handle_t(from_handle_t::_private());
+
+// A non-owning nullable reference to a socket.
+// The reference is invalidated on socket close or destruction.
+class socket_ref : public detail::socket_base
+{
+ public:
+ socket_ref() ZMQ_NOTHROW : detail::socket_base() {}
+#ifdef ZMQ_CPP11
+ socket_ref(std::nullptr_t) ZMQ_NOTHROW : detail::socket_base() {}
+#endif
+ socket_ref(from_handle_t /*fh*/, void *handle) ZMQ_NOTHROW
+ : detail::socket_base(handle)
+ {
+ }
+};
+
+#ifdef ZMQ_CPP11
+inline bool operator==(socket_ref sr, std::nullptr_t /*p*/) ZMQ_NOTHROW
+{
+ return sr.handle() == nullptr;
+}
+inline bool operator==(std::nullptr_t /*p*/, socket_ref sr) ZMQ_NOTHROW
+{
+ return sr.handle() == nullptr;
+}
+inline bool operator!=(socket_ref sr, std::nullptr_t /*p*/) ZMQ_NOTHROW
+{
+ return !(sr == nullptr);
+}
+inline bool operator!=(std::nullptr_t /*p*/, socket_ref sr) ZMQ_NOTHROW
+{
+ return !(sr == nullptr);
+}
+#endif
+
+inline bool operator==(const detail::socket_base& a, const detail::socket_base& b) ZMQ_NOTHROW
+{
+ return std::equal_to<const void *>()(a.handle(), b.handle());
+}
+inline bool operator!=(const detail::socket_base& a, const detail::socket_base& b) ZMQ_NOTHROW
+{
+ return !(a == b);
+}
+inline bool operator<(const detail::socket_base& a, const detail::socket_base& b) ZMQ_NOTHROW
+{
+ return std::less<const void *>()(a.handle(), b.handle());
+}
+inline bool operator>(const detail::socket_base& a, const detail::socket_base& b) ZMQ_NOTHROW
+{
+ return b < a;
+}
+inline bool operator<=(const detail::socket_base& a, const detail::socket_base& b) ZMQ_NOTHROW
+{
+ return !(a > b);
+}
+inline bool operator>=(const detail::socket_base& a, const detail::socket_base& b) ZMQ_NOTHROW
+{
+ return !(a < b);
+}
+
+} // namespace zmq
+
+#ifdef ZMQ_CPP11
+namespace std
+{
+template<> struct hash<zmq::socket_ref>
+{
+ size_t operator()(zmq::socket_ref sr) const ZMQ_NOTHROW
+ {
+ return hash<void *>()(sr.handle());
+ }
+};
+} // namespace std
+#endif
+
+namespace zmq
+{
+class socket_t : public detail::socket_base
+{
+ friend class monitor_t;
+
+ public:
+ socket_t() ZMQ_NOTHROW : detail::socket_base(ZMQ_NULLPTR), ctxptr(ZMQ_NULLPTR) {}
+
+ socket_t(context_t &context_, int type_) :
+ detail::socket_base(zmq_socket(context_.handle(), type_)),
+ ctxptr(context_.handle())
+ {
+ if (_handle == ZMQ_NULLPTR)
+ throw error_t();
+ }
+
+#ifdef ZMQ_CPP11
+ socket_t(context_t &context_, socket_type type_) :
+ socket_t(context_, static_cast<int>(type_))
+ {
+ }
+#endif
+
+#ifdef ZMQ_HAS_RVALUE_REFS
+ socket_t(socket_t &&rhs) ZMQ_NOTHROW : detail::socket_base(rhs._handle),
+ ctxptr(rhs.ctxptr)
+ {
+ rhs._handle = ZMQ_NULLPTR;
+ rhs.ctxptr = ZMQ_NULLPTR;
+ }
+ socket_t &operator=(socket_t &&rhs) ZMQ_NOTHROW
+ {
+ close();
+ std::swap(_handle, rhs._handle);
+ std::swap(ctxptr, rhs.ctxptr);
+ return *this;
+ }
+#endif
+
+ ~socket_t() ZMQ_NOTHROW { close(); }
+
+ operator void *() ZMQ_NOTHROW { return _handle; }
+
+ operator void const *() const ZMQ_NOTHROW { return _handle; }
+
+ void close() ZMQ_NOTHROW
+ {
+ if (_handle == ZMQ_NULLPTR)
+ // already closed
+ return;
+ int rc = zmq_close(_handle);
+ ZMQ_ASSERT(rc == 0);
+ _handle = ZMQ_NULLPTR;
+ ctxptr = ZMQ_NULLPTR;
+ }
+
+ void swap(socket_t &other) ZMQ_NOTHROW
+ {
+ std::swap(_handle, other._handle);
+ std::swap(ctxptr, other.ctxptr);
+ }
+
+ operator socket_ref() ZMQ_NOTHROW { return socket_ref(from_handle, _handle); }
+
+ private:
+ void *ctxptr;
+
+ socket_t(const socket_t &) ZMQ_DELETED_FUNCTION;
+ void operator=(const socket_t &) ZMQ_DELETED_FUNCTION;
+
+ // used by monitor_t
+ socket_t(void *context_, int type_) :
+ detail::socket_base(zmq_socket(context_, type_)), ctxptr(context_)
+ {
+ if (_handle == ZMQ_NULLPTR)
+ throw error_t();
+ if (ctxptr == ZMQ_NULLPTR)
+ throw error_t();
+ }
+};
+
+inline void swap(socket_t &a, socket_t &b) ZMQ_NOTHROW
+{
+ a.swap(b);
+}
+
+ZMQ_DEPRECATED("from 4.3.1, use proxy taking socket_t objects")
+inline void proxy(void *frontend, void *backend, void *capture)
+{
+ int rc = zmq_proxy(frontend, backend, capture);
+ if (rc != 0)
+ throw error_t();
+}
+
+inline void
+proxy(socket_ref frontend, socket_ref backend, socket_ref capture = socket_ref())
+{
+ int rc = zmq_proxy(frontend.handle(), backend.handle(), capture.handle());
+ if (rc != 0)
+ throw error_t();
+}
+
+#ifdef ZMQ_HAS_PROXY_STEERABLE
+ZMQ_DEPRECATED("from 4.3.1, use proxy_steerable taking socket_t objects")
+inline void
+proxy_steerable(void *frontend, void *backend, void *capture, void *control)
+{
+ int rc = zmq_proxy_steerable(frontend, backend, capture, control);
+ if (rc != 0)
+ throw error_t();
+}
+
+inline void proxy_steerable(socket_ref frontend,
+ socket_ref backend,
+ socket_ref capture,
+ socket_ref control)
+{
+ int rc = zmq_proxy_steerable(frontend.handle(), backend.handle(),
+ capture.handle(), control.handle());
+ if (rc != 0)
+ throw error_t();
+}
+#endif
+
+class monitor_t
+{
+ public:
+ monitor_t() : _socket(), _monitor_socket() {}
+
+ virtual ~monitor_t() { close(); }
+
+#ifdef ZMQ_HAS_RVALUE_REFS
+ monitor_t(monitor_t &&rhs) ZMQ_NOTHROW : _socket(), _monitor_socket()
+ {
+ std::swap(_socket, rhs._socket);
+ std::swap(_monitor_socket, rhs._monitor_socket);
+ }
+
+ monitor_t &operator=(monitor_t &&rhs) ZMQ_NOTHROW
+ {
+ close();
+ _socket = socket_ref();
+ std::swap(_socket, rhs._socket);
+ std::swap(_monitor_socket, rhs._monitor_socket);
+ return *this;
+ }
+#endif
+
+
+ void
+ monitor(socket_t &socket, std::string const &addr, int events = ZMQ_EVENT_ALL)
+ {
+ monitor(socket, addr.c_str(), events);
+ }
+
+ void monitor(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL)
+ {
+ init(socket, addr_, events);
+ while (true) {
+ check_event(-1);
}
-
- private:
- void *ptr;
- void *ctxptr;
+ }
- socket_t (const socket_t&) ZMQ_DELETED_FUNCTION;
- void operator = (const socket_t&) ZMQ_DELETED_FUNCTION;
- };
+ void init(socket_t &socket, std::string const &addr, int events = ZMQ_EVENT_ALL)
+ {
+ init(socket, addr.c_str(), events);
+ }
- class monitor_t
+ void init(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL)
{
- public:
- monitor_t() : socketPtr(NULL) {}
- virtual ~monitor_t() {}
+ int rc = zmq_socket_monitor(socket.handle(), addr_, events);
+ if (rc != 0)
+ throw error_t();
+
+ _socket = socket;
+ _monitor_socket = socket_t(socket.ctxptr, ZMQ_PAIR);
+ _monitor_socket.connect(addr_);
+
+ on_monitor_started();
+ }
+
+ bool check_event(int timeout = 0)
+ {
+ assert(_monitor_socket);
+
+ zmq::message_t eventMsg;
+
+ zmq::pollitem_t items[] = {
+ {_monitor_socket.handle(), 0, ZMQ_POLLIN, 0},
+ };
+
+ #ifdef ZMQ_CPP11
+ zmq::poll(&items[0], 1, std::chrono::milliseconds(timeout));
+ #else
+ zmq::poll(&items[0], 1, timeout);
+ #endif
+
+ if (items[0].revents & ZMQ_POLLIN) {
+ int rc = zmq_msg_recv(eventMsg.handle(), _monitor_socket.handle(), 0);
+ if (rc == -1 && zmq_errno() == ETERM)
+ return false;
+ assert(rc != -1);
+
+ } else {
+ return false;
+ }
- void monitor(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL)
- {
- int rc = zmq_socket_monitor(socket.ptr, addr_, events);
- if (rc != 0)
- throw error_t ();
-
- socketPtr = socket.ptr;
- void *s = zmq_socket (socket.ctxptr, ZMQ_PAIR);
- assert (s);
-
- rc = zmq_connect (s, addr_);
- assert (rc == 0);
-
- on_monitor_started();
-
- while (true) {
- zmq_msg_t eventMsg;
- zmq_msg_init (&eventMsg);
- rc = zmq_recvmsg (s, &eventMsg, 0);
- if (rc == -1 && zmq_errno() == ETERM)
- break;
- assert (rc != -1);
#if ZMQ_VERSION_MAJOR >= 4
- const char* data = static_cast<const char*>(zmq_msg_data(&eventMsg));
- zmq_event_t msgEvent;
- msgEvent.event = *(uint16_t*)data; data += sizeof(uint16_t);
- msgEvent.value = *(int32_t*)data;
- zmq_event_t* event = &msgEvent;
+ const char *data = static_cast<const char *>(eventMsg.data());
+ zmq_event_t msgEvent;
+ memcpy(&msgEvent.event, data, sizeof(uint16_t));
+ data += sizeof(uint16_t);
+ memcpy(&msgEvent.value, data, sizeof(int32_t));
+ zmq_event_t *event = &msgEvent;
#else
- zmq_event_t* event = static_cast<zmq_event_t*>(zmq_msg_data(&eventMsg));
+ zmq_event_t *event = static_cast<zmq_event_t *>(eventMsg.data());
#endif
-
+
#ifdef ZMQ_NEW_MONITOR_EVENT_LAYOUT
- zmq_msg_t addrMsg;
- zmq_msg_init (&addrMsg);
- rc = zmq_recvmsg (s, &addrMsg, 0);
- if (rc == -1 && zmq_errno() == ETERM)
- break;
- assert (rc != -1);
- const char* str = static_cast<const char*>(zmq_msg_data (&addrMsg));
- std::string address(str, str + zmq_msg_size(&addrMsg));
- zmq_msg_close (&addrMsg);
+ zmq::message_t addrMsg;
+ int rc = zmq_msg_recv(addrMsg.handle(), _monitor_socket.handle(), 0);
+ if (rc == -1 && zmq_errno() == ETERM) {
+ return false;
+ }
+
+ assert(rc != -1);
+ std::string address = addrMsg.to_string();
#else
- // Bit of a hack, but all events in the zmq_event_t union have the same layout so this will work for all event types.
- std::string address = event->data.connected.addr;
+ // Bit of a hack, but all events in the zmq_event_t union have the same layout so this will work for all event types.
+ std::string address = event->data.connected.addr;
#endif
#ifdef ZMQ_EVENT_MONITOR_STOPPED
- if (event->event == ZMQ_EVENT_MONITOR_STOPPED)
- break;
-#endif
-
- switch (event->event) {
- case ZMQ_EVENT_CONNECTED:
- on_event_connected(*event, address.c_str());
- break;
- case ZMQ_EVENT_CONNECT_DELAYED:
- on_event_connect_delayed(*event, address.c_str());
- break;
- case ZMQ_EVENT_CONNECT_RETRIED:
- on_event_connect_retried(*event, address.c_str());
- break;
- case ZMQ_EVENT_LISTENING:
- on_event_listening(*event, address.c_str());
- break;
- case ZMQ_EVENT_BIND_FAILED:
- on_event_bind_failed(*event, address.c_str());
- break;
- case ZMQ_EVENT_ACCEPTED:
- on_event_accepted(*event, address.c_str());
- break;
- case ZMQ_EVENT_ACCEPT_FAILED:
- on_event_accept_failed(*event, address.c_str());
- break;
- case ZMQ_EVENT_CLOSED:
- on_event_closed(*event, address.c_str());
- break;
- case ZMQ_EVENT_CLOSE_FAILED:
- on_event_close_failed(*event, address.c_str());
- break;
- case ZMQ_EVENT_DISCONNECTED:
- on_event_disconnected(*event, address.c_str());
- break;
- default:
- on_event_unknown(*event, address.c_str());
- break;
- }
- zmq_msg_close (&eventMsg);
- }
- zmq_close (s);
- socketPtr = NULL;
+ if (event->event == ZMQ_EVENT_MONITOR_STOPPED) {
+ return false;
+ }
+
+#endif
+
+ switch (event->event) {
+ case ZMQ_EVENT_CONNECTED:
+ on_event_connected(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_CONNECT_DELAYED:
+ on_event_connect_delayed(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_CONNECT_RETRIED:
+ on_event_connect_retried(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_LISTENING:
+ on_event_listening(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_BIND_FAILED:
+ on_event_bind_failed(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_ACCEPTED:
+ on_event_accepted(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_ACCEPT_FAILED:
+ on_event_accept_failed(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_CLOSED:
+ on_event_closed(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_CLOSE_FAILED:
+ on_event_close_failed(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_DISCONNECTED:
+ on_event_disconnected(*event, address.c_str());
+ break;
+#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 3, 0) || (defined(ZMQ_BUILD_DRAFT_API) && ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 3))
+ case ZMQ_EVENT_HANDSHAKE_FAILED_NO_DETAIL:
+ on_event_handshake_failed_no_detail(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_HANDSHAKE_FAILED_PROTOCOL:
+ on_event_handshake_failed_protocol(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_HANDSHAKE_FAILED_AUTH:
+ on_event_handshake_failed_auth(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_HANDSHAKE_SUCCEEDED:
+ on_event_handshake_succeeded(*event, address.c_str());
+ break;
+#elif defined(ZMQ_BUILD_DRAFT_API) && ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 1)
+ case ZMQ_EVENT_HANDSHAKE_FAILED:
+ on_event_handshake_failed(*event, address.c_str());
+ break;
+ case ZMQ_EVENT_HANDSHAKE_SUCCEED:
+ on_event_handshake_succeed(*event, address.c_str());
+ break;
+#endif
+ default:
+ on_event_unknown(*event, address.c_str());
+ break;
}
+ return true;
+ }
+
#ifdef ZMQ_EVENT_MONITOR_STOPPED
- void abort()
- {
- if (socketPtr)
- zmq_socket_monitor(socketPtr, NULL, 0);
+ void abort()
+ {
+ if (_socket)
+ zmq_socket_monitor(_socket.handle(), ZMQ_NULLPTR, 0);
+
+ _socket = socket_ref();
+ }
+#endif
+ virtual void on_monitor_started() {}
+ virtual void on_event_connected(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_connect_delayed(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_connect_retried(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_listening(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_bind_failed(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_accepted(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_accept_failed(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_closed(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_close_failed(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_disconnected(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 3)
+ virtual void on_event_handshake_failed_no_detail(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_handshake_failed_protocol(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_handshake_failed_auth(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_handshake_succeeded(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+#elif ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 1)
+ virtual void on_event_handshake_failed(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+ virtual void on_event_handshake_succeed(const zmq_event_t &event_,
+ const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+#endif
+ virtual void on_event_unknown(const zmq_event_t &event_, const char *addr_)
+ {
+ (void) event_;
+ (void) addr_;
+ }
+
+ private:
+ monitor_t(const monitor_t &) ZMQ_DELETED_FUNCTION;
+ void operator=(const monitor_t &) ZMQ_DELETED_FUNCTION;
+
+ socket_ref _socket;
+ socket_t _monitor_socket;
+
+ void close() ZMQ_NOTHROW
+ {
+ if (_socket)
+ zmq_socket_monitor(_socket.handle(), ZMQ_NULLPTR, 0);
+ _monitor_socket.close();
+ }
+};
+
+#if defined(ZMQ_BUILD_DRAFT_API) && defined(ZMQ_CPP11) && defined(ZMQ_HAVE_POLLER)
+
+// polling events
+enum class event_flags : short
+{
+ none = 0,
+ pollin = ZMQ_POLLIN,
+ pollout = ZMQ_POLLOUT,
+ pollerr = ZMQ_POLLERR,
+ pollpri = ZMQ_POLLPRI
+};
+
+constexpr event_flags operator|(event_flags a, event_flags b) noexcept
+{
+ return detail::enum_bit_or(a, b);
+}
+constexpr event_flags operator&(event_flags a, event_flags b) noexcept
+{
+ return detail::enum_bit_and(a, b);
+}
+constexpr event_flags operator^(event_flags a, event_flags b) noexcept
+{
+ return detail::enum_bit_xor(a, b);
+}
+constexpr event_flags operator~(event_flags a) noexcept
+{
+ return detail::enum_bit_not(a);
+}
+
+struct no_user_data;
+
+// layout compatible with zmq_poller_event_t
+template<class T = no_user_data> struct poller_event
+{
+ socket_ref socket;
+ ::zmq::fd_t fd;
+ T *user_data;
+ event_flags events;
+};
+
+template<typename T = no_user_data> class poller_t
+{
+ public:
+ using event_type = poller_event<T>;
+
+ poller_t() : poller_ptr(zmq_poller_new())
+ {
+ if (!poller_ptr)
+ throw error_t();
+ }
+
+ template<
+ typename Dummy = void,
+ typename =
+ typename std::enable_if<!std::is_same<T, no_user_data>::value, Dummy>::type>
+ void add(zmq::socket_ref socket, event_flags events, T *user_data)
+ {
+ add_impl(socket, events, user_data);
+ }
+
+ void add(zmq::socket_ref socket, event_flags events)
+ {
+ add_impl(socket, events, nullptr);
+ }
+
+ void remove(zmq::socket_ref socket)
+ {
+ if (0 != zmq_poller_remove(poller_ptr.get(), socket.handle())) {
+ throw error_t();
+ }
+ }
+
+ void modify(zmq::socket_ref socket, event_flags events)
+ {
+ if (0
+ != zmq_poller_modify(poller_ptr.get(), socket.handle(),
+ static_cast<short>(events))) {
+ throw error_t();
}
+ }
+
+ size_t wait_all(std::vector<event_type> &poller_events,
+ const std::chrono::milliseconds timeout)
+ {
+ int rc = zmq_poller_wait_all(
+ poller_ptr.get(),
+ reinterpret_cast<zmq_poller_event_t *>(poller_events.data()),
+ static_cast<int>(poller_events.size()),
+ static_cast<long>(timeout.count()));
+ if (rc > 0)
+ return static_cast<size_t>(rc);
+
+#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 2, 3)
+ if (zmq_errno() == EAGAIN)
+#else
+ if (zmq_errno() == ETIMEDOUT)
+#endif
+ return 0;
+
+ throw error_t();
+ }
+
+#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 3, 3)
+ size_t size() const noexcept
+ {
+ int rc = zmq_poller_size(const_cast<void *>(poller_ptr.get()));
+ ZMQ_ASSERT(rc >= 0);
+ return static_cast<size_t>(std::max(rc, 0));
+ }
#endif
- virtual void on_monitor_started() {}
- virtual void on_event_connected(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_connect_delayed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_connect_retried(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_listening(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_bind_failed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_accepted(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_accept_failed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_closed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_close_failed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_disconnected(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- virtual void on_event_unknown(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; }
- private:
- void* socketPtr;
+
+ private:
+ struct destroy_poller_t
+ {
+ void operator()(void *ptr) noexcept
+ {
+ int rc = zmq_poller_destroy(&ptr);
+ ZMQ_ASSERT(rc == 0);
+ }
};
+
+ std::unique_ptr<void, destroy_poller_t> poller_ptr;
+
+ void add_impl(zmq::socket_ref socket, event_flags events, T *user_data)
+ {
+ if (0
+ != zmq_poller_add(poller_ptr.get(), socket.handle(), user_data,
+ static_cast<short>(events))) {
+ throw error_t();
+ }
+ }
+};
+#endif // defined(ZMQ_BUILD_DRAFT_API) && defined(ZMQ_CPP11) && defined(ZMQ_HAVE_POLLER)
+
+inline std::ostream &operator<<(std::ostream &os, const message_t &msg)
+{
+ return os << msg.str();
}
-#endif
+} // namespace zmq
+
+#endif // __ZMQ_HPP_INCLUDED__
diff --git a/meta-pkgs/gnuradio/Makefile b/meta-pkgs/gnuradio/Makefile
index c7685df25b2..5753cb61bc2 100644
--- a/meta-pkgs/gnuradio/Makefile
+++ b/meta-pkgs/gnuradio/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.24 2021/06/27 08:14:45 tnn Exp $
+# $NetBSD: Makefile,v 1.25 2022/01/16 18:06:28 tnn Exp $
META_PACKAGE= yes
@@ -23,6 +23,7 @@ DEPENDS+= gnuradio-digital-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-digital
DEPENDS+= gnuradio-doxygen-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-doxygen
DEPENDS+= gnuradio-dtv-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-dtv
DEPENDS+= gnuradio-fec-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-fec
+DEPENDS+= gnuradio-pdu-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-pdu
DEPENDS+= gnuradio-qtgui-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-qtgui
DEPENDS+= gnuradio-soapy-sdr-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-soapy-sdr
DEPENDS+= gnuradio-trellis-${VERSION}{,nb[0-9]*}:../../ham/gnuradio-trellis