summaryrefslogtreecommitdiff
path: root/gr-fec
diff options
context:
space:
mode:
authorTom Rondeau <tom@trondeau.com>2014-05-17 10:31:27 -0400
committerTom Rondeau <tom@trondeau.com>2014-05-17 17:45:17 -0400
commit3245fde378417687db10f7cdeb274c9fa126d4e8 (patch)
tree8b2fe865e74eff60de112e8128d34c3c81c229bc /gr-fec
parent15ef5ba664896481faba85c39dc3539f5a4ee5aa (diff)
blocks: adding reverse packing/unpacking functions.
Diffstat (limited to 'gr-fec')
-rw-r--r--gr-fec/examples/CMakeLists.txt3
-rw-r--r--gr-fec/examples/fecapi_async_decoders.grc1746
-rw-r--r--gr-fec/examples/fecapi_async_encoders.grc1587
-rw-r--r--gr-fec/examples/fecapi_async_to_stream.grc1742
-rw-r--r--gr-fec/examples/fecapi_decoders.grc1270
-rw-r--r--gr-fec/examples/fecapi_encoders.grc601
-rw-r--r--gr-fec/examples/fecapi_tagged_decoders.grc946
-rw-r--r--gr-fec/examples/fecapi_tagged_encoders.grc1089
-rw-r--r--gr-fec/grc/fec_async_encoder.xml34
-rw-r--r--gr-fec/grc/fec_block_tree.xml2
-rw-r--r--gr-fec/grc/fec_extended_decoder.xml9
-rw-r--r--gr-fec/grc/fec_extended_encoder.xml9
-rw-r--r--gr-fec/grc/fec_extended_tagged_decoder.xml58
-rw-r--r--gr-fec/grc/fec_extended_tagged_encoder.xml43
-rw-r--r--gr-fec/grc/variable_cc_decoder_def_list.xml10
-rw-r--r--gr-fec/grc/variable_cc_encoder_def_list.xml10
-rw-r--r--gr-fec/grc/variable_ccsds_encoder_def_list.xml10
-rw-r--r--gr-fec/grc/variable_dummy_encoder_def_list.xml2
-rw-r--r--gr-fec/grc/variable_repetition_encoder_def_list.xml4
-rw-r--r--gr-fec/include/gnuradio/fec/async_encoder.h5
-rw-r--r--gr-fec/lib/async_encoder_impl.cc35
-rw-r--r--gr-fec/lib/async_encoder_impl.h5
-rw-r--r--gr-fec/lib/cc_decoder_impl.cc7
-rw-r--r--gr-fec/python/fec/CMakeLists.txt2
-rw-r--r--gr-fec/python/fec/__init__.py2
-rw-r--r--gr-fec/python/fec/extended_decoder.py38
-rw-r--r--gr-fec/python/fec/extended_encoder.py33
-rw-r--r--gr-fec/python/fec/extended_tagged_decoder.py175
-rw-r--r--gr-fec/python/fec/extended_tagged_encoder.py82
29 files changed, 7218 insertions, 2341 deletions
diff --git a/gr-fec/examples/CMakeLists.txt b/gr-fec/examples/CMakeLists.txt
index d0cf5e4b84..fa7a3d5440 100644
--- a/gr-fec/examples/CMakeLists.txt
+++ b/gr-fec/examples/CMakeLists.txt
@@ -25,6 +25,9 @@ install(
ber_curve_gen.grc
fecapi_decoders.grc
fecapi_encoders.grc
+ fecapi_async_decoders.grc
+ fecapi_async_encoders.grc
+ fecapi_async_to_stream.grc
fecapi_tagged_decoders.grc
fecapi_tagged_encoders.grc
DESTINATION ${GR_PKG_FEC_EXAMPLES_DIR}
diff --git a/gr-fec/examples/fecapi_async_decoders.grc b/gr-fec/examples/fecapi_async_decoders.grc
new file mode 100644
index 0000000000..2598e84d1d
--- /dev/null
+++ b/gr-fec/examples/fecapi_async_decoders.grc
@@ -0,0 +1,1746 @@
+<?xml version='1.0' encoding='ASCII'?>
+<flow_graph>
+ <timestamp>Sat May 17 11:37:22 2014</timestamp>
+ <block>
+ <key>options</key>
+ <param>
+ <key>id</key>
+ <value>fecapi_async_decoders</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>title</key>
+ <value></value>
+ </param>
+ <param>
+ <key>author</key>
+ <value></value>
+ </param>
+ <param>
+ <key>description</key>
+ <value></value>
+ </param>
+ <param>
+ <key>window_size</key>
+ <value>2000,2000</value>
+ </param>
+ <param>
+ <key>generate_options</key>
+ <value>qt_gui</value>
+ </param>
+ <param>
+ <key>category</key>
+ <value>Custom</value>
+ </param>
+ <param>
+ <key>run_options</key>
+ <value>prompt</value>
+ </param>
+ <param>
+ <key>run</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>max_nouts</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>realtime_scheduling</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 10)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>50000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 73)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>7</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(264, 535)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>[109, 79]</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(308, 600)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>2</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(332, 536)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>parameter</key>
+ <param>
+ <key>id</key>
+ <value>frame_size</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>label</key>
+ <value>Frame Size</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>30</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>intx</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(171, 11)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>parameter</key>
+ <param>
+ <key>id</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>label</key>
+ <value></value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>'11'</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>string</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(282, 11)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_ctrlport_monitor_performance</key>
+ <param>
+ <key>id</key>
+ <value>blocks_ctrlport_monitor_performance_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>en</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(366, 10)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_vector_source_x</key>
+ <param>
+ <key>id</key>
+ <value>blocks_vector_source_x_0_1_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>vector</key>
+ <value>(frame_size/15)*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
+ </param>
+ <param>
+ <key>tags</key>
+ <value>[]</value>
+ </param>
+ <param>
+ <key>repeat</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(61, 140)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_throttle</key>
+ <param>
+ <key>id</key>
+ <value>blocks_throttle_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>samples_per_second</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>ignoretag</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(109, 224)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_stream_to_tagged_stream</key>
+ <param>
+ <key>id</key>
+ <value>blocks_stream_to_tagged_stream_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>packet_len</key>
+ <value>frame_size</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(83, 279)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_tagged_stream_to_pdu</key>
+ <param>
+ <key>id</key>
+ <value>blocks_tagged_stream_to_pdu_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>tag</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(83, 369)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
+ <param>
+ <key>id</key>
+ <value>blocks_char_to_float_0_1</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(707, 188)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>digital_crc32_async_bb</key>
+ <param>
+ <key>id</key>
+ <value>digital_crc32_async_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>check</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(101, 441)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>analog_random_source_x</key>
+ <param>
+ <key>id</key>
+ <value>analog_random_source_x_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>min</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>max</key>
+ <value>256</value>
+ </param>
+ <param>
+ <key>num_samps</key>
+ <value>1000</value>
+ </param>
+ <param>
+ <key>repeat</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(50, 502)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_repetition_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_rep</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>4</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>rep</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(781, 538)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_dummy_decoder_def</key>
+ <param>
+ <key>id</key>
+ <value>dec_dummy</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(598, 636)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_repetition_decoder_def</key>
+ <param>
+ <key>id</key>
+ <value>dec_rep</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>rep</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>prob</key>
+ <value>0.5</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(781, 651)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_dummy_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_dummy</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(599, 538)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>digital_map_bb</key>
+ <param>
+ <key>id</key>
+ <value>digital_map_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>map</key>
+ <value>[-1,1]</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(713, 279)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_repack_bits_bb</key>
+ <param>
+ <key>id</key>
+ <value>blocks_repack_bits_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>8</value>
+ </param>
+ <param>
+ <key>l</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>align_output</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>swap</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(452, 354)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_pdu_to_tagged_stream</key>
+ <param>
+ <key>id</key>
+ <value>blocks_pdu_to_tagged_stream_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>tag</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(400, 252)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_repack_bits_bb</key>
+ <param>
+ <key>id</key>
+ <value>blocks_repack_bits_bb_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>l</key>
+ <value>8</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>align_output</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>swap</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(925, 309)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
+ <param>
+ <key>id</key>
+ <value>blocks_char_to_float_0_0_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1200, 191)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>digital_crc32_bb</key>
+ <param>
+ <key>id</key>
+ <value>digital_crc32_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>check</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>lengthtagname</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1214, 332)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>qtgui_time_sink_x</key>
+ <param>
+ <key>id</key>
+ <value>qtgui_time_sink_x_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>float</value>
+ </param>
+ <param>
+ <key>name</key>
+ <value>QT GUI Plot</value>
+ </param>
+ <param>
+ <key>size</key>
+ <value>512</value>
+ </param>
+ <param>
+ <key>srate</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>autoscale</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>ymin</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>ymax</key>
+ <value>140</value>
+ </param>
+ <param>
+ <key>nconnections</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>update_time</key>
+ <value>0.01</value>
+ </param>
+ <param>
+ <key>entags</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>gui_hint</key>
+ <value></value>
+ </param>
+ <param>
+ <key>tr_mode</key>
+ <value>qtgui.TRIG_MODE_FREE</value>
+ </param>
+ <param>
+ <key>tr_slope</key>
+ <value>qtgui.TRIG_SLOPE_POS</value>
+ </param>
+ <param>
+ <key>tr_level</key>
+ <value>0.0</value>
+ </param>
+ <param>
+ <key>tr_delay</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>tr_chan</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>tr_tag</key>
+ <value>""</value>
+ </param>
+ <param>
+ <key>label1</key>
+ <value>Input</value>
+ </param>
+ <param>
+ <key>width1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color1</key>
+ <value>"blue"</value>
+ </param>
+ <param>
+ <key>style1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker1</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha1</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label2</key>
+ <value>Dummy</value>
+ </param>
+ <param>
+ <key>width2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color2</key>
+ <value>"red"</value>
+ </param>
+ <param>
+ <key>style2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker2</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha2</key>
+ <value>0.6</value>
+ </param>
+ <param>
+ <key>label3</key>
+ <value>Rep. (Rate=3)</value>
+ </param>
+ <param>
+ <key>width3</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color3</key>
+ <value>"green"</value>
+ </param>
+ <param>
+ <key>style3</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker3</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha3</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label4</key>
+ <value>CC (K=7, Rate=2)</value>
+ </param>
+ <param>
+ <key>width4</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color4</key>
+ <value>"black"</value>
+ </param>
+ <param>
+ <key>style4</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker4</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha4</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label5</key>
+ <value>CCSDS</value>
+ </param>
+ <param>
+ <key>width5</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color5</key>
+ <value>"cyan"</value>
+ </param>
+ <param>
+ <key>style5</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker5</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha5</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label6</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width6</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color6</key>
+ <value>"magenta"</value>
+ </param>
+ <param>
+ <key>style6</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker6</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha6</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label7</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width7</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color7</key>
+ <value>"yellow"</value>
+ </param>
+ <param>
+ <key>style7</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker7</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha7</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label8</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width8</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color8</key>
+ <value>"dark red"</value>
+ </param>
+ <param>
+ <key>style8</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker8</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha8</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label9</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width9</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color9</key>
+ <value>"dark green"</value>
+ </param>
+ <param>
+ <key>style9</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker9</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha9</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label10</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width10</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color10</key>
+ <value>"blue"</value>
+ </param>
+ <param>
+ <key>style10</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker10</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha10</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1364, 167)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>fec_async_encoder</key>
+ <param>
+ <key>id</key>
+ <value>fec_async_encoder_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>encoder</key>
+ <value>enc_cc</value>
+ </param>
+ <param>
+ <key>rev_unpack</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>rev_pack</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(429, 148)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>fec_extended_decoder</key>
+ <param>
+ <key>id</key>
+ <value>fec_extended_decoder_0_1_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>fec_extended_decoder</value>
+ </param>
+ <param>
+ <key>decoder_list</key>
+ <value>dec_cc</value>
+ </param>
+ <param>
+ <key>threadtype</key>
+ <value>none</value>
+ </param>
+ <param>
+ <key>ann</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>puncpat</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>lentagname</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(883, 156)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_cc_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_cc</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_TAILBITING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(401, 510)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_cc_decoder_def</key>
+ <param>
+ <key>id</key>
+ <value>dec_cc</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>4</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>state_end</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_TAILBITING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(400, 668)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <connection>
+ <source_block_id>blocks_vector_source_x_0_1_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>analog_random_source_x_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_throttle_0</source_block_id>
+ <sink_block_id>blocks_stream_to_tagged_stream_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_tagged_stream_to_pdu_0</source_block_id>
+ <sink_block_id>digital_crc32_async_bb_0</sink_block_id>
+ <source_key>pdus</source_key>
+ <sink_key>in</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>digital_crc32_async_bb_0</source_block_id>
+ <sink_block_id>fec_async_encoder_0</sink_block_id>
+ <source_key>out</source_key>
+ <sink_key>in</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>fec_async_encoder_0</source_block_id>
+ <sink_block_id>blocks_pdu_to_tagged_stream_0</sink_block_id>
+ <source_key>out</source_key>
+ <sink_key>pdus</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_stream_to_tagged_stream_0_0</source_block_id>
+ <sink_block_id>blocks_tagged_stream_to_pdu_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_char_to_float_0_0_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>digital_crc32_bb_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_0_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0_0</source_block_id>
+ <sink_block_id>digital_crc32_bb_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_pdu_to_tagged_stream_0</source_block_id>
+ <sink_block_id>blocks_repack_bits_bb_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0</source_block_id>
+ <sink_block_id>digital_map_bb_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>digital_map_bb_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_1</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>fec_extended_decoder_0_1_0</source_block_id>
+ <sink_block_id>blocks_repack_bits_bb_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_char_to_float_0_1</source_block_id>
+ <sink_block_id>fec_extended_decoder_0_1_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_0_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+</flow_graph>
diff --git a/gr-fec/examples/fecapi_async_encoders.grc b/gr-fec/examples/fecapi_async_encoders.grc
new file mode 100644
index 0000000000..445c0cc84a
--- /dev/null
+++ b/gr-fec/examples/fecapi_async_encoders.grc
@@ -0,0 +1,1587 @@
+<?xml version='1.0' encoding='ASCII'?>
+<flow_graph>
+ <timestamp>Sat May 17 17:21:35 2014</timestamp>
+ <block>
+ <key>options</key>
+ <param>
+ <key>id</key>
+ <value>fecapi_async_encoders</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>title</key>
+ <value></value>
+ </param>
+ <param>
+ <key>author</key>
+ <value></value>
+ </param>
+ <param>
+ <key>description</key>
+ <value></value>
+ </param>
+ <param>
+ <key>window_size</key>
+ <value>2000,2000</value>
+ </param>
+ <param>
+ <key>generate_options</key>
+ <value>qt_gui</value>
+ </param>
+ <param>
+ <key>category</key>
+ <value>Custom</value>
+ </param>
+ <param>
+ <key>run_options</key>
+ <value>prompt</value>
+ </param>
+ <param>
+ <key>run</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>max_nouts</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>realtime_scheduling</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 10)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>2</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(421, 102)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>[109, 79]</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(396, 166)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>7</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(354, 102)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>50000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 73)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>parameter</key>
+ <param>
+ <key>id</key>
+ <value>frame_size</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>label</key>
+ <value>Frame Size</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>30</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>intx</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(171, 11)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>parameter</key>
+ <param>
+ <key>id</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>label</key>
+ <value></value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>'11'</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>string</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(282, 11)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_ctrlport_monitor_performance</key>
+ <param>
+ <key>id</key>
+ <value>blocks_ctrlport_monitor_performance_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>en</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(366, 10)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_vector_source_x</key>
+ <param>
+ <key>id</key>
+ <value>blocks_vector_source_x_0_1_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>vector</key>
+ <value>(frame_size/15)*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
+ </param>
+ <param>
+ <key>tags</key>
+ <value>[]</value>
+ </param>
+ <param>
+ <key>repeat</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(61, 140)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_repack_bits_bb</key>
+ <param>
+ <key>id</key>
+ <value>blocks_repack_bits_bb_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>8</value>
+ </param>
+ <param>
+ <key>l</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>align_output</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>swap</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(374, 368)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_pdu_to_tagged_stream</key>
+ <param>
+ <key>id</key>
+ <value>blocks_pdu_to_tagged_stream_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>tag</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(577, 297)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
+ <param>
+ <key>id</key>
+ <value>blocks_char_to_float_0_1</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1027, 297)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>qtgui_time_sink_x</key>
+ <param>
+ <key>id</key>
+ <value>qtgui_time_sink_x_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>float</value>
+ </param>
+ <param>
+ <key>name</key>
+ <value>QT GUI Plot</value>
+ </param>
+ <param>
+ <key>size</key>
+ <value>2048</value>
+ </param>
+ <param>
+ <key>srate</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>autoscale</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>ymin</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>ymax</key>
+ <value>2</value>
+ </param>
+ <param>
+ <key>nconnections</key>
+ <value>2</value>
+ </param>
+ <param>
+ <key>update_time</key>
+ <value>0.01</value>
+ </param>
+ <param>
+ <key>entags</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>gui_hint</key>
+ <value></value>
+ </param>
+ <param>
+ <key>tr_mode</key>
+ <value>qtgui.TRIG_MODE_FREE</value>
+ </param>
+ <param>
+ <key>tr_slope</key>
+ <value>qtgui.TRIG_SLOPE_POS</value>
+ </param>
+ <param>
+ <key>tr_level</key>
+ <value>0.0</value>
+ </param>
+ <param>
+ <key>tr_delay</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>tr_chan</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>tr_tag</key>
+ <value>""</value>
+ </param>
+ <param>
+ <key>label1</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color1</key>
+ <value>"blue"</value>
+ </param>
+ <param>
+ <key>style1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker1</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha1</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label2</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color2</key>
+ <value>"red"</value>
+ </param>
+ <param>
+ <key>style2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker2</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha2</key>
+ <value>0.6</value>
+ </param>
+ <param>
+ <key>label3</key>
+ <value>Rep. (Rate=3)</value>
+ </param>
+ <param>
+ <key>width3</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color3</key>
+ <value>"green"</value>
+ </param>
+ <param>
+ <key>style3</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker3</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha3</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label4</key>
+ <value>CC (K=7, Rate=2)</value>
+ </param>
+ <param>
+ <key>width4</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color4</key>
+ <value>"black"</value>
+ </param>
+ <param>
+ <key>style4</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker4</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha4</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label5</key>
+ <value>CCSDS</value>
+ </param>
+ <param>
+ <key>width5</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color5</key>
+ <value>"cyan"</value>
+ </param>
+ <param>
+ <key>style5</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker5</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha5</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label6</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width6</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color6</key>
+ <value>"magenta"</value>
+ </param>
+ <param>
+ <key>style6</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker6</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha6</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label7</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width7</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color7</key>
+ <value>"yellow"</value>
+ </param>
+ <param>
+ <key>style7</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker7</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha7</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label8</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width8</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color8</key>
+ <value>"dark red"</value>
+ </param>
+ <param>
+ <key>style8</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker8</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha8</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label9</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width9</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color9</key>
+ <value>"dark green"</value>
+ </param>
+ <param>
+ <key>style9</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker9</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha9</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label10</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width10</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color10</key>
+ <value>"blue"</value>
+ </param>
+ <param>
+ <key>style10</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker10</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha10</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1226, 359)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
+ <param>
+ <key>id</key>
+ <value>blocks_char_to_float_1</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(950, 400)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>analog_random_source_x</key>
+ <param>
+ <key>id</key>
+ <value>analog_random_source_x_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>min</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>max</key>
+ <value>256</value>
+ </param>
+ <param>
+ <key>num_samps</key>
+ <value>1000</value>
+ </param>
+ <param>
+ <key>repeat</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(43, 436)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_repack_bits_bb</key>
+ <param>
+ <key>id</key>
+ <value>blocks_repack_bits_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>8</value>
+ </param>
+ <param>
+ <key>l</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>align_output</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>swap</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(803, 265)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_throttle</key>
+ <param>
+ <key>id</key>
+ <value>blocks_throttle_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>samples_per_second</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>ignoretag</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(57, 219)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_stream_to_tagged_stream</key>
+ <param>
+ <key>id</key>
+ <value>blocks_stream_to_tagged_stream_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>packet_len</key>
+ <value>frame_size</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(58, 273)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_tagged_stream_to_pdu</key>
+ <param>
+ <key>id</key>
+ <value>blocks_tagged_stream_to_pdu_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>tag</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(100, 345)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>fec_async_encoder</key>
+ <param>
+ <key>id</key>
+ <value>fec_async_encoder_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>encoder</key>
+ <value>enc_cc</value>
+ </param>
+ <param>
+ <key>rev_unpack</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>rev_pack</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(371, 281)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>fec_extended_tagged_encoder</key>
+ <param>
+ <key>id</key>
+ <value>fec_extended_tagged_encoder_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>encoder_list</key>
+ <value>enc_cc</value>
+ </param>
+ <param>
+ <key>puncpat</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>lentagname</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(588, 384)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_cc_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_cc_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_STREAMING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(378, 490)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_dummy_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_dummy_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(575, 490)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_repetition_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_rep_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>rep</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(575, 570)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_repetition_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_rep</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>rep</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(686, 148)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_cc_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_cc</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_STREAMING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(489, 69)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_dummy_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_dummy</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(686, 69)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <connection>
+ <source_block_id>blocks_vector_source_x_0_1_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>analog_random_source_x_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_throttle_0</source_block_id>
+ <sink_block_id>blocks_stream_to_tagged_stream_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_stream_to_tagged_stream_0_0</source_block_id>
+ <sink_block_id>blocks_tagged_stream_to_pdu_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_1</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_tagged_stream_to_pdu_0</source_block_id>
+ <sink_block_id>fec_async_encoder_0</sink_block_id>
+ <source_key>pdus</source_key>
+ <sink_key>in</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_char_to_float_0_1</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_stream_to_tagged_stream_0_0</source_block_id>
+ <sink_block_id>blocks_repack_bits_bb_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_pdu_to_tagged_stream_0</source_block_id>
+ <sink_block_id>blocks_repack_bits_bb_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0_0</source_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>fec_extended_tagged_encoder_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_1</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_char_to_float_1</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>1</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>fec_async_encoder_0</source_block_id>
+ <sink_block_id>blocks_pdu_to_tagged_stream_0</sink_block_id>
+ <source_key>out</source_key>
+ <sink_key>pdus</sink_key>
+ </connection>
+</flow_graph>
diff --git a/gr-fec/examples/fecapi_async_to_stream.grc b/gr-fec/examples/fecapi_async_to_stream.grc
new file mode 100644
index 0000000000..417df878d8
--- /dev/null
+++ b/gr-fec/examples/fecapi_async_to_stream.grc
@@ -0,0 +1,1742 @@
+<?xml version='1.0' encoding='ASCII'?>
+<flow_graph>
+ <timestamp>Sat May 17 16:48:27 2014</timestamp>
+ <block>
+ <key>options</key>
+ <param>
+ <key>id</key>
+ <value>fecapi_async_decoders</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>title</key>
+ <value></value>
+ </param>
+ <param>
+ <key>author</key>
+ <value></value>
+ </param>
+ <param>
+ <key>description</key>
+ <value></value>
+ </param>
+ <param>
+ <key>window_size</key>
+ <value>2000,2000</value>
+ </param>
+ <param>
+ <key>generate_options</key>
+ <value>qt_gui</value>
+ </param>
+ <param>
+ <key>category</key>
+ <value>Custom</value>
+ </param>
+ <param>
+ <key>run_options</key>
+ <value>prompt</value>
+ </param>
+ <param>
+ <key>run</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>max_nouts</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>realtime_scheduling</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 10)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>50000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(10, 73)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>7</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(264, 535)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>[109, 79]</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(308, 600)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable</key>
+ <param>
+ <key>id</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>2</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(332, 536)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>parameter</key>
+ <param>
+ <key>id</key>
+ <value>frame_size</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>label</key>
+ <value>Frame Size</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>30</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>intx</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(171, 11)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>parameter</key>
+ <param>
+ <key>id</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>label</key>
+ <value></value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>'11'</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>string</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(282, 11)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_ctrlport_monitor_performance</key>
+ <param>
+ <key>id</key>
+ <value>blocks_ctrlport_monitor_performance_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>en</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(366, 10)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_vector_source_x</key>
+ <param>
+ <key>id</key>
+ <value>blocks_vector_source_x_0_1_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>vector</key>
+ <value>(frame_size/15)*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
+ </param>
+ <param>
+ <key>tags</key>
+ <value>[]</value>
+ </param>
+ <param>
+ <key>repeat</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(61, 140)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_throttle</key>
+ <param>
+ <key>id</key>
+ <value>blocks_throttle_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>samples_per_second</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>ignoretag</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(109, 224)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_stream_to_tagged_stream</key>
+ <param>
+ <key>id</key>
+ <value>blocks_stream_to_tagged_stream_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>packet_len</key>
+ <value>frame_size</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(83, 279)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_tagged_stream_to_pdu</key>
+ <param>
+ <key>id</key>
+ <value>blocks_tagged_stream_to_pdu_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>tag</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(83, 369)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>digital_crc32_async_bb</key>
+ <param>
+ <key>id</key>
+ <value>digital_crc32_async_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>check</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(101, 441)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>analog_random_source_x</key>
+ <param>
+ <key>id</key>
+ <value>analog_random_source_x_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>min</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>max</key>
+ <value>256</value>
+ </param>
+ <param>
+ <key>num_samps</key>
+ <value>1000</value>
+ </param>
+ <param>
+ <key>repeat</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(50, 502)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>180</value>
+ </param>
+ </block>
+ <block>
+ <key>digital_map_bb</key>
+ <param>
+ <key>id</key>
+ <value>digital_map_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>map</key>
+ <value>[-1,1]</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(713, 279)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_repack_bits_bb</key>
+ <param>
+ <key>id</key>
+ <value>blocks_repack_bits_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>8</value>
+ </param>
+ <param>
+ <key>l</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>align_output</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>swap</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(452, 354)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_pdu_to_tagged_stream</key>
+ <param>
+ <key>id</key>
+ <value>blocks_pdu_to_tagged_stream_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>tag</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(400, 252)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
+ <param>
+ <key>id</key>
+ <value>blocks_char_to_float_0_0_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1200, 191)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>digital_crc32_bb</key>
+ <param>
+ <key>id</key>
+ <value>digital_crc32_bb_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>check</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>lengthtagname</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1214, 332)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>qtgui_time_sink_x</key>
+ <param>
+ <key>id</key>
+ <value>qtgui_time_sink_x_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>float</value>
+ </param>
+ <param>
+ <key>name</key>
+ <value>QT GUI Plot</value>
+ </param>
+ <param>
+ <key>size</key>
+ <value>512</value>
+ </param>
+ <param>
+ <key>srate</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>autoscale</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>ymin</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>ymax</key>
+ <value>140</value>
+ </param>
+ <param>
+ <key>nconnections</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>update_time</key>
+ <value>0.01</value>
+ </param>
+ <param>
+ <key>entags</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>gui_hint</key>
+ <value></value>
+ </param>
+ <param>
+ <key>tr_mode</key>
+ <value>qtgui.TRIG_MODE_FREE</value>
+ </param>
+ <param>
+ <key>tr_slope</key>
+ <value>qtgui.TRIG_SLOPE_POS</value>
+ </param>
+ <param>
+ <key>tr_level</key>
+ <value>0.0</value>
+ </param>
+ <param>
+ <key>tr_delay</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>tr_chan</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>tr_tag</key>
+ <value>""</value>
+ </param>
+ <param>
+ <key>label1</key>
+ <value>Input</value>
+ </param>
+ <param>
+ <key>width1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color1</key>
+ <value>"blue"</value>
+ </param>
+ <param>
+ <key>style1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker1</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha1</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label2</key>
+ <value>Dummy</value>
+ </param>
+ <param>
+ <key>width2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color2</key>
+ <value>"red"</value>
+ </param>
+ <param>
+ <key>style2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker2</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha2</key>
+ <value>0.6</value>
+ </param>
+ <param>
+ <key>label3</key>
+ <value>Rep. (Rate=3)</value>
+ </param>
+ <param>
+ <key>width3</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color3</key>
+ <value>"green"</value>
+ </param>
+ <param>
+ <key>style3</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker3</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha3</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label4</key>
+ <value>CC (K=7, Rate=2)</value>
+ </param>
+ <param>
+ <key>width4</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color4</key>
+ <value>"black"</value>
+ </param>
+ <param>
+ <key>style4</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker4</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha4</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label5</key>
+ <value>CCSDS</value>
+ </param>
+ <param>
+ <key>width5</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color5</key>
+ <value>"cyan"</value>
+ </param>
+ <param>
+ <key>style5</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker5</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha5</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label6</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width6</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color6</key>
+ <value>"magenta"</value>
+ </param>
+ <param>
+ <key>style6</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker6</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha6</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label7</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width7</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color7</key>
+ <value>"yellow"</value>
+ </param>
+ <param>
+ <key>style7</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker7</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha7</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label8</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width8</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color8</key>
+ <value>"dark red"</value>
+ </param>
+ <param>
+ <key>style8</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker8</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha8</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label9</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width9</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color9</key>
+ <value>"dark green"</value>
+ </param>
+ <param>
+ <key>style9</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker9</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha9</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label10</key>
+ <value></value>
+ </param>
+ <param>
+ <key>width10</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>color10</key>
+ <value>"blue"</value>
+ </param>
+ <param>
+ <key>style10</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>marker10</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha10</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1364, 167)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>fec_async_encoder</key>
+ <param>
+ <key>id</key>
+ <value>fec_async_encoder_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>encoder</key>
+ <value>enc_cc</value>
+ </param>
+ <param>
+ <key>rev_unpack</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>rev_pack</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(429, 148)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_cc_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_cc</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_TAILBITING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(401, 510)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_dummy_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_dummy</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(598, 509)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_dummy_decoder_def</key>
+ <param>
+ <key>id</key>
+ <value>dec_dummy</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(598, 588)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_repetition_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_rep</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>4</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>rep</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(780, 509)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_repetition_decoder_def</key>
+ <param>
+ <key>id</key>
+ <value>dec_rep</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>rep</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>prob</key>
+ <value>0.5</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(782, 603)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_cc_decoder_def</key>
+ <param>
+ <key>id</key>
+ <value>dec_cc</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>4</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>8000</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>state_end</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_TAILBITING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(400, 668)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
+ <param>
+ <key>id</key>
+ <value>blocks_char_to_float_0_1</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(707, 188)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_repack_bits_bb</key>
+ <param>
+ <key>id</key>
+ <value>blocks_repack_bits_bb_0_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>l</key>
+ <value>8</value>
+ </param>
+ <param>
+ <key>len_tag_key</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>align_output</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>swap</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(925, 309)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>fec_extended_tagged_decoder</key>
+ <param>
+ <key>id</key>
+ <value>fec_extended_tagged_decoder_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>fec_extended_decoder</value>
+ </param>
+ <param>
+ <key>decoder_list</key>
+ <value>dec_cc</value>
+ </param>
+ <param>
+ <key>ann</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>puncpat</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>lentagname</key>
+ <value>pkt_len</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(875, 164)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <connection>
+ <source_block_id>blocks_vector_source_x_0_1_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>analog_random_source_x_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_throttle_0</source_block_id>
+ <sink_block_id>blocks_stream_to_tagged_stream_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_tagged_stream_to_pdu_0</source_block_id>
+ <sink_block_id>digital_crc32_async_bb_0</sink_block_id>
+ <source_key>pdus</source_key>
+ <sink_key>in</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>digital_crc32_async_bb_0</source_block_id>
+ <sink_block_id>fec_async_encoder_0</sink_block_id>
+ <source_key>out</source_key>
+ <sink_key>in</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>fec_async_encoder_0</source_block_id>
+ <sink_block_id>blocks_pdu_to_tagged_stream_0</sink_block_id>
+ <source_key>out</source_key>
+ <sink_key>pdus</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_stream_to_tagged_stream_0_0</source_block_id>
+ <sink_block_id>blocks_tagged_stream_to_pdu_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_char_to_float_0_0_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>digital_crc32_bb_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_0_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0_0</source_block_id>
+ <sink_block_id>digital_crc32_bb_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_pdu_to_tagged_stream_0</source_block_id>
+ <sink_block_id>blocks_repack_bits_bb_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0</source_block_id>
+ <sink_block_id>digital_map_bb_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>digital_map_bb_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_1</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_repack_bits_bb_0_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_0_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>blocks_char_to_float_0_1</source_block_id>
+ <sink_block_id>fec_extended_tagged_decoder_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+ <connection>
+ <source_block_id>fec_extended_tagged_decoder_0</source_block_id>
+ <sink_block_id>blocks_repack_bits_bb_0_0</sink_block_id>
+ <source_key>0</source_key>
+ <sink_key>0</sink_key>
+ </connection>
+</flow_graph>
diff --git a/gr-fec/examples/fecapi_decoders.grc b/gr-fec/examples/fecapi_decoders.grc
index 403eca017e..46e6064d83 100644
--- a/gr-fec/examples/fecapi_decoders.grc
+++ b/gr-fec/examples/fecapi_decoders.grc
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='ASCII'?>
<flow_graph>
- <timestamp>Tue May 13 17:44:52 2014</timestamp>
+ <timestamp>Sat May 17 16:52:55 2014</timestamp>
<block>
<key>options</key>
<param>
@@ -68,7 +68,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>rate</value>
+ <value>polys</value>
</param>
<param>
<key>_enabled</key>
@@ -76,7 +76,7 @@
</param>
<param>
<key>value</key>
- <value>2</value>
+ <value>[109, 79]</value>
</param>
<param>
<key>alias</key>
@@ -84,7 +84,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(276, 837)</value>
+ <value>(98, 623)</value>
</param>
<param>
<key>_rotation</key>
@@ -95,15 +95,15 @@
<key>variable</key>
<param>
<key>id</key>
- <value>polys</value>
+ <value>rate</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
+ <value>True</value>
</param>
<param>
<key>value</key>
- <value>[79, 109]</value>
+ <value>2</value>
</param>
<param>
<key>alias</key>
@@ -111,7 +111,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(234, 922)</value>
+ <value>(123, 562)</value>
</param>
<param>
<key>_rotation</key>
@@ -138,7 +138,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(175, 840)</value>
+ <value>(58, 562)</value>
</param>
<param>
<key>_rotation</key>
@@ -149,7 +149,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>polys</value>
+ <value>samp_rate</value>
</param>
<param>
<key>_enabled</key>
@@ -157,7 +157,7 @@
</param>
<param>
<key>value</key>
- <value>[109, 79]</value>
+ <value>50000</value>
</param>
<param>
<key>alias</key>
@@ -165,7 +165,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(92, 925)</value>
+ <value>(10, 74)</value>
</param>
<param>
<key>_rotation</key>
@@ -173,18 +173,30 @@
</param>
</block>
<block>
- <key>variable</key>
+ <key>parameter</key>
<param>
<key>id</key>
- <value>samp_rate</value>
+ <value>frame_size</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
+ <key>label</key>
+ <value>Frame Size</value>
+ </param>
+ <param>
<key>value</key>
- <value>50000</value>
+ <value>30</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>intx</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
</param>
<param>
<key>alias</key>
@@ -192,7 +204,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(9, 95)</value>
+ <value>(171, 10)</value>
</param>
<param>
<key>_rotation</key>
@@ -231,7 +243,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(420, 9)</value>
+ <value>(280, 10)</value>
</param>
<param>
<key>_rotation</key>
@@ -239,29 +251,17 @@
</param>
</block>
<block>
- <key>blocks_throttle</key>
+ <key>blocks_ctrlport_monitor_performance</key>
<param>
<key>id</key>
- <value>blocks_throttle_0</value>
+ <value>blocks_ctrlport_monitor_performance_0</value>
</param>
<param>
<key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>samples_per_second</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
+ <value>False</value>
</param>
<param>
- <key>ignoretag</key>
+ <key>en</key>
<value>True</value>
</param>
<param>
@@ -269,20 +269,8 @@
<value></value>
</param>
<param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
<key>_coordinate</key>
- <value>(102, 328)</value>
+ <value>(361, 10)</value>
</param>
<param>
<key>_rotation</key>
@@ -290,73 +278,38 @@
</param>
</block>
<block>
- <key>analog_random_source_x</key>
+ <key>variable_repetition_encoder_def</key>
<param>
<key>id</key>
- <value>analog_random_source_x_0</value>
+ <value>enc_rep</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>min</key>
- <value>0</value>
- </param>
- <param>
- <key>max</key>
- <value>256</value>
- </param>
- <param>
- <key>num_samps</key>
- <value>1000</value>
- </param>
- <param>
- <key>repeat</key>
<value>True</value>
</param>
<param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>ndim</key>
+ <value>1</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(57, 525)</value>
+ <key>dim1</key>
+ <value>4</value>
</param>
<param>
- <key>_rotation</key>
- <value>180</value>
- </param>
- </block>
- <block>
- <key>blocks_ctrlport_monitor_performance</key>
- <param>
- <key>id</key>
- <value>blocks_ctrlport_monitor_performance_0</value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>_enabled</key>
- <value>False</value>
+ <key>framebits</key>
+ <value>frame_size*8</value>
</param>
<param>
- <key>en</key>
- <value>True</value>
+ <key>rep</key>
+ <value>3</value>
</param>
<param>
<key>alias</key>
@@ -364,7 +317,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(557, 17)</value>
+ <value>(553, 562)</value>
</param>
<param>
<key>_rotation</key>
@@ -372,42 +325,42 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>variable_dummy_decoder_def</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_0</value>
+ <value>dec_dummy</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>scale</key>
+ <key>ndim</key>
<value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>framebits</key>
+ <value>frame_size*8</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(942, 584)</value>
+ <value>(370, 656)</value>
</param>
<param>
<key>_rotation</key>
@@ -415,38 +368,42 @@
</param>
</block>
<block>
- <key>digital_map_bb</key>
+ <key>variable_dummy_encoder_def</key>
<param>
<key>id</key>
- <value>digital_map_bb_0_0</value>
+ <value>enc_dummy</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>map</key>
- <value>[-1, 1]</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>ndim</key>
+ <value>1</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>framebits</key>
+ <value>frame_size*8</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(749, 583)</value>
+ <value>(370, 562)</value>
</param>
<param>
<key>_rotation</key>
@@ -454,81 +411,66 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>variable_cc_decoder_def</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_0_2_0</value>
+ <value>dec_cc</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>scale</key>
+ <key>ndim</key>
<value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>dim2</key>
+ <value>4</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>framebits</key>
+ <value>frame_size*8</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>k</key>
+ <value>k</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(942, 292)</value>
+ <key>rate</key>
+ <value>rate</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>polys</key>
+ <value>polys</value>
</param>
- </block>
- <block>
- <key>digital_map_bb</key>
<param>
- <key>id</key>
- <value>digital_map_bb_0_0_0_0</value>
+ <key>state_start</key>
+ <value>0</value>
</param>
<param>
- <key>_enabled</key>
- <value>True</value>
+ <key>state_end</key>
+ <value>-1</value>
</param>
<param>
- <key>map</key>
- <value>[-1, 1]</value>
+ <key>mode</key>
+ <value>fec.CC_TAILBITING</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
<key>_coordinate</key>
- <value>(749, 291)</value>
+ <value>(174, 688)</value>
</param>
<param>
<key>_rotation</key>
@@ -536,38 +478,50 @@
</param>
</block>
<block>
- <key>blocks_unpack_k_bits_bb</key>
+ <key>variable_ccsds_encoder_def</key>
<param>
<key>id</key>
- <value>blocks_unpack_k_bits_bb_0</value>
+ <value>enc_ccsds</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>k</key>
- <value>8</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>ndim</key>
+ <value>1</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>dim2</key>
+ <value>4</value>
</param>
<param>
- <key>maxoutbuf</key>
+ <key>framebits</key>
+ <value>frame_size*8</value>
+ </param>
+ <param>
+ <key>state_start</key>
<value>0</value>
</param>
<param>
+ <key>mode</key>
+ <value>fec.CC_TAILBITING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
<key>_coordinate</key>
- <value>(119, 432)</value>
+ <value>(189, 562)</value>
</param>
<param>
<key>_rotation</key>
@@ -575,32 +529,36 @@
</param>
</block>
<block>
- <key>fec_extended_encoder</key>
+ <key>fec_extended_decoder</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_1_0_0</value>
+ <value>fec_extended_decoder_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>encoder_list</key>
- <value>enc_dummy</value>
+ <key>value</key>
+ <value>fec_extended_decoder</value>
</param>
<param>
- <key>threadtype</key>
- <value>capillary</value>
+ <key>decoder_list</key>
+ <value>dec_cc</value>
</param>
<param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>threadtype</key>
+ <value>none</value>
</param>
<param>
- <key>lentagname</key>
+ <key>ann</key>
<value>None</value>
</param>
<param>
+ <key>puncpat</key>
+ <value>puncpat</value>
+ </param>
+ <param>
<key>alias</key>
<value></value>
</param>
@@ -618,7 +576,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(440, 260)</value>
+ <value>(842, 401)</value>
</param>
<param>
<key>_rotation</key>
@@ -629,7 +587,7 @@
<key>fec_extended_encoder</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_1_0</value>
+ <value>fec_extended_encoder_1</value>
</param>
<param>
<key>_enabled</key>
@@ -637,7 +595,7 @@
</param>
<param>
<key>encoder_list</key>
- <value>enc_rep</value>
+ <value>enc_ccsds</value>
</param>
<param>
<key>threadtype</key>
@@ -648,10 +606,6 @@
<value>puncpat</value>
</param>
<param>
- <key>lentagname</key>
- <value>None</value>
- </param>
- <param>
<key>alias</key>
<value></value>
</param>
@@ -669,7 +623,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(443, 403)</value>
+ <value>(321, 409)</value>
</param>
<param>
<key>_rotation</key>
@@ -680,7 +634,7 @@
<key>digital_map_bb</key>
<param>
<key>id</key>
- <value>digital_map_bb_0_0_0</value>
+ <value>digital_map_bb_0_0</value>
</param>
<param>
<key>_enabled</key>
@@ -708,7 +662,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(750, 434)</value>
+ <value>(545, 425)</value>
</param>
<param>
<key>_rotation</key>
@@ -719,7 +673,7 @@
<key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_0_2</value>
+ <value>blocks_char_to_float_0</value>
</param>
<param>
<key>_enabled</key>
@@ -751,7 +705,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(943, 435)</value>
+ <value>(684, 425)</value>
</param>
<param>
<key>_rotation</key>
@@ -759,38 +713,54 @@
</param>
</block>
<block>
- <key>parameter</key>
+ <key>fec_extended_decoder</key>
<param>
<key>id</key>
- <value>frame_size</value>
+ <value>fec_extended_decoder_0_1_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>label</key>
- <value>Frame Size</value>
+ <key>value</key>
+ <value>fec_extended_decoder</value>
</param>
<param>
- <key>value</key>
- <value>30</value>
+ <key>decoder_list</key>
+ <value>dec_dummy</value>
</param>
<param>
- <key>type</key>
- <value>intx</value>
+ <key>threadtype</key>
+ <value>none</value>
</param>
<param>
- <key>short_id</key>
- <value></value>
+ <key>ann</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
+ <key>affinity</key>
+ <value></value>
+ </param>
+ <param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
<key>_coordinate</key>
- <value>(249, 7)</value>
+ <value>(842, 213)</value>
</param>
<param>
<key>_rotation</key>
@@ -798,40 +768,28 @@
</param>
</block>
<block>
- <key>fec_extended_decoder</key>
+ <key>fec_extended_encoder</key>
<param>
<key>id</key>
- <value>fec_extended_decoder_0_1</value>
+ <value>fec_extended_encoder_1_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>fec_extended_decoder</value>
- </param>
- <param>
- <key>decoder_list</key>
- <value>dec_rep</value>
+ <key>encoder_list</key>
+ <value>enc_dummy</value>
</param>
<param>
<key>threadtype</key>
- <value>none</value>
- </param>
- <param>
- <key>ann</key>
- <value>None</value>
+ <value>capillary</value>
</param>
<param>
<key>puncpat</key>
<value>puncpat</value>
</param>
<param>
- <key>lentagname</key>
- <value>None</value>
- </param>
- <param>
<key>alias</key>
<value></value>
</param>
@@ -849,7 +807,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1162, 393)</value>
+ <value>(321, 221)</value>
</param>
<param>
<key>_rotation</key>
@@ -857,22 +815,18 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>digital_map_bb</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_0_0_0_0</value>
+ <value>digital_map_bb_0_0_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>scale</key>
- <value>1</value>
+ <key>map</key>
+ <value>[-1, 1]</value>
</param>
<param>
<key>alias</key>
@@ -892,7 +846,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1465, 292)</value>
+ <value>(543, 237)</value>
</param>
<param>
<key>_rotation</key>
@@ -900,38 +854,22 @@
</param>
</block>
<block>
- <key>fec_extended_decoder</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>fec_extended_decoder_0_1_0</value>
+ <value>blocks_char_to_float_0_2_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>fec_extended_decoder</value>
- </param>
- <param>
- <key>decoder_list</key>
- <value>dec_dummy</value>
- </param>
- <param>
- <key>threadtype</key>
- <value>none</value>
- </param>
- <param>
- <key>ann</key>
- <value>None</value>
- </param>
- <param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>lentagname</key>
- <value>None</value>
+ <key>scale</key>
+ <value>1</value>
</param>
<param>
<key>alias</key>
@@ -951,7 +889,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1161, 250)</value>
+ <value>(680, 237)</value>
</param>
<param>
<key>_rotation</key>
@@ -962,7 +900,7 @@
<key>fec_extended_decoder</key>
<param>
<key>id</key>
- <value>fec_extended_decoder_0</value>
+ <value>fec_extended_decoder_0_1</value>
</param>
<param>
<key>_enabled</key>
@@ -974,7 +912,7 @@
</param>
<param>
<key>decoder_list</key>
- <value>dec_cc</value>
+ <value>dec_rep</value>
</param>
<param>
<key>threadtype</key>
@@ -989,10 +927,6 @@
<value>puncpat</value>
</param>
<param>
- <key>lentagname</key>
- <value>None</value>
- </param>
- <param>
<key>alias</key>
<value></value>
</param>
@@ -1010,7 +944,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1161, 542)</value>
+ <value>(842, 306)</value>
</param>
<param>
<key>_rotation</key>
@@ -1021,7 +955,7 @@
<key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_0_1</value>
+ <value>blocks_char_to_float_0_2</value>
</param>
<param>
<key>_enabled</key>
@@ -1053,7 +987,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(440, 184)</value>
+ <value>(682, 330)</value>
</param>
<param>
<key>_rotation</key>
@@ -1061,34 +995,18 @@
</param>
</block>
<block>
- <key>blocks_vector_source_x</key>
+ <key>digital_map_bb</key>
<param>
<key>id</key>
- <value>blocks_vector_source_x_0_1_0</value>
+ <value>digital_map_bb_0_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>vector</key>
- <value>(frame_size/15)*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
- </param>
- <param>
- <key>tags</key>
- <value>[]</value>
- </param>
- <param>
- <key>repeat</key>
- <value>True</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
+ <key>map</key>
+ <value>[-1, 1]</value>
</param>
<param>
<key>alias</key>
@@ -1108,58 +1026,54 @@
</param>
<param>
<key>_coordinate</key>
- <value>(59, 200)</value>
+ <value>(545, 330)</value>
</param>
<param>
<key>_rotation</key>
- <value>180</value>
+ <value>0</value>
</param>
</block>
<block>
- <key>variable_ccsds_encoder_def</key>
+ <key>fec_extended_encoder</key>
<param>
<key>id</key>
- <value>enc_ccsds</value>
+ <value>fec_extended_encoder_1_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
+ <key>encoder_list</key>
+ <value>enc_rep</value>
</param>
<param>
- <key>ndim</key>
- <value>1</value>
+ <key>threadtype</key>
+ <value>capillary</value>
</param>
<param>
- <key>dim1</key>
- <value>1</value>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
- <key>dim2</key>
- <value>4</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>framebits</key>
- <value>frame_size*8</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>state_start</key>
+ <key>minoutbuf</key>
<value>0</value>
</param>
<param>
- <key>mode</key>
- <value>fec.CC_STREAMING</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(379, 841)</value>
+ <value>(321, 314)</value>
</param>
<param>
<key>_rotation</key>
@@ -1167,113 +1081,93 @@
</param>
</block>
<block>
- <key>variable_cc_decoder_def</key>
+ <key>blocks_vector_source_x</key>
<param>
<key>id</key>
- <value>dec_cc</value>
+ <value>blocks_vector_source_x_0_1_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
+ <key>type</key>
+ <value>byte</value>
</param>
<param>
- <key>dim1</key>
- <value>1</value>
+ <key>vector</key>
+ <value>(frame_size/15)*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
</param>
<param>
- <key>dim2</key>
- <value>4</value>
+ <key>tags</key>
+ <value>[]</value>
</param>
<param>
- <key>framebits</key>
- <value>frame_size*8</value>
+ <key>repeat</key>
+ <value>True</value>
</param>
<param>
- <key>k</key>
- <value>k</value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>rate</key>
- <value>rate</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>polys</key>
- <value>polys</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>state_start</key>
+ <key>minoutbuf</key>
<value>0</value>
</param>
<param>
- <key>state_end</key>
- <value>-1</value>
- </param>
- <param>
- <key>mode</key>
- <value>fec.CC_STREAMING</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(379, 1010)</value>
+ <value>(56, 139)</value>
</param>
<param>
<key>_rotation</key>
- <value>0</value>
+ <value>180</value>
</param>
</block>
<block>
- <key>variable_repetition_encoder_def</key>
+ <key>blocks_unpack_k_bits_bb</key>
<param>
<key>id</key>
- <value>enc_rep</value>
+ <value>blocks_unpack_k_bits_bb_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>4</value>
+ <key>k</key>
+ <value>8</value>
</param>
<param>
- <key>dim2</key>
- <value>1</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>framebits</key>
- <value>frame_size*8</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>rep</key>
- <value>3</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(936, 841)</value>
+ <value>(116, 371)</value>
</param>
<param>
<key>_rotation</key>
@@ -1281,93 +1175,105 @@
</param>
</block>
<block>
- <key>variable_repetition_decoder_def</key>
+ <key>analog_random_source_x</key>
<param>
<key>id</key>
- <value>dec_rep</value>
+ <value>analog_random_source_x_0</value>
</param>
<param>
<key>_enabled</key>
- <value>True</value>
+ <value>False</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
+ <key>type</key>
+ <value>byte</value>
</param>
<param>
- <key>ndim</key>
- <value>1</value>
+ <key>min</key>
+ <value>0</value>
</param>
<param>
- <key>dim1</key>
- <value>4</value>
+ <key>max</key>
+ <value>256</value>
</param>
<param>
- <key>dim2</key>
- <value>1</value>
+ <key>num_samps</key>
+ <value>1000</value>
</param>
<param>
- <key>framebits</key>
- <value>frame_size*8</value>
+ <key>repeat</key>
+ <value>True</value>
</param>
<param>
- <key>rep</key>
- <value>3</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>prob</key>
- <value>0.5</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(936, 983)</value>
+ <value>(54, 464)</value>
</param>
<param>
<key>_rotation</key>
- <value>0</value>
+ <value>180</value>
</param>
</block>
<block>
- <key>variable_dummy_decoder_def</key>
+ <key>blocks_throttle</key>
<param>
<key>id</key>
- <value>dec_dummy</value>
+ <value>blocks_throttle_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
+ <key>type</key>
+ <value>byte</value>
</param>
<param>
- <key>ndim</key>
- <value>1</value>
+ <key>samples_per_second</key>
+ <value>samp_rate</value>
</param>
<param>
- <key>dim1</key>
+ <key>vlen</key>
<value>1</value>
</param>
<param>
- <key>dim2</key>
- <value>1</value>
+ <key>ignoretag</key>
+ <value>True</value>
</param>
<param>
- <key>framebits</key>
- <value>frame_size*8</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>alias</key>
+ <key>affinity</key>
<value></value>
</param>
<param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
<key>_coordinate</key>
- <value>(670, 968)</value>
+ <value>(99, 267)</value>
</param>
<param>
<key>_rotation</key>
@@ -1375,10 +1281,10 @@
</param>
</block>
<block>
- <key>variable_dummy_encoder_def</key>
+ <key>variable_repetition_decoder_def</key>
<param>
<key>id</key>
- <value>enc_dummy</value>
+ <value>dec_rep</value>
</param>
<param>
<key>_enabled</key>
@@ -1394,7 +1300,7 @@
</param>
<param>
<key>dim1</key>
- <value>1</value>
+ <value>4</value>
</param>
<param>
<key>dim2</key>
@@ -1405,63 +1311,20 @@
<value>frame_size*8</value>
</param>
<param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(672, 842)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>fec_extended_encoder</key>
- <param>
- <key>id</key>
- <value>fec_extended_encoder_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>encoder_list</key>
- <value>enc_ccsds</value>
- </param>
- <param>
- <key>threadtype</key>
- <value>capillary</value>
- </param>
- <param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>rep</key>
+ <value>3</value>
</param>
<param>
- <key>lentagname</key>
- <value>None</value>
+ <key>prob</key>
+ <value>0.5</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
<key>_coordinate</key>
- <value>(441, 552)</value>
+ <value>(553, 674)</value>
</param>
<param>
<key>_rotation</key>
@@ -1504,7 +1367,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1466, 435)</value>
+ <value>(1067, 330)</value>
</param>
<param>
<key>_rotation</key>
@@ -1515,7 +1378,7 @@
<key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_0_0</value>
+ <value>blocks_char_to_float_0_0_0_0</value>
</param>
<param>
<key>_enabled</key>
@@ -1547,7 +1410,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1465, 584)</value>
+ <value>(1064, 237)</value>
</param>
<param>
<key>_rotation</key>
@@ -1555,68 +1418,21 @@
</param>
</block>
<block>
- <key>blocks_sub_xx</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_sub_xx_0</value>
+ <value>blocks_char_to_float_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
<key>vlen</key>
<value>1</value>
</param>
<param>
- <key>num_inputs</key>
- <value>2</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1836, 569)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_abs_xx</key>
- <param>
- <key>id</key>
- <value>blocks_abs_xx_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
- <key>num_inputs</key>
+ <key>scale</key>
<value>1</value>
</param>
<param>
@@ -1637,7 +1453,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1434, 834)</value>
+ <value>(1064, 425)</value>
</param>
<param>
<key>_rotation</key>
@@ -1648,7 +1464,7 @@
<key>qtgui_time_sink_x</key>
<param>
<key>id</key>
- <value>qtgui_time_sink_x_1</value>
+ <value>qtgui_time_sink_x_0</value>
</param>
<param>
<key>_enabled</key>
@@ -1664,7 +1480,7 @@
</param>
<param>
<key>size</key>
- <value>1024</value>
+ <value>2048</value>
</param>
<param>
<key>srate</key>
@@ -1676,15 +1492,15 @@
</param>
<param>
<key>ymin</key>
- <value>-1</value>
+ <value>-0.5</value>
</param>
<param>
<key>ymax</key>
- <value>1</value>
+ <value>1.5</value>
</param>
<param>
<key>nconnections</key>
- <value>1</value>
+ <value>4</value>
</param>
<param>
<key>update_time</key>
@@ -1700,7 +1516,7 @@
</param>
<param>
<key>tr_mode</key>
- <value>qtgui.TRIG_MODE_NORM</value>
+ <value>qtgui.TRIG_MODE_FREE</value>
</param>
<param>
<key>tr_slope</key>
@@ -1708,7 +1524,7 @@
</param>
<param>
<key>tr_level</key>
- <value>0.1</value>
+ <value>0.0</value>
</param>
<param>
<key>tr_delay</key>
@@ -1724,7 +1540,7 @@
</param>
<param>
<key>label1</key>
- <value></value>
+ <value>Input</value>
</param>
<param>
<key>width1</key>
@@ -1748,7 +1564,7 @@
</param>
<param>
<key>label2</key>
- <value></value>
+ <value>Dummy</value>
</param>
<param>
<key>width2</key>
@@ -1768,11 +1584,11 @@
</param>
<param>
<key>alpha2</key>
- <value>1.0</value>
+ <value>0.6</value>
</param>
<param>
<key>label3</key>
- <value></value>
+ <value>Rep. (Rate=3)</value>
</param>
<param>
<key>width3</key>
@@ -1796,7 +1612,7 @@
</param>
<param>
<key>label4</key>
- <value></value>
+ <value>CC (K=7, Rate=2)</value>
</param>
<param>
<key>width4</key>
@@ -1820,7 +1636,7 @@
</param>
<param>
<key>label5</key>
- <value></value>
+ <value>CCSDS</value>
</param>
<param>
<key>width5</key>
@@ -1972,7 +1788,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1587, 793)</value>
+ <value>(1292, 178)</value>
</param>
<param>
<key>_rotation</key>
@@ -1980,334 +1796,42 @@
</param>
</block>
<block>
- <key>qtgui_time_sink_x</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>qtgui_time_sink_x_0</value>
+ <value>blocks_char_to_float_0_1</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
- <key>name</key>
- <value>QT GUI Plot</value>
- </param>
- <param>
- <key>size</key>
- <value>2048</value>
- </param>
- <param>
- <key>srate</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>autoscale</key>
- <value>False</value>
- </param>
- <param>
- <key>ymin</key>
- <value>-0.5</value>
- </param>
- <param>
- <key>ymax</key>
- <value>1.5</value>
- </param>
- <param>
- <key>nconnections</key>
- <value>4</value>
- </param>
- <param>
- <key>update_time</key>
- <value>0.01</value>
- </param>
- <param>
- <key>entags</key>
- <value>True</value>
- </param>
- <param>
- <key>gui_hint</key>
- <value></value>
- </param>
- <param>
- <key>tr_mode</key>
- <value>qtgui.TRIG_MODE_FREE</value>
- </param>
- <param>
- <key>tr_slope</key>
- <value>qtgui.TRIG_SLOPE_POS</value>
- </param>
- <param>
- <key>tr_level</key>
- <value>0.0</value>
- </param>
- <param>
- <key>tr_delay</key>
- <value>0</value>
- </param>
- <param>
- <key>tr_chan</key>
- <value>0</value>
- </param>
- <param>
- <key>tr_tag</key>
- <value>""</value>
- </param>
- <param>
- <key>label1</key>
- <value>Input</value>
- </param>
- <param>
- <key>width1</key>
- <value>1</value>
- </param>
- <param>
- <key>color1</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>style1</key>
- <value>1</value>
- </param>
- <param>
- <key>marker1</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha1</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label2</key>
- <value>Dummy</value>
- </param>
- <param>
- <key>width2</key>
- <value>1</value>
- </param>
- <param>
- <key>color2</key>
- <value>"red"</value>
- </param>
- <param>
- <key>style2</key>
- <value>1</value>
- </param>
- <param>
- <key>marker2</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha2</key>
- <value>0.6</value>
- </param>
- <param>
- <key>label3</key>
- <value>Rep. (Rate=3)</value>
- </param>
- <param>
- <key>width3</key>
- <value>1</value>
- </param>
- <param>
- <key>color3</key>
- <value>"green"</value>
- </param>
- <param>
- <key>style3</key>
- <value>1</value>
- </param>
- <param>
- <key>marker3</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha3</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label4</key>
- <value>CC (K=7, Rate=2)</value>
- </param>
- <param>
- <key>width4</key>
- <value>1</value>
- </param>
- <param>
- <key>color4</key>
- <value>"black"</value>
- </param>
- <param>
- <key>style4</key>
- <value>1</value>
- </param>
- <param>
- <key>marker4</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha4</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label5</key>
- <value>CCSDS</value>
- </param>
- <param>
- <key>width5</key>
- <value>1</value>
- </param>
- <param>
- <key>color5</key>
- <value>"cyan"</value>
- </param>
- <param>
- <key>style5</key>
- <value>1</value>
- </param>
- <param>
- <key>marker5</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha5</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label6</key>
- <value></value>
- </param>
- <param>
- <key>width6</key>
- <value>1</value>
- </param>
- <param>
- <key>color6</key>
- <value>"magenta"</value>
- </param>
- <param>
- <key>style6</key>
- <value>1</value>
- </param>
- <param>
- <key>marker6</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha6</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label7</key>
- <value></value>
- </param>
- <param>
- <key>width7</key>
- <value>1</value>
- </param>
- <param>
- <key>color7</key>
- <value>"yellow"</value>
- </param>
- <param>
- <key>style7</key>
- <value>1</value>
- </param>
- <param>
- <key>marker7</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha7</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label8</key>
- <value></value>
- </param>
- <param>
- <key>width8</key>
+ <key>vlen</key>
<value>1</value>
</param>
<param>
- <key>color8</key>
- <value>"dark red"</value>
- </param>
- <param>
- <key>style8</key>
+ <key>scale</key>
<value>1</value>
</param>
<param>
- <key>marker8</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha8</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label9</key>
+ <key>alias</key>
<value></value>
</param>
<param>
- <key>width9</key>
- <value>1</value>
- </param>
- <param>
- <key>color9</key>
- <value>"dark green"</value>
- </param>
- <param>
- <key>style9</key>
- <value>1</value>
- </param>
- <param>
- <key>marker9</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha9</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label10</key>
+ <key>affinity</key>
<value></value>
</param>
<param>
- <key>width10</key>
- <value>1</value>
- </param>
- <param>
- <key>color10</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>style10</key>
- <value>1</value>
- </param>
- <param>
- <key>marker10</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha10</key>
- <value>1.0</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(1845, 201)</value>
+ <value>(322, 152)</value>
</param>
<param>
<key>_rotation</key>
@@ -2315,26 +1839,26 @@
</param>
</block>
<connection>
- <source_block_id>blocks_vector_source_x_0_1_0</source_block_id>
- <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_0_0_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
<source_key>0</source_key>
- <sink_key>0</sink_key>
+ <sink_key>1</sink_key>
</connection>
<connection>
- <source_block_id>analog_random_source_x_0</source_block_id>
- <sink_block_id>blocks_throttle_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_0_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
<source_key>0</source_key>
- <sink_key>0</sink_key>
+ <sink_key>2</sink_key>
</connection>
<connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>blocks_unpack_k_bits_bb_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
<source_key>0</source_key>
- <sink_key>0</sink_key>
+ <sink_key>3</sink_key>
</connection>
<connection>
- <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_0_1</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
@@ -2345,32 +1869,32 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>digital_map_bb_0_0</source_block_id>
- <sink_block_id>blocks_char_to_float_0</sink_block_id>
+ <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
+ <sink_block_id>fec_extended_encoder_1_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_1</source_block_id>
- <sink_block_id>digital_map_bb_0_0</sink_block_id>
+ <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
+ <sink_block_id>fec_extended_encoder_1_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_0</source_block_id>
- <sink_block_id>fec_extended_decoder_0</sink_block_id>
+ <source_block_id>digital_map_bb_0_0_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_2</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>digital_map_bb_0_0_0_0</source_block_id>
- <sink_block_id>blocks_char_to_float_0_2_0</sink_block_id>
+ <source_block_id>fec_extended_encoder_1_0</source_block_id>
+ <sink_block_id>digital_map_bb_0_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_1_0_0</source_block_id>
- <sink_block_id>digital_map_bb_0_0_0_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_0_2</source_block_id>
+ <sink_block_id>fec_extended_decoder_0_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
@@ -2381,68 +1905,56 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_1_0_0</sink_block_id>
+ <source_block_id>fec_extended_encoder_1_0_0</source_block_id>
+ <sink_block_id>digital_map_bb_0_0_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_1_0</sink_block_id>
+ <source_block_id>digital_map_bb_0_0_0_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_2_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_0_2</source_block_id>
- <sink_block_id>fec_extended_decoder_0_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_0</source_block_id>
+ <sink_block_id>fec_extended_decoder_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_1_0</source_block_id>
- <sink_block_id>digital_map_bb_0_0_0</sink_block_id>
+ <source_block_id>fec_extended_encoder_1</source_block_id>
+ <sink_block_id>digital_map_bb_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>digital_map_bb_0_0_0</source_block_id>
- <sink_block_id>blocks_char_to_float_0_2</sink_block_id>
+ <source_block_id>digital_map_bb_0_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_decoder_0_1</source_block_id>
- <sink_block_id>blocks_char_to_float_0_0_0</sink_block_id>
+ <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
+ <sink_block_id>fec_extended_encoder_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_0_1</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_block_id>blocks_throttle_0</source_block_id>
+ <sink_block_id>blocks_unpack_k_bits_bb_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_0_0_0_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>1</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_char_to_float_0_0_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>2</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_char_to_float_0_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_block_id>analog_random_source_x_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
<source_key>0</source_key>
- <sink_key>3</sink_key>
+ <sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_decoder_0_1_0</source_block_id>
- <sink_block_id>blocks_char_to_float_0_0_0_0</sink_block_id>
+ <source_block_id>blocks_vector_source_x_0_1_0</source_block_id>
+ <sink_block_id>blocks_throttle_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
@@ -2453,26 +1965,14 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_0_0_0</source_block_id>
- <sink_block_id>blocks_sub_xx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_char_to_float_0_0</source_block_id>
- <sink_block_id>blocks_sub_xx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>1</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_sub_xx_0</source_block_id>
- <sink_block_id>blocks_abs_xx_0</sink_block_id>
+ <source_block_id>fec_extended_decoder_0_1_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_0_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_abs_xx_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_1</sink_block_id>
+ <source_block_id>fec_extended_decoder_0_1</source_block_id>
+ <sink_block_id>blocks_char_to_float_0_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
diff --git a/gr-fec/examples/fecapi_encoders.grc b/gr-fec/examples/fecapi_encoders.grc
index 1bf3c47035..b63b6c58aa 100644
--- a/gr-fec/examples/fecapi_encoders.grc
+++ b/gr-fec/examples/fecapi_encoders.grc
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='ASCII'?>
<flow_graph>
- <timestamp>Mon May 12 16:15:19 2014</timestamp>
+ <timestamp>Sat May 17 17:08:36 2014</timestamp>
<block>
<key>options</key>
<param>
@@ -68,7 +68,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>rate</value>
+ <value>polys</value>
</param>
<param>
<key>_enabled</key>
@@ -76,7 +76,7 @@
</param>
<param>
<key>value</key>
- <value>2</value>
+ <value>[109, 79]</value>
</param>
<param>
<key>alias</key>
@@ -84,7 +84,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(454, 692)</value>
+ <value>(67, 488)</value>
</param>
<param>
<key>_rotation</key>
@@ -95,7 +95,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>polys</value>
+ <value>rate</value>
</param>
<param>
<key>_enabled</key>
@@ -103,7 +103,7 @@
</param>
<param>
<key>value</key>
- <value>[109, 79]</value>
+ <value>2</value>
</param>
<param>
<key>alias</key>
@@ -111,7 +111,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(270, 780)</value>
+ <value>(92, 424)</value>
</param>
<param>
<key>_rotation</key>
@@ -122,15 +122,15 @@
<key>variable</key>
<param>
<key>id</key>
- <value>polys</value>
+ <value>k</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
+ <value>True</value>
</param>
<param>
<key>value</key>
- <value>[79, 109]</value>
+ <value>7</value>
</param>
<param>
<key>alias</key>
@@ -138,7 +138,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(412, 777)</value>
+ <value>(24, 424)</value>
</param>
<param>
<key>_rotation</key>
@@ -149,7 +149,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>k</value>
+ <value>samp_rate</value>
</param>
<param>
<key>_enabled</key>
@@ -157,7 +157,7 @@
</param>
<param>
<key>value</key>
- <value>7</value>
+ <value>50000</value>
</param>
<param>
<key>alias</key>
@@ -165,7 +165,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(353, 695)</value>
+ <value>(10, 73)</value>
</param>
<param>
<key>_rotation</key>
@@ -173,18 +173,30 @@
</param>
</block>
<block>
- <key>variable</key>
+ <key>parameter</key>
<param>
<key>id</key>
- <value>samp_rate</value>
+ <value>frame_size</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
+ <key>label</key>
+ <value>Frame Size</value>
+ </param>
+ <param>
<key>value</key>
- <value>50000</value>
+ <value>60</value>
+ </param>
+ <param>
+ <key>type</key>
+ <value>intx</value>
+ </param>
+ <param>
+ <key>short_id</key>
+ <value></value>
</param>
<param>
<key>alias</key>
@@ -192,7 +204,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(7, 95)</value>
+ <value>(170, 10)</value>
</param>
<param>
<key>_rotation</key>
@@ -231,7 +243,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(420, 9)</value>
+ <value>(279, 10)</value>
</param>
<param>
<key>_rotation</key>
@@ -239,10 +251,37 @@
</param>
</block>
<block>
- <key>blocks_throttle</key>
+ <key>blocks_ctrlport_monitor_performance</key>
<param>
<key>id</key>
- <value>blocks_throttle_0</value>
+ <value>blocks_ctrlport_monitor_performance_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>en</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(372, 11)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_vector_source_x</key>
+ <param>
+ <key>id</key>
+ <value>blocks_vector_source_x_0_1_0</value>
</param>
<param>
<key>_enabled</key>
@@ -253,18 +292,22 @@
<value>byte</value>
</param>
<param>
- <key>samples_per_second</key>
- <value>samp_rate</value>
+ <key>vector</key>
+ <value>(frame_size/15)*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>tags</key>
+ <value>[]</value>
</param>
<param>
- <key>ignoretag</key>
+ <key>repeat</key>
<value>True</value>
</param>
<param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
<key>alias</key>
<value></value>
</param>
@@ -282,7 +325,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(105, 331)</value>
+ <value>(17, 139)</value>
</param>
<param>
<key>_rotation</key>
@@ -290,33 +333,29 @@
</param>
</block>
<block>
- <key>analog_random_source_x</key>
+ <key>blocks_throttle</key>
<param>
<key>id</key>
- <value>analog_random_source_x_0</value>
+ <value>blocks_throttle_0</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
+ <value>True</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
- <key>min</key>
- <value>0</value>
- </param>
- <param>
- <key>max</key>
- <value>256</value>
+ <key>samples_per_second</key>
+ <value>samp_rate</value>
</param>
<param>
- <key>num_samps</key>
- <value>1000</value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>repeat</key>
+ <key>ignoretag</key>
<value>True</value>
</param>
<param>
@@ -337,7 +376,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(111, 523)</value>
+ <value>(52, 221)</value>
</param>
<param>
<key>_rotation</key>
@@ -345,38 +384,38 @@
</param>
</block>
<block>
- <key>parameter</key>
+ <key>blocks_unpack_k_bits_bb</key>
<param>
<key>id</key>
- <value>frame_size</value>
+ <value>blocks_unpack_k_bits_bb_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>label</key>
- <value>Frame Size</value>
+ <key>k</key>
+ <value>8</value>
</param>
<param>
- <key>value</key>
- <value>60</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>type</key>
- <value>intx</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>short_id</key>
- <value></value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(249, 9)</value>
+ <value>(63, 268)</value>
</param>
<param>
<key>_rotation</key>
@@ -384,34 +423,34 @@
</param>
</block>
<block>
- <key>blocks_vector_source_x</key>
+ <key>analog_random_source_x</key>
<param>
<key>id</key>
- <value>blocks_vector_source_x_0_1_0</value>
+ <value>analog_random_source_x_0</value>
</param>
<param>
<key>_enabled</key>
- <value>True</value>
+ <value>False</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
- <key>vector</key>
- <value>(frame_size/15)*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
+ <key>min</key>
+ <value>0</value>
</param>
<param>
- <key>tags</key>
- <value>[]</value>
+ <key>max</key>
+ <value>256</value>
</param>
<param>
- <key>repeat</key>
- <value>True</value>
+ <key>num_samps</key>
+ <value>1000</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>repeat</key>
+ <value>True</value>
</param>
<param>
<key>alias</key>
@@ -431,11 +470,11 @@
</param>
<param>
<key>_coordinate</key>
- <value>(133, 190)</value>
+ <value>(20, 320)</value>
</param>
<param>
<key>_rotation</key>
- <value>180</value>
+ <value>0</value>
</param>
</block>
<block>
@@ -494,7 +533,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(550, 696)</value>
+ <value>(158, 424)</value>
</param>
<param>
<key>_rotation</key>
@@ -502,26 +541,140 @@
</param>
</block>
<block>
- <key>blocks_ctrlport_monitor_performance</key>
+ <key>variable_ccsds_encoder_def</key>
<param>
<key>id</key>
- <value>blocks_ctrlport_monitor_performance_0</value>
+ <value>enc_ccsds</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
+ <value>True</value>
</param>
<param>
- <key>en</key>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>4</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>frame_size*8</value>
+ </param>
+ <param>
+ <key>state_start</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_TERMINATED</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(356, 424)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_repetition_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_rep</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>frame_size*8</value>
+ </param>
+ <param>
+ <key>rep</key>
+ <value>3</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(549, 424)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_dummy_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_dummy</value>
+ </param>
+ <param>
+ <key>_enabled</key>
<value>True</value>
</param>
<param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>frame_size*8</value>
+ </param>
+ <param>
<key>alias</key>
<value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(549, 10)</value>
+ <value>(747, 424)</value>
</param>
<param>
<key>_rotation</key>
@@ -529,18 +682,22 @@
</param>
</block>
<block>
- <key>blocks_unpack_k_bits_bb</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_unpack_k_bits_bb_0</value>
+ <value>blocks_char_to_float_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>k</key>
- <value>8</value>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
</param>
<param>
<key>alias</key>
@@ -560,7 +717,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(118, 440)</value>
+ <value>(567, 231)</value>
</param>
<param>
<key>_rotation</key>
@@ -571,7 +728,7 @@
<key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1_0_0</value>
+ <value>blocks_char_to_float_1</value>
</param>
<param>
<key>_enabled</key>
@@ -603,7 +760,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(853, 255)</value>
+ <value>(567, 309)</value>
</param>
<param>
<key>_rotation</key>
@@ -614,7 +771,7 @@
<key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_0</value>
+ <value>blocks_char_to_float_1_0_0</value>
</param>
<param>
<key>_enabled</key>
@@ -646,7 +803,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(848, 392)</value>
+ <value>(568, 154)</value>
</param>
<param>
<key>_rotation</key>
@@ -657,7 +814,7 @@
<key>fec_extended_encoder</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_1</value>
+ <value>fec_extended_encoder_0</value>
</param>
<param>
<key>_enabled</key>
@@ -665,7 +822,7 @@
</param>
<param>
<key>encoder_list</key>
- <value>enc_ccsds</value>
+ <value>enc_cc</value>
</param>
<param>
<key>threadtype</key>
@@ -676,10 +833,6 @@
<value>puncpat</value>
</param>
<param>
- <key>lentagname</key>
- <value>None</value>
- </param>
- <param>
<key>alias</key>
<value></value>
</param>
@@ -697,7 +850,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(512, 361)</value>
+ <value>(347, 293)</value>
</param>
<param>
<key>_rotation</key>
@@ -705,22 +858,26 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>fec_extended_encoder</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1</value>
+ <value>fec_extended_encoder_0_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>encoder_list</key>
+ <value>enc_rep</value>
</param>
<param>
- <key>scale</key>
- <value>1</value>
+ <key>threadtype</key>
+ <value>none</value>
+ </param>
+ <param>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
<key>alias</key>
@@ -740,7 +897,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(837, 554)</value>
+ <value>(347, 138)</value>
</param>
<param>
<key>_rotation</key>
@@ -751,7 +908,7 @@
<key>fec_extended_encoder</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_0</value>
+ <value>fec_extended_encoder_1</value>
</param>
<param>
<key>_enabled</key>
@@ -759,7 +916,7 @@
</param>
<param>
<key>encoder_list</key>
- <value>enc_cc</value>
+ <value>enc_ccsds</value>
</param>
<param>
<key>threadtype</key>
@@ -770,10 +927,6 @@
<value>puncpat</value>
</param>
<param>
- <key>lentagname</key>
- <value>None</value>
- </param>
- <param>
<key>alias</key>
<value></value>
</param>
@@ -791,7 +944,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(511, 525)</value>
+ <value>(347, 215)</value>
</param>
<param>
<key>_rotation</key>
@@ -802,7 +955,7 @@
<key>qtgui_time_sink_x</key>
<param>
<key>id</key>
- <value>qtgui_time_sink_x_0</value>
+ <value>qtgui_time_sink_x_0_0_1</value>
</param>
<param>
<key>_enabled</key>
@@ -838,7 +991,7 @@
</param>
<param>
<key>nconnections</key>
- <value>2</value>
+ <value>1</value>
</param>
<param>
<key>update_time</key>
@@ -874,11 +1027,11 @@
</param>
<param>
<key>tr_tag</key>
- <value>""</value>
+ <value>packet_len</value>
</param>
<param>
<key>label1</key>
- <value>CCSDS</value>
+ <value></value>
</param>
<param>
<key>width1</key>
@@ -1126,152 +1279,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1193, 420)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable_ccsds_encoder_def</key>
- <param>
- <key>id</key>
- <value>enc_ccsds</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>1</value>
- </param>
- <param>
- <key>dim2</key>
- <value>4</value>
- </param>
- <param>
- <key>framebits</key>
- <value>frame_size*8</value>
- </param>
- <param>
- <key>state_start</key>
- <value>0</value>
- </param>
- <param>
- <key>mode</key>
- <value>fec.CC_TERMINATED</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(843, 698)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable_dummy_encoder_def</key>
- <param>
- <key>id</key>
- <value>enc_dummy</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>1</value>
- </param>
- <param>
- <key>dim2</key>
- <value>1</value>
- </param>
- <param>
- <key>framebits</key>
- <value>frame_size*8</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1139, 698)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>fec_extended_encoder</key>
- <param>
- <key>id</key>
- <value>fec_extended_encoder_0_0_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>encoder_list</key>
- <value>enc_rep</value>
- </param>
- <param>
- <key>threadtype</key>
- <value>none</value>
- </param>
- <param>
- <key>puncpat</key>
- <value>puncpat</value>
- </param>
- <param>
- <key>lentagname</key>
- <value>none</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(512, 224)</value>
+ <value>(760, 130)</value>
</param>
<param>
<key>_rotation</key>
@@ -1282,7 +1290,7 @@
<key>qtgui_time_sink_x</key>
<param>
<key>id</key>
- <value>qtgui_time_sink_x_0_0_1</value>
+ <value>qtgui_time_sink_x_0</value>
</param>
<param>
<key>_enabled</key>
@@ -1318,7 +1326,7 @@
</param>
<param>
<key>nconnections</key>
- <value>1</value>
+ <value>2</value>
</param>
<param>
<key>update_time</key>
@@ -1354,11 +1362,11 @@
</param>
<param>
<key>tr_tag</key>
- <value>packet_len</value>
+ <value>""</value>
</param>
<param>
<key>label1</key>
- <value></value>
+ <value>CCSDS</value>
</param>
<param>
<key>width1</key>
@@ -1606,54 +1614,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1084, 224)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable_repetition_encoder_def</key>
- <param>
- <key>id</key>
- <value>enc_rep</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>1</value>
- </param>
- <param>
- <key>dim2</key>
- <value>1</value>
- </param>
- <param>
- <key>framebits</key>
- <value>frame_size*8</value>
- </param>
- <param>
- <key>rep</key>
- <value>3</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1141, 829)</value>
+ <value>(762, 250)</value>
</param>
<param>
<key>_rotation</key>
@@ -1673,26 +1634,26 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>blocks_unpack_k_bits_bb_0</sink_block_id>
+ <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
+ <sink_block_id>fec_extended_encoder_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_0</sink_block_id>
+ <sink_block_id>fec_extended_encoder_0_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_0_0_0</sink_block_id>
+ <sink_block_id>fec_extended_encoder_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_0_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0_0_1</sink_block_id>
+ <source_block_id>blocks_throttle_0</source_block_id>
+ <sink_block_id>blocks_unpack_k_bits_bb_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
@@ -1709,27 +1670,27 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_1</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
<source_key>0</source_key>
- <sink_key>0</sink_key>
+ <sink_key>1</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_0</source_block_id>
- <sink_block_id>blocks_char_to_float_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_block_id>fec_extended_encoder_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0_0_1</sink_block_id>
<source_key>0</source_key>
- <sink_key>1</sink_key>
+ <sink_key>0</sink_key>
</connection>
</flow_graph>
diff --git a/gr-fec/examples/fecapi_tagged_decoders.grc b/gr-fec/examples/fecapi_tagged_decoders.grc
index 9734732cc5..a2e521deb3 100644
--- a/gr-fec/examples/fecapi_tagged_decoders.grc
+++ b/gr-fec/examples/fecapi_tagged_decoders.grc
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='ASCII'?>
<flow_graph>
- <timestamp>Wed May 14 12:22:39 2014</timestamp>
+ <timestamp>Sat May 17 17:05:02 2014</timestamp>
<block>
<key>options</key>
<param>
@@ -68,15 +68,15 @@
<key>variable</key>
<param>
<key>id</key>
- <value>polys</value>
+ <value>rep</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
+ <value>True</value>
</param>
<param>
<key>value</key>
- <value>[79, 109]</value>
+ <value>3</value>
</param>
<param>
<key>alias</key>
@@ -84,7 +84,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(368, 684)</value>
+ <value>(365, 759)</value>
</param>
<param>
<key>_rotation</key>
@@ -95,7 +95,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>rate</value>
+ <value>k</value>
</param>
<param>
<key>_enabled</key>
@@ -103,7 +103,7 @@
</param>
<param>
<key>value</key>
- <value>2</value>
+ <value>7</value>
</param>
<param>
<key>alias</key>
@@ -111,7 +111,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(410, 599)</value>
+ <value>(30, 520)</value>
</param>
<param>
<key>_rotation</key>
@@ -122,7 +122,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>polys</value>
+ <value>length_tag</value>
</param>
<param>
<key>_enabled</key>
@@ -130,7 +130,7 @@
</param>
<param>
<key>value</key>
- <value>[109, 79]</value>
+ <value>"packet_len"</value>
</param>
<param>
<key>alias</key>
@@ -138,7 +138,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(226, 687)</value>
+ <value>(101, 73)</value>
</param>
<param>
<key>_rotation</key>
@@ -149,7 +149,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>k</value>
+ <value>samp_rate</value>
</param>
<param>
<key>_enabled</key>
@@ -157,7 +157,7 @@
</param>
<param>
<key>value</key>
- <value>7</value>
+ <value>50000</value>
</param>
<param>
<key>alias</key>
@@ -165,7 +165,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(309, 602)</value>
+ <value>(12, 73)</value>
</param>
<param>
<key>_rotation</key>
@@ -176,7 +176,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>length_tag</value>
+ <value>rate</value>
</param>
<param>
<key>_enabled</key>
@@ -184,7 +184,7 @@
</param>
<param>
<key>value</key>
- <value>"packet_len"</value>
+ <value>2</value>
</param>
<param>
<key>alias</key>
@@ -192,7 +192,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(202, 112)</value>
+ <value>(97, 520)</value>
</param>
<param>
<key>_rotation</key>
@@ -203,7 +203,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>samp_rate</value>
+ <value>polys</value>
</param>
<param>
<key>_enabled</key>
@@ -211,7 +211,7 @@
</param>
<param>
<key>value</key>
- <value>50000</value>
+ <value>[109, 79]</value>
</param>
<param>
<key>alias</key>
@@ -219,7 +219,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(9, 95)</value>
+ <value>(72, 584)</value>
</param>
<param>
<key>_rotation</key>
@@ -258,7 +258,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(248, 9)</value>
+ <value>(211, 11)</value>
</param>
<param>
<key>_rotation</key>
@@ -269,7 +269,7 @@
<key>parameter</key>
<param>
<key>id</key>
- <value>frame_size</value>
+ <value>MTU</value>
</param>
<param>
<key>_enabled</key>
@@ -277,11 +277,11 @@
</param>
<param>
<key>label</key>
- <value>Frame Size</value>
+ <value>MTU</value>
</param>
<param>
<key>value</key>
- <value>30</value>
+ <value>1000</value>
</param>
<param>
<key>type</key>
@@ -297,7 +297,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(484, 10)</value>
+ <value>(291, 11)</value>
</param>
<param>
<key>_rotation</key>
@@ -308,7 +308,7 @@
<key>parameter</key>
<param>
<key>id</key>
- <value>MTU</value>
+ <value>frame_size</value>
</param>
<param>
<key>_enabled</key>
@@ -316,11 +316,11 @@
</param>
<param>
<key>label</key>
- <value>MTU</value>
+ <value>Frame Size</value>
</param>
<param>
<key>value</key>
- <value>1000</value>
+ <value>30</value>
</param>
<param>
<key>type</key>
@@ -336,7 +336,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(365, 9)</value>
+ <value>(371, 11)</value>
</param>
<param>
<key>_rotation</key>
@@ -344,34 +344,61 @@
</param>
</block>
<block>
- <key>blocks_vector_source_x</key>
+ <key>blocks_ctrlport_monitor_performance</key>
<param>
<key>id</key>
- <value>blocks_vector_source_x_0_1_0</value>
+ <value>blocks_ctrlport_monitor_performance_0</value>
</param>
<param>
<key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>en</key>
<value>True</value>
</param>
<param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(487, 12)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>analog_random_source_x</key>
+ <param>
+ <key>id</key>
+ <value>analog_random_source_x_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>False</value>
+ </param>
+ <param>
<key>type</key>
<value>byte</value>
</param>
<param>
- <key>vector</key>
- <value>4*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
+ <key>min</key>
+ <value>0</value>
</param>
<param>
- <key>tags</key>
- <value>[]</value>
+ <key>max</key>
+ <value>256</value>
</param>
<param>
- <key>repeat</key>
- <value>True</value>
+ <key>num_samps</key>
+ <value>1000</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>repeat</key>
+ <value>True</value>
</param>
<param>
<key>alias</key>
@@ -391,7 +418,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(271, 211)</value>
+ <value>(12, 142)</value>
</param>
<param>
<key>_rotation</key>
@@ -399,21 +426,33 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>blocks_vector_source_x</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1_2</value>
+ <value>blocks_vector_source_x_0_1_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>type</key>
+ <value>byte</value>
</param>
<param>
- <key>scale</key>
+ <key>vector</key>
+ <value>4*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
+ </param>
+ <param>
+ <key>tags</key>
+ <value>[]</value>
+ </param>
+ <param>
+ <key>repeat</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
<value>1</value>
</param>
<param>
@@ -434,7 +473,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1235, 186)</value>
+ <value>(149, 152)</value>
</param>
<param>
<key>_rotation</key>
@@ -442,18 +481,30 @@
</param>
</block>
<block>
- <key>digital_map_bb</key>
+ <key>blocks_throttle</key>
<param>
<key>id</key>
- <value>digital_map_bb_0_1</value>
+ <value>blocks_throttle_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>map</key>
- <value>[-1, 1]</value>
+ <key>type</key>
+ <value>byte</value>
+ </param>
+ <param>
+ <key>samples_per_second</key>
+ <value>samp_rate</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>ignoretag</key>
+ <value>True</value>
</param>
<param>
<key>alias</key>
@@ -473,7 +524,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1050, 186)</value>
+ <value>(365, 168)</value>
</param>
<param>
<key>_rotation</key>
@@ -481,37 +532,29 @@
</param>
</block>
<block>
- <key>fec_extended_decoder</key>
+ <key>blocks_stream_to_tagged_stream</key>
<param>
<key>id</key>
- <value>fec_extended_decoder_2</value>
+ <value>blocks_stream_to_tagged_stream_0_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>fec_extended_decoder</value>
- </param>
- <param>
- <key>decoder_list</key>
- <value>dec_cc</value>
- </param>
- <param>
- <key>threadtype</key>
- <value>none</value>
+ <key>type</key>
+ <value>byte</value>
</param>
<param>
- <key>ann</key>
- <value>None</value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>packet_len</key>
+ <value>frame_size</value>
</param>
<param>
- <key>lentagname</key>
+ <key>len_tag_key</key>
<value>length_tag</value>
</param>
<param>
@@ -532,7 +575,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1455, 443)</value>
+ <value>(551, 160)</value>
</param>
<param>
<key>_rotation</key>
@@ -540,38 +583,62 @@
</param>
</block>
<block>
- <key>digital_map_bb</key>
+ <key>variable_cc_encoder_def</key>
<param>
<key>id</key>
- <value>digital_map_bb_0</value>
+ <value>enc_cc</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>map</key>
- <value>[-1, 1]</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>ndim</key>
+ <value>0</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
+ <key>framebits</key>
+ <value>MTU*8</value>
+ </param>
+ <param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
<value>0</value>
</param>
<param>
+ <key>mode</key>
+ <value>fec.CC_STREAMING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
<key>_coordinate</key>
- <value>(1049, 332)</value>
+ <value>(166, 519)</value>
</param>
<param>
<key>_rotation</key>
@@ -579,42 +646,66 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>variable_cc_decoder_def</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1</value>
+ <value>dec_cc</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
<value>1</value>
</param>
<param>
- <key>scale</key>
+ <key>dim1</key>
<value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>dim2</key>
+ <value>4</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>framebits</key>
+ <value>MTU*8</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>k</key>
+ <value>k</value>
</param>
<param>
- <key>maxoutbuf</key>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
+ <key>state_start</key>
<value>0</value>
</param>
<param>
+ <key>state_end</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>mode</key>
+ <value>fec.CC_STREAMING</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
+ </param>
+ <param>
<key>_coordinate</key>
- <value>(1234, 332)</value>
+ <value>(166, 678)</value>
</param>
<param>
<key>_rotation</key>
@@ -622,42 +713,42 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>variable_dummy_decoder_def</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1_1</value>
+ <value>dec_dummy</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>scale</key>
+ <key>ndim</key>
<value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>framebits</key>
+ <value>MTU*8</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(1241, 483)</value>
+ <value>(561, 614)</value>
</param>
<param>
<key>_rotation</key>
@@ -665,38 +756,42 @@
</param>
</block>
<block>
- <key>digital_map_bb</key>
+ <key>variable_dummy_encoder_def</key>
<param>
<key>id</key>
- <value>digital_map_bb_0_0</value>
+ <value>enc_dummy</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>map</key>
- <value>[-1, 1]</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>ndim</key>
+ <value>1</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>framebits</key>
+ <value>MTU*8</value>
+ </param>
+ <param>
+ <key>alias</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(1058, 485)</value>
+ <value>(561, 519)</value>
</param>
<param>
<key>_rotation</key>
@@ -704,10 +799,10 @@
</param>
</block>
<block>
- <key>fec_extended_decoder</key>
+ <key>fec_extended_tagged_decoder</key>
<param>
<key>id</key>
- <value>fec_extended_decoder_1</value>
+ <value>fec_extended_tagged_decoder_0_1</value>
</param>
<param>
<key>_enabled</key>
@@ -719,11 +814,7 @@
</param>
<param>
<key>decoder_list</key>
- <value>dec_rep</value>
- </param>
- <param>
- <key>threadtype</key>
- <value>none</value>
+ <value>dec_cc</value>
</param>
<param>
<key>ann</key>
@@ -755,7 +846,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1454, 290)</value>
+ <value>(991, 440)</value>
</param>
<param>
<key>_rotation</key>
@@ -763,38 +854,65 @@
</param>
</block>
<block>
- <key>fec_extended_decoder</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>fec_extended_decoder_0</value>
+ <value>blocks_char_to_float_1_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>fec_extended_decoder</value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>decoder_list</key>
- <value>dec_dummy</value>
+ <key>scale</key>
+ <value>1</value>
</param>
<param>
- <key>threadtype</key>
- <value>none</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>ann</key>
- <value>None</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>lentagname</key>
- <value>length_tag</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>_coordinate</key>
+ <value>(1257, 464)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
+ <param>
+ <key>id</key>
+ <value>blocks_char_to_float_1_0</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>scale</key>
+ <value>1</value>
</param>
<param>
<key>alias</key>
@@ -814,7 +932,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1455, 143)</value>
+ <value>(1256, 363)</value>
</param>
<param>
<key>_rotation</key>
@@ -825,7 +943,7 @@
<key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1_0_0</value>
+ <value>blocks_char_to_float_1_1</value>
</param>
<param>
<key>_enabled</key>
@@ -857,7 +975,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1802, 485)</value>
+ <value>(813, 443)</value>
</param>
<param>
<key>_rotation</key>
@@ -868,7 +986,7 @@
<key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1_0</value>
+ <value>blocks_char_to_float_1</value>
</param>
<param>
<key>_enabled</key>
@@ -900,7 +1018,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1798, 332)</value>
+ <value>(811, 363)</value>
</param>
<param>
<key>_rotation</key>
@@ -908,22 +1026,34 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>fec_extended_tagged_decoder</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1_0_1</value>
+ <value>fec_extended_tagged_decoder_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>value</key>
+ <value>fec_extended_decoder</value>
</param>
<param>
- <key>scale</key>
- <value>1</value>
+ <key>decoder_list</key>
+ <value>dec_dummy</value>
+ </param>
+ <param>
+ <key>ann</key>
+ <value>None</value>
+ </param>
+ <param>
+ <key>puncpat</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>lentagname</key>
+ <value>length_tag</value>
</param>
<param>
<key>alias</key>
@@ -943,7 +1073,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1799, 186)</value>
+ <value>(990, 238)</value>
</param>
<param>
<key>_rotation</key>
@@ -1278,7 +1408,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(2061, 300)</value>
+ <value>(1465, 333)</value>
</param>
<param>
<key>_rotation</key>
@@ -1286,62 +1416,42 @@
</param>
</block>
<block>
- <key>variable_cc_encoder_def</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>enc_cc</value>
+ <value>blocks_char_to_float_1_0_1</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
+ <key>vlen</key>
<value>1</value>
</param>
<param>
- <key>dim2</key>
+ <key>scale</key>
<value>1</value>
</param>
<param>
- <key>framebits</key>
- <value>MTU*8</value>
- </param>
- <param>
- <key>k</key>
- <value>k</value>
- </param>
- <param>
- <key>rate</key>
- <value>rate</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>polys</key>
- <value>polys</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>state_start</key>
+ <key>minoutbuf</key>
<value>0</value>
</param>
<param>
- <key>mode</key>
- <value>fec.CC_STREAMING</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(509, 598)</value>
+ <value>(1258, 262)</value>
</param>
<param>
<key>_rotation</key>
@@ -1349,66 +1459,42 @@
</param>
</block>
<block>
- <key>variable_cc_decoder_def</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>dec_cc</value>
+ <value>blocks_char_to_float_1_2</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
+ <key>vlen</key>
<value>1</value>
</param>
<param>
- <key>dim1</key>
+ <key>scale</key>
<value>1</value>
</param>
<param>
- <key>dim2</key>
- <value>4</value>
- </param>
- <param>
- <key>framebits</key>
- <value>MTU*8</value>
- </param>
- <param>
- <key>k</key>
- <value>k</value>
- </param>
- <param>
- <key>rate</key>
- <value>rate</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>polys</key>
- <value>polys</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>state_start</key>
+ <key>minoutbuf</key>
<value>0</value>
</param>
<param>
- <key>state_end</key>
- <value>-1</value>
- </param>
- <param>
- <key>mode</key>
- <value>fec.CC_STREAMING</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(505, 831)</value>
+ <value>(810, 284)</value>
</param>
<param>
<key>_rotation</key>
@@ -1416,10 +1502,10 @@
</param>
</block>
<block>
- <key>variable_repetition_decoder_def</key>
+ <key>fec_extended_tagged_decoder</key>
<param>
<key>id</key>
- <value>dec_rep</value>
+ <value>fec_extended_tagged_decoder_0_0</value>
</param>
<param>
<key>_enabled</key>
@@ -1427,82 +1513,43 @@
</param>
<param>
<key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>1</value>
+ <value>fec_extended_decoder</value>
</param>
<param>
- <key>dim2</key>
- <value>1</value>
+ <key>decoder_list</key>
+ <value>dec_rep</value>
</param>
<param>
- <key>framebits</key>
- <value>MTU*8</value>
+ <key>ann</key>
+ <value>None</value>
</param>
<param>
- <key>rep</key>
- <value>3</value>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
- <key>prob</key>
- <value>0.5</value>
+ <key>lentagname</key>
+ <value>length_tag</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
- <key>_coordinate</key>
- <value>(799, 741)</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>_rotation</key>
+ <key>minoutbuf</key>
<value>0</value>
</param>
- </block>
- <block>
- <key>variable_dummy_decoder_def</key>
- <param>
- <key>id</key>
- <value>dec_dummy</value>
- </param>
<param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>1</value>
- </param>
- <param>
- <key>dim2</key>
- <value>1</value>
- </param>
- <param>
- <key>framebits</key>
- <value>MTU*8</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(1094, 722)</value>
+ <value>(991, 339)</value>
</param>
<param>
<key>_rotation</key>
@@ -1510,69 +1557,38 @@
</param>
</block>
<block>
- <key>variable_dummy_encoder_def</key>
+ <key>digital_map_bb</key>
<param>
<key>id</key>
- <value>enc_dummy</value>
+ <value>digital_map_bb_0_1</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>1</value>
- </param>
- <param>
- <key>dim2</key>
- <value>1</value>
- </param>
- <param>
- <key>framebits</key>
- <value>MTU*8</value>
+ <key>map</key>
+ <value>[-1, 1]</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
- <key>_coordinate</key>
- <value>(1092, 599)</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>_rotation</key>
+ <key>minoutbuf</key>
<value>0</value>
</param>
- </block>
- <block>
- <key>blocks_ctrlport_monitor_performance</key>
<param>
- <key>id</key>
- <value>blocks_ctrlport_monitor_performance_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>False</value>
- </param>
- <param>
- <key>en</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(651, 15)</value>
+ <value>(673, 284)</value>
</param>
<param>
<key>_rotation</key>
@@ -1580,46 +1596,46 @@
</param>
</block>
<block>
- <key>variable_repetition_encoder_def</key>
+ <key>fec_extended_tagged_encoder</key>
<param>
<key>id</key>
- <value>enc_rep</value>
+ <value>fec_extended_tagged_encoder_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
+ <key>encoder_list</key>
+ <value>enc_dummy</value>
</param>
<param>
- <key>ndim</key>
- <value>1</value>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
- <key>dim1</key>
- <value>1</value>
+ <key>lentagname</key>
+ <value>length_tag</value>
</param>
<param>
- <key>dim2</key>
- <value>1</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>framebits</key>
- <value>MTU*8</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>rep</key>
- <value>3</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
<key>_coordinate</key>
- <value>(799, 599)</value>
+ <value>(332, 268)</value>
</param>
<param>
<key>_rotation</key>
@@ -1627,34 +1643,34 @@
</param>
</block>
<block>
- <key>analog_random_source_x</key>
+ <key>blocks_repack_bits_bb</key>
<param>
<key>id</key>
- <value>analog_random_source_x_0</value>
+ <value>blocks_repack_bits_bb_0</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
+ <value>True</value>
</param>
<param>
- <key>type</key>
- <value>byte</value>
+ <key>k</key>
+ <value>8</value>
</param>
<param>
- <key>min</key>
- <value>0</value>
+ <key>l</key>
+ <value>1</value>
</param>
<param>
- <key>max</key>
- <value>256</value>
+ <key>len_tag_key</key>
+ <value>packet_len</value>
</param>
<param>
- <key>num_samps</key>
- <value>1000</value>
+ <key>align_output</key>
+ <value>False</value>
</param>
<param>
- <key>repeat</key>
- <value>True</value>
+ <key>swap</key>
+ <value>False</value>
</param>
<param>
<key>alias</key>
@@ -1674,7 +1690,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(29, 205)</value>
+ <value>(64, 276)</value>
</param>
<param>
<key>_rotation</key>
@@ -1682,30 +1698,18 @@
</param>
</block>
<block>
- <key>blocks_throttle</key>
+ <key>digital_map_bb</key>
<param>
<key>id</key>
- <value>blocks_throttle_0</value>
+ <value>digital_map_bb_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>samples_per_second</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>ignoretag</key>
- <value>True</value>
+ <key>map</key>
+ <value>[-1, 1]</value>
</param>
<param>
<key>alias</key>
@@ -1725,38 +1729,26 @@
</param>
<param>
<key>_coordinate</key>
- <value>(409, 349)</value>
+ <value>(674, 363)</value>
</param>
<param>
<key>_rotation</key>
- <value>180</value>
+ <value>0</value>
</param>
</block>
<block>
- <key>blocks_stream_to_tagged_stream</key>
+ <key>digital_map_bb</key>
<param>
<key>id</key>
- <value>blocks_stream_to_tagged_stream_0_0_0</value>
+ <value>digital_map_bb_0_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>packet_len</key>
- <value>frame_size</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag</value>
+ <key>map</key>
+ <value>[-1, 1]</value>
</param>
<param>
<key>alias</key>
@@ -1776,18 +1768,18 @@
</param>
<param>
<key>_coordinate</key>
- <value>(71, 339)</value>
+ <value>(674, 443)</value>
</param>
<param>
<key>_rotation</key>
- <value>180</value>
+ <value>0</value>
</param>
</block>
<block>
- <key>fec_extended_encoder</key>
+ <key>fec_extended_tagged_encoder</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_2</value>
+ <value>fec_extended_tagged_encoder_0_1</value>
</param>
<param>
<key>_enabled</key>
@@ -1798,10 +1790,6 @@
<value>enc_cc</value>
</param>
<param>
- <key>threadtype</key>
- <value>none</value>
- </param>
- <param>
<key>puncpat</key>
<value>puncpat</value>
</param>
@@ -1827,7 +1815,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(705, 453)</value>
+ <value>(332, 427)</value>
</param>
<param>
<key>_rotation</key>
@@ -1835,10 +1823,10 @@
</param>
</block>
<block>
- <key>fec_extended_encoder</key>
+ <key>fec_extended_tagged_encoder</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_1</value>
+ <value>fec_extended_tagged_encoder_0_0</value>
</param>
<param>
<key>_enabled</key>
@@ -1849,10 +1837,6 @@
<value>enc_rep</value>
</param>
<param>
- <key>threadtype</key>
- <value>none</value>
- </param>
- <param>
<key>puncpat</key>
<value>puncpat</value>
</param>
@@ -1878,7 +1862,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(704, 301)</value>
+ <value>(332, 347)</value>
</param>
<param>
<key>_rotation</key>
@@ -1886,50 +1870,46 @@
</param>
</block>
<block>
- <key>fec_extended_encoder</key>
+ <key>variable_repetition_encoder_def</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_0</value>
+ <value>enc_rep</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>encoder_list</key>
- <value>enc_dummy</value>
- </param>
- <param>
- <key>threadtype</key>
- <value>none</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>ndim</key>
+ <value>1</value>
</param>
<param>
- <key>lentagname</key>
- <value>length_tag</value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>framebits</key>
+ <value>MTU*8</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>rep</key>
+ <value>rep</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(705, 155)</value>
+ <value>(362, 519)</value>
</param>
<param>
<key>_rotation</key>
@@ -1937,50 +1917,50 @@
</param>
</block>
<block>
- <key>blocks_repack_bits_bb</key>
+ <key>variable_repetition_decoder_def</key>
<param>
<key>id</key>
- <value>blocks_repack_bits_bb_0</value>
+ <value>dec_rep</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>k</key>
- <value>8</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>l</key>
+ <key>ndim</key>
<value>1</value>
</param>
<param>
- <key>len_tag_key</key>
- <value>packet_len</value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>align_output</key>
- <value>False</value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>framebits</key>
+ <value>MTU*8</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>rep</key>
+ <value>rep</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>prob</key>
+ <value>0.5</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
<key>_coordinate</key>
- <value>(353, 435)</value>
+ <value>(362, 631)</value>
</param>
<param>
<key>_rotation</key>
@@ -2000,122 +1980,122 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>digital_map_bb_0_1</source_block_id>
- <sink_block_id>blocks_char_to_float_1_2</sink_block_id>
+ <source_block_id>blocks_throttle_0</source_block_id>
+ <sink_block_id>blocks_stream_to_tagged_stream_0_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_2</source_block_id>
- <sink_block_id>fec_extended_decoder_0</sink_block_id>
+ <source_block_id>blocks_stream_to_tagged_stream_0_0_0</source_block_id>
+ <sink_block_id>blocks_repack_bits_bb_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_decoder_0</source_block_id>
- <sink_block_id>blocks_char_to_float_1_0_1</sink_block_id>
+ <source_block_id>fec_extended_tagged_decoder_0_1</source_block_id>
+ <sink_block_id>blocks_char_to_float_1_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_0</source_block_id>
- <sink_block_id>digital_map_bb_0_1</sink_block_id>
+ <source_block_id>fec_extended_tagged_decoder_0_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_1_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_1</source_block_id>
- <sink_block_id>digital_map_bb_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_1</source_block_id>
+ <sink_block_id>fec_extended_tagged_decoder_0_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_decoder_1</source_block_id>
- <sink_block_id>blocks_char_to_float_1_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_1</source_block_id>
+ <sink_block_id>fec_extended_tagged_decoder_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1</source_block_id>
- <sink_block_id>fec_extended_decoder_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_1</sink_block_id>
<source_key>0</source_key>
- <sink_key>0</sink_key>
+ <sink_key>2</sink_key>
</connection>
<connection>
- <source_block_id>digital_map_bb_0</source_block_id>
- <sink_block_id>blocks_char_to_float_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_1</sink_block_id>
<source_key>0</source_key>
- <sink_key>0</sink_key>
+ <sink_key>1</sink_key>
</connection>
<connection>
- <source_block_id>digital_map_bb_0_0</source_block_id>
- <sink_block_id>blocks_char_to_float_1_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_0_1</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_2</source_block_id>
- <sink_block_id>digital_map_bb_0_0</sink_block_id>
+ <source_block_id>fec_extended_tagged_decoder_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_1_0_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_1</source_block_id>
- <sink_block_id>fec_extended_decoder_2</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_2</source_block_id>
+ <sink_block_id>fec_extended_tagged_decoder_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_decoder_2</source_block_id>
- <sink_block_id>blocks_char_to_float_1_0_0</sink_block_id>
+ <source_block_id>digital_map_bb_0_1</source_block_id>
+ <sink_block_id>blocks_char_to_float_1_2</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_0_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_1</sink_block_id>
+ <source_block_id>digital_map_bb_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_1</sink_block_id>
<source_key>0</source_key>
- <sink_key>2</sink_key>
+ <sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_1</sink_block_id>
+ <source_block_id>digital_map_bb_0_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_1_1</sink_block_id>
<source_key>0</source_key>
- <sink_key>1</sink_key>
+ <sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_0_1</source_block_id>
- <sink_block_id>qtgui_time_sink_x_1</sink_block_id>
+ <source_block_id>blocks_repack_bits_bb_0</source_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_stream_to_tagged_stream_0_0_0</source_block_id>
- <sink_block_id>blocks_repack_bits_bb_0</sink_block_id>
+ <source_block_id>fec_extended_tagged_encoder_0</source_block_id>
+ <sink_block_id>digital_map_bb_0_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>blocks_stream_to_tagged_stream_0_0_0</sink_block_id>
+ <source_block_id>blocks_repack_bits_bb_0</source_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_2</sink_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_0_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_1</sink_block_id>
+ <source_block_id>fec_extended_tagged_encoder_0_0</source_block_id>
+ <sink_block_id>digital_map_bb_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_0</sink_block_id>
+ <source_block_id>fec_extended_tagged_encoder_0_1</source_block_id>
+ <sink_block_id>digital_map_bb_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
diff --git a/gr-fec/examples/fecapi_tagged_encoders.grc b/gr-fec/examples/fecapi_tagged_encoders.grc
index c3505e6c42..dced887eb0 100644
--- a/gr-fec/examples/fecapi_tagged_encoders.grc
+++ b/gr-fec/examples/fecapi_tagged_encoders.grc
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='ASCII'?>
<flow_graph>
- <timestamp>Wed May 14 12:19:46 2014</timestamp>
+ <timestamp>Sat May 17 17:13:34 2014</timestamp>
<block>
<key>options</key>
<param>
@@ -84,7 +84,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(421, 692)</value>
+ <value>(20, 548)</value>
</param>
<param>
<key>_rotation</key>
@@ -95,7 +95,7 @@
<key>variable</key>
<param>
<key>id</key>
- <value>polys</value>
+ <value>rate</value>
</param>
<param>
<key>_enabled</key>
@@ -103,7 +103,7 @@
</param>
<param>
<key>value</key>
- <value>[109, 79]</value>
+ <value>2</value>
</param>
<param>
<key>alias</key>
@@ -111,7 +111,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(335, 777)</value>
+ <value>(86, 548)</value>
</param>
<param>
<key>_rotation</key>
@@ -126,38 +126,11 @@
</param>
<param>
<key>_enabled</key>
- <value>False</value>
- </param>
- <param>
- <key>value</key>
- <value>[79, 109]</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(479, 781)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>rate</value>
- </param>
- <param>
- <key>_enabled</key>
<value>True</value>
</param>
<param>
<key>value</key>
- <value>2</value>
+ <value>[109, 79]</value>
</param>
<param>
<key>alias</key>
@@ -165,7 +138,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(522, 694)</value>
+ <value>(61, 610)</value>
</param>
<param>
<key>_rotation</key>
@@ -192,7 +165,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(13, 88)</value>
+ <value>(11, 72)</value>
</param>
<param>
<key>_rotation</key>
@@ -219,7 +192,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(152, 116)</value>
+ <value>(100, 72)</value>
</param>
<param>
<key>_rotation</key>
@@ -227,65 +200,49 @@
</param>
</block>
<block>
- <key>blocks_vector_source_x</key>
+ <key>parameter</key>
<param>
<key>id</key>
- <value>blocks_vector_source_x_0_1_0</value>
+ <value>puncpat</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>vector</key>
- <value>4*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
- </param>
- <param>
- <key>tags</key>
- <value>[]</value>
+ <key>label</key>
+ <value></value>
</param>
<param>
- <key>repeat</key>
- <value>True</value>
+ <key>value</key>
+ <value>'11'</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>type</key>
+ <value>string</value>
</param>
<param>
- <key>alias</key>
+ <key>short_id</key>
<value></value>
</param>
<param>
- <key>affinity</key>
+ <key>alias</key>
<value></value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
<key>_coordinate</key>
- <value>(94, 226)</value>
+ <value>(211, 11)</value>
</param>
<param>
<key>_rotation</key>
- <value>180</value>
+ <value>0</value>
</param>
</block>
<block>
<key>parameter</key>
<param>
<key>id</key>
- <value>puncpat</value>
+ <value>MTU</value>
</param>
<param>
<key>_enabled</key>
@@ -293,15 +250,15 @@
</param>
<param>
<key>label</key>
- <value></value>
+ <value>MTU</value>
</param>
<param>
<key>value</key>
- <value>'11'</value>
+ <value>1000</value>
</param>
<param>
<key>type</key>
- <value>string</value>
+ <value>intx</value>
</param>
<param>
<key>short_id</key>
@@ -313,34 +270,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(247, 11)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_ctrlport_monitor_performance</key>
- <param>
- <key>id</key>
- <value>blocks_ctrlport_monitor_performance_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>False</value>
- </param>
- <param>
- <key>en</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(651, 10)</value>
+ <value>(292, 11)</value>
</param>
<param>
<key>_rotation</key>
@@ -379,7 +309,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(483, 10)</value>
+ <value>(373, 11)</value>
</param>
<param>
<key>_rotation</key>
@@ -387,34 +317,18 @@
</param>
</block>
<block>
- <key>variable_dummy_encoder_def</key>
+ <key>blocks_ctrlport_monitor_performance</key>
<param>
<key>id</key>
- <value>enc_dummy</value>
+ <value>blocks_ctrlport_monitor_performance_0</value>
</param>
<param>
<key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"ok"</value>
- </param>
- <param>
- <key>ndim</key>
- <value>1</value>
- </param>
- <param>
- <key>dim1</key>
- <value>1</value>
- </param>
- <param>
- <key>dim2</key>
- <value>1</value>
+ <value>False</value>
</param>
<param>
- <key>framebits</key>
- <value>MTU*8</value>
+ <key>en</key>
+ <value>True</value>
</param>
<param>
<key>alias</key>
@@ -422,7 +336,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1209, 693)</value>
+ <value>(482, 12)</value>
</param>
<param>
<key>_rotation</key>
@@ -430,36 +344,36 @@
</param>
</block>
<block>
- <key>analog_random_source_x</key>
+ <key>blocks_vector_source_x</key>
<param>
<key>id</key>
- <value>analog_random_source_x_0</value>
+ <value>blocks_vector_source_x_0_1_0</value>
</param>
<param>
<key>_enabled</key>
- <value>False</value>
+ <value>True</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
- <key>min</key>
- <value>0</value>
- </param>
- <param>
- <key>max</key>
- <value>256</value>
+ <key>vector</key>
+ <value>4*[0, 0, 1, 0, 3, 0, 7, 0, 15, 0, 31, 0, 63, 0, 127]</value>
</param>
<param>
- <key>num_samps</key>
- <value>1000</value>
+ <key>tags</key>
+ <value>[]</value>
</param>
<param>
<key>repeat</key>
<value>True</value>
</param>
<param>
+ <key>vlen</key>
+ <value>1</value>
+ </param>
+ <param>
<key>alias</key>
<value></value>
</param>
@@ -477,7 +391,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(92, 703)</value>
+ <value>(65, 137)</value>
</param>
<param>
<key>_rotation</key>
@@ -528,7 +442,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(120, 338)</value>
+ <value>(65, 218)</value>
</param>
<param>
<key>_rotation</key>
@@ -579,7 +493,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(119, 411)</value>
+ <value>(65, 267)</value>
</param>
<param>
<key>_rotation</key>
@@ -587,24 +501,36 @@
</param>
</block>
<block>
- <key>blocks_char_to_float</key>
+ <key>blocks_repack_bits_bb</key>
<param>
<key>id</key>
- <value>blocks_char_to_float_1_0</value>
+ <value>blocks_repack_bits_bb_0</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>k</key>
+ <value>8</value>
</param>
<param>
- <key>scale</key>
+ <key>l</key>
<value>1</value>
</param>
<param>
+ <key>len_tag_key</key>
+ <value>packet_len</value>
+ </param>
+ <param>
+ <key>align_output</key>
+ <value>False</value>
+ </param>
+ <param>
+ <key>swap</key>
+ <value>False</value>
+ </param>
+ <param>
<key>alias</key>
<value></value>
</param>
@@ -622,7 +548,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(937, 452)</value>
+ <value>(71, 333)</value>
</param>
<param>
<key>_rotation</key>
@@ -630,351 +556,322 @@
</param>
</block>
<block>
- <key>fec_extended_encoder</key>
+ <key>qtgui_time_sink_x</key>
<param>
<key>id</key>
- <value>fec_extended_encoder_2</value>
+ <value>qtgui_time_sink_x_3</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>encoder_list</key>
- <value>enc_ccsds</value>
- </param>
- <param>
- <key>threadtype</key>
- <value>none</value>
- </param>
- <param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>type</key>
+ <value>float</value>
</param>
<param>
- <key>lentagname</key>
- <value>length_tag</value>
+ <key>name</key>
+ <value>QT GUI Plot</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>size</key>
+ <value>2048</value>
</param>
<param>
- <key>affinity</key>
- <value></value>
+ <key>srate</key>
+ <value>samp_rate</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>autoscale</key>
+ <value>False</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>ymin</key>
+ <value>-0.5</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(598, 421)</value>
+ <key>ymax</key>
+ <value>1.5</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>nconnections</key>
+ <value>1</value>
</param>
- </block>
- <block>
- <key>parameter</key>
<param>
- <key>id</key>
- <value>MTU</value>
+ <key>update_time</key>
+ <value>0.05</value>
</param>
<param>
- <key>_enabled</key>
+ <key>entags</key>
<value>True</value>
</param>
<param>
- <key>label</key>
- <value>MTU</value>
- </param>
- <param>
- <key>value</key>
- <value>1000</value>
- </param>
- <param>
- <key>type</key>
- <value>intx</value>
+ <key>gui_hint</key>
+ <value>3,0,1,1</value>
</param>
<param>
- <key>short_id</key>
- <value></value>
+ <key>tr_mode</key>
+ <value>qtgui.TRIG_MODE_FREE</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>tr_slope</key>
+ <value>qtgui.TRIG_SLOPE_POS</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(364, 9)</value>
+ <key>tr_level</key>
+ <value>0.0</value>
</param>
<param>
- <key>_rotation</key>
+ <key>tr_delay</key>
<value>0</value>
</param>
- </block>
- <block>
- <key>blocks_char_to_float</key>
<param>
- <key>id</key>
- <value>blocks_char_to_float_1_0_0_0</value>
+ <key>tr_chan</key>
+ <value>0</value>
</param>
<param>
- <key>_enabled</key>
- <value>True</value>
+ <key>tr_tag</key>
+ <value>packet_len</value>
</param>
<param>
- <key>vlen</key>
- <value>1</value>
+ <key>label1</key>
+ <value>CC</value>
</param>
<param>
- <key>scale</key>
+ <key>width1</key>
<value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
+ <key>color1</key>
+ <value>"blue"</value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>style1</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>marker1</key>
+ <value>-1</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(936, 326)</value>
+ <key>alpha1</key>
+ <value>1.0</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>label2</key>
+ <value>CC</value>
</param>
- </block>
- <block>
- <key>blocks_char_to_float</key>
<param>
- <key>id</key>
- <value>blocks_char_to_float_1_0_0</value>
+ <key>width2</key>
+ <value>1</value>
</param>
<param>
- <key>_enabled</key>
- <value>True</value>
+ <key>color2</key>
+ <value>"red"</value>
</param>
<param>
- <key>vlen</key>
+ <key>style2</key>
<value>1</value>
</param>
<param>
- <key>scale</key>
- <value>1</value>
+ <key>marker2</key>
+ <value>-1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>alpha2</key>
+ <value>0.6</value>
</param>
<param>
- <key>affinity</key>
+ <key>label3</key>
<value></value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>width3</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>color3</key>
+ <value>"green"</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(936, 197)</value>
+ <key>style3</key>
+ <value>1</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>marker3</key>
+ <value>-1</value>
</param>
- </block>
- <block>
- <key>fec_extended_encoder</key>
<param>
- <key>id</key>
- <value>fec_extended_encoder_0</value>
+ <key>alpha3</key>
+ <value>1.0</value>
</param>
<param>
- <key>_enabled</key>
- <value>True</value>
+ <key>label4</key>
+ <value></value>
</param>
<param>
- <key>encoder_list</key>
- <value>enc_dummy</value>
+ <key>width4</key>
+ <value>1</value>
</param>
<param>
- <key>threadtype</key>
- <value>none</value>
+ <key>color4</key>
+ <value>"black"</value>
</param>
<param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>style4</key>
+ <value>1</value>
</param>
<param>
- <key>lentagname</key>
- <value>length_tag</value>
+ <key>marker4</key>
+ <value>-1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>alpha4</key>
+ <value>1.0</value>
</param>
<param>
- <key>affinity</key>
+ <key>label5</key>
<value></value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>width5</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>color5</key>
+ <value>"cyan"</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(598, 166)</value>
+ <key>style5</key>
+ <value>1</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>marker5</key>
+ <value>-1</value>
</param>
- </block>
- <block>
- <key>fec_extended_encoder</key>
<param>
- <key>id</key>
- <value>fec_extended_encoder_1</value>
+ <key>alpha5</key>
+ <value>1.0</value>
</param>
<param>
- <key>_enabled</key>
- <value>True</value>
+ <key>label6</key>
+ <value></value>
</param>
<param>
- <key>encoder_list</key>
- <value>enc_rep</value>
+ <key>width6</key>
+ <value>1</value>
</param>
<param>
- <key>threadtype</key>
- <value>none</value>
+ <key>color6</key>
+ <value>"magenta"</value>
</param>
<param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>style6</key>
+ <value>1</value>
</param>
<param>
- <key>lentagname</key>
- <value>length_tag</value>
+ <key>marker6</key>
+ <value>-1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>alpha6</key>
+ <value>1.0</value>
</param>
<param>
- <key>affinity</key>
+ <key>label7</key>
<value></value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>width7</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>color7</key>
+ <value>"yellow"</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(598, 295)</value>
+ <key>style7</key>
+ <value>1</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>marker7</key>
+ <value>-1</value>
</param>
- </block>
- <block>
- <key>blocks_char_to_float</key>
<param>
- <key>id</key>
- <value>blocks_char_to_float_1</value>
+ <key>alpha7</key>
+ <value>1.0</value>
</param>
<param>
- <key>_enabled</key>
- <value>True</value>
+ <key>label8</key>
+ <value></value>
</param>
<param>
- <key>vlen</key>
+ <key>width8</key>
<value>1</value>
</param>
<param>
- <key>scale</key>
+ <key>color8</key>
+ <value>"dark red"</value>
+ </param>
+ <param>
+ <key>style8</key>
<value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>marker8</key>
+ <value>-1</value>
</param>
<param>
- <key>affinity</key>
+ <key>alpha8</key>
+ <value>1.0</value>
+ </param>
+ <param>
+ <key>label9</key>
<value></value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
+ <key>width9</key>
+ <value>1</value>
</param>
<param>
- <key>maxoutbuf</key>
- <value>0</value>
+ <key>color9</key>
+ <value>"dark green"</value>
</param>
<param>
- <key>_coordinate</key>
- <value>(936, 578)</value>
+ <key>style9</key>
+ <value>1</value>
</param>
<param>
- <key>_rotation</key>
- <value>0</value>
+ <key>marker9</key>
+ <value>-1</value>
</param>
- </block>
- <block>
- <key>fec_extended_encoder</key>
<param>
- <key>id</key>
- <value>fec_extended_encoder_3</value>
+ <key>alpha9</key>
+ <value>1.0</value>
</param>
<param>
- <key>_enabled</key>
- <value>True</value>
+ <key>label10</key>
+ <value></value>
</param>
<param>
- <key>encoder_list</key>
- <value>enc_cc</value>
+ <key>width10</key>
+ <value>1</value>
</param>
<param>
- <key>threadtype</key>
- <value>none</value>
+ <key>color10</key>
+ <value>"blue"</value>
</param>
<param>
- <key>puncpat</key>
- <value>puncpat</value>
+ <key>style10</key>
+ <value>1</value>
</param>
<param>
- <key>lentagname</key>
- <value>length_tag</value>
+ <key>marker10</key>
+ <value>-1</value>
+ </param>
+ <param>
+ <key>alpha10</key>
+ <value>1.0</value>
</param>
<param>
<key>alias</key>
@@ -985,16 +882,8 @@
<value></value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
<key>_coordinate</key>
- <value>(598, 547)</value>
+ <value>(819, 378)</value>
</param>
<param>
<key>_rotation</key>
@@ -1005,7 +894,7 @@
<key>qtgui_time_sink_x</key>
<param>
<key>id</key>
- <value>qtgui_time_sink_x_0</value>
+ <value>qtgui_time_sink_x_2</value>
</param>
<param>
<key>_enabled</key>
@@ -1053,7 +942,7 @@
</param>
<param>
<key>gui_hint</key>
- <value>0,0,1,1</value>
+ <value>2,0,1,1</value>
</param>
<param>
<key>tr_mode</key>
@@ -1081,7 +970,7 @@
</param>
<param>
<key>label1</key>
- <value>None</value>
+ <value>CCSDS</value>
</param>
<param>
<key>width1</key>
@@ -1329,7 +1218,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1167, 166)</value>
+ <value>(819, 282)</value>
</param>
<param>
<key>_rotation</key>
@@ -1664,7 +1553,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1167, 295)</value>
+ <value>(819, 185)</value>
</param>
<param>
<key>_rotation</key>
@@ -1672,322 +1561,339 @@
</param>
</block>
<block>
- <key>qtgui_time_sink_x</key>
+ <key>blocks_char_to_float</key>
<param>
<key>id</key>
- <value>qtgui_time_sink_x_2</value>
+ <value>blocks_char_to_float_1</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>type</key>
- <value>float</value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>name</key>
- <value>QT GUI Plot</value>
+ <key>scale</key>
+ <value>1</value>
</param>
<param>
- <key>size</key>
- <value>2048</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>srate</key>
- <value>samp_rate</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>autoscale</key>
- <value>False</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>ymin</key>
- <value>-0.5</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>ymax</key>
- <value>1.5</value>
+ <key>_coordinate</key>
+ <value>(643, 374)</value>
</param>
<param>
- <key>nconnections</key>
- <value>1</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>fec_extended_tagged_encoder</key>
<param>
- <key>update_time</key>
- <value>0.05</value>
+ <key>id</key>
+ <value>fec_extended_tagged_encoder_3</value>
</param>
<param>
- <key>entags</key>
+ <key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>gui_hint</key>
- <value>2,0,1,1</value>
+ <key>encoder_list</key>
+ <value>enc_cc</value>
</param>
<param>
- <key>tr_mode</key>
- <value>qtgui.TRIG_MODE_FREE</value>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
- <key>tr_slope</key>
- <value>qtgui.TRIG_SLOPE_POS</value>
+ <key>lentagname</key>
+ <value>length_tag</value>
</param>
<param>
- <key>tr_level</key>
- <value>0.0</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>tr_delay</key>
- <value>0</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>tr_chan</key>
+ <key>minoutbuf</key>
<value>0</value>
</param>
<param>
- <key>tr_tag</key>
- <value>packet_len</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>label1</key>
- <value>CCSDS</value>
+ <key>_coordinate</key>
+ <value>(376, 358)</value>
</param>
<param>
- <key>width1</key>
- <value>1</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
<param>
- <key>color1</key>
- <value>"blue"</value>
+ <key>id</key>
+ <value>blocks_char_to_float_1_0</value>
</param>
<param>
- <key>style1</key>
- <value>1</value>
+ <key>_enabled</key>
+ <value>True</value>
</param>
<param>
- <key>marker1</key>
- <value>-1</value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>alpha1</key>
- <value>1.0</value>
+ <key>scale</key>
+ <value>1</value>
</param>
<param>
- <key>label2</key>
- <value>CC</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>width2</key>
- <value>1</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>color2</key>
- <value>"red"</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>style2</key>
- <value>1</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>marker2</key>
- <value>-1</value>
+ <key>_coordinate</key>
+ <value>(643, 295)</value>
</param>
<param>
- <key>alpha2</key>
- <value>0.6</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>fec_extended_tagged_encoder</key>
<param>
- <key>label3</key>
- <value></value>
+ <key>id</key>
+ <value>fec_extended_tagged_encoder_2</value>
</param>
<param>
- <key>width3</key>
- <value>1</value>
+ <key>_enabled</key>
+ <value>True</value>
</param>
<param>
- <key>color3</key>
- <value>"green"</value>
+ <key>encoder_list</key>
+ <value>enc_ccsds</value>
</param>
<param>
- <key>style3</key>
- <value>1</value>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
- <key>marker3</key>
- <value>-1</value>
+ <key>lentagname</key>
+ <value>length_tag</value>
</param>
<param>
- <key>alpha3</key>
- <value>1.0</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>label4</key>
+ <key>affinity</key>
<value></value>
</param>
<param>
- <key>width4</key>
- <value>1</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>color4</key>
- <value>"black"</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>style4</key>
- <value>1</value>
+ <key>_coordinate</key>
+ <value>(376, 279)</value>
</param>
<param>
- <key>marker4</key>
- <value>-1</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
<param>
- <key>alpha4</key>
- <value>1.0</value>
+ <key>id</key>
+ <value>blocks_char_to_float_1_0_0_0</value>
</param>
<param>
- <key>label5</key>
- <value></value>
+ <key>_enabled</key>
+ <value>True</value>
</param>
<param>
- <key>width5</key>
+ <key>vlen</key>
<value>1</value>
</param>
<param>
- <key>color5</key>
- <value>"cyan"</value>
- </param>
- <param>
- <key>style5</key>
+ <key>scale</key>
<value>1</value>
</param>
<param>
- <key>marker5</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha5</key>
- <value>1.0</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>label6</key>
+ <key>affinity</key>
<value></value>
</param>
<param>
- <key>width6</key>
- <value>1</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>color6</key>
- <value>"magenta"</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>style6</key>
- <value>1</value>
+ <key>_coordinate</key>
+ <value>(642, 216)</value>
</param>
<param>
- <key>marker6</key>
- <value>-1</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>fec_extended_tagged_encoder</key>
<param>
- <key>alpha6</key>
- <value>1.0</value>
+ <key>id</key>
+ <value>fec_extended_tagged_encoder_1</value>
</param>
<param>
- <key>label7</key>
- <value></value>
+ <key>_enabled</key>
+ <value>True</value>
</param>
<param>
- <key>width7</key>
- <value>1</value>
+ <key>encoder_list</key>
+ <value>enc_rep</value>
</param>
<param>
- <key>color7</key>
- <value>"yellow"</value>
+ <key>puncpat</key>
+ <value>puncpat</value>
</param>
<param>
- <key>style7</key>
- <value>1</value>
+ <key>lentagname</key>
+ <value>length_tag</value>
</param>
<param>
- <key>marker7</key>
- <value>-1</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>alpha7</key>
- <value>1.0</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>label8</key>
- <value></value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>width8</key>
- <value>1</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>color8</key>
- <value>"dark red"</value>
+ <key>_coordinate</key>
+ <value>(376, 200)</value>
</param>
<param>
- <key>style8</key>
- <value>1</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>blocks_char_to_float</key>
<param>
- <key>marker8</key>
- <value>-1</value>
+ <key>id</key>
+ <value>blocks_char_to_float_1_0_0</value>
</param>
<param>
- <key>alpha8</key>
- <value>1.0</value>
+ <key>_enabled</key>
+ <value>True</value>
</param>
<param>
- <key>label9</key>
- <value></value>
+ <key>vlen</key>
+ <value>1</value>
</param>
<param>
- <key>width9</key>
+ <key>scale</key>
<value>1</value>
</param>
<param>
- <key>color9</key>
- <value>"dark green"</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>style9</key>
- <value>1</value>
+ <key>affinity</key>
+ <value></value>
</param>
<param>
- <key>marker9</key>
- <value>-1</value>
+ <key>minoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>alpha9</key>
- <value>1.0</value>
+ <key>maxoutbuf</key>
+ <value>0</value>
</param>
<param>
- <key>label10</key>
- <value></value>
+ <key>_coordinate</key>
+ <value>(643, 137)</value>
</param>
<param>
- <key>width10</key>
- <value>1</value>
+ <key>_rotation</key>
+ <value>0</value>
</param>
+ </block>
+ <block>
+ <key>fec_extended_tagged_encoder</key>
<param>
- <key>color10</key>
- <value>"blue"</value>
+ <key>id</key>
+ <value>fec_extended_tagged_encoder_0</value>
</param>
<param>
- <key>style10</key>
- <value>1</value>
+ <key>_enabled</key>
+ <value>True</value>
</param>
<param>
- <key>marker10</key>
- <value>-1</value>
+ <key>encoder_list</key>
+ <value>enc_dummy</value>
</param>
<param>
- <key>alpha10</key>
- <value>1.0</value>
+ <key>puncpat</key>
+ <value>puncpat</value>
+ </param>
+ <param>
+ <key>lentagname</key>
+ <value>length_tag</value>
</param>
<param>
<key>alias</key>
@@ -1998,8 +1904,16 @@
<value></value>
</param>
<param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
<key>_coordinate</key>
- <value>(1168, 421)</value>
+ <value>(376, 121)</value>
</param>
<param>
<key>_rotation</key>
@@ -2010,7 +1924,7 @@
<key>qtgui_time_sink_x</key>
<param>
<key>id</key>
- <value>qtgui_time_sink_x_3</value>
+ <value>qtgui_time_sink_x_0</value>
</param>
<param>
<key>_enabled</key>
@@ -2058,7 +1972,7 @@
</param>
<param>
<key>gui_hint</key>
- <value>3,0,1,1</value>
+ <value>0,0,1,1</value>
</param>
<param>
<key>tr_mode</key>
@@ -2086,7 +2000,7 @@
</param>
<param>
<key>label1</key>
- <value>CC</value>
+ <value>None</value>
</param>
<param>
<key>width1</key>
@@ -2334,7 +2248,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(1167, 547)</value>
+ <value>(819, 88)</value>
</param>
<param>
<key>_rotation</key>
@@ -2342,57 +2256,65 @@
</param>
</block>
<block>
- <key>variable_repetition_encoder_def</key>
+ <key>analog_random_source_x</key>
<param>
<key>id</key>
- <value>enc_rep</value>
+ <value>analog_random_source_x_0</value>
</param>
<param>
<key>_enabled</key>
- <value>True</value>
+ <value>False</value>
</param>
<param>
- <key>value</key>
- <value>"ok"</value>
+ <key>type</key>
+ <value>byte</value>
</param>
<param>
- <key>ndim</key>
- <value>1</value>
+ <key>min</key>
+ <value>0</value>
</param>
<param>
- <key>dim1</key>
- <value>1</value>
+ <key>max</key>
+ <value>256</value>
</param>
<param>
- <key>dim2</key>
- <value>1</value>
+ <key>num_samps</key>
+ <value>1000</value>
</param>
<param>
- <key>framebits</key>
- <value>MTU*8</value>
+ <key>repeat</key>
+ <value>True</value>
</param>
<param>
- <key>rep</key>
- <value>3</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>alias</key>
+ <key>affinity</key>
<value></value>
</param>
<param>
+ <key>minoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
+ <key>maxoutbuf</key>
+ <value>0</value>
+ </param>
+ <param>
<key>_coordinate</key>
- <value>(1210, 819)</value>
+ <value>(53, 447)</value>
</param>
<param>
<key>_rotation</key>
- <value>0</value>
+ <value>180</value>
</param>
</block>
<block>
- <key>variable_ccsds_encoder_def</key>
+ <key>variable_cc_encoder_def</key>
<param>
<key>id</key>
- <value>enc_ccsds</value>
+ <value>enc_cc</value>
</param>
<param>
<key>_enabled</key>
@@ -2412,13 +2334,25 @@
</param>
<param>
<key>dim2</key>
- <value>4</value>
+ <value>1</value>
</param>
<param>
<key>framebits</key>
<value>MTU*8</value>
</param>
<param>
+ <key>k</key>
+ <value>k</value>
+ </param>
+ <param>
+ <key>rate</key>
+ <value>rate</value>
+ </param>
+ <param>
+ <key>polys</key>
+ <value>polys</value>
+ </param>
+ <param>
<key>state_start</key>
<value>0</value>
</param>
@@ -2432,7 +2366,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(909, 693)</value>
+ <value>(153, 547)</value>
</param>
<param>
<key>_rotation</key>
@@ -2440,10 +2374,10 @@
</param>
</block>
<block>
- <key>variable_cc_encoder_def</key>
+ <key>variable_repetition_encoder_def</key>
<param>
<key>id</key>
- <value>enc_cc</value>
+ <value>enc_rep</value>
</param>
<param>
<key>_enabled</key>
@@ -2470,16 +2404,51 @@
<value>MTU*8</value>
</param>
<param>
- <key>k</key>
- <value>k</value>
+ <key>rep</key>
+ <value>3</value>
</param>
<param>
- <key>rate</key>
- <value>rate</value>
+ <key>alias</key>
+ <value></value>
</param>
<param>
- <key>polys</key>
- <value>polys</value>
+ <key>_coordinate</key>
+ <value>(541, 611)</value>
+ </param>
+ <param>
+ <key>_rotation</key>
+ <value>0</value>
+ </param>
+ </block>
+ <block>
+ <key>variable_ccsds_encoder_def</key>
+ <param>
+ <key>id</key>
+ <value>enc_ccsds</value>
+ </param>
+ <param>
+ <key>_enabled</key>
+ <value>True</value>
+ </param>
+ <param>
+ <key>value</key>
+ <value>"ok"</value>
+ </param>
+ <param>
+ <key>ndim</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim1</key>
+ <value>1</value>
+ </param>
+ <param>
+ <key>dim2</key>
+ <value>4</value>
+ </param>
+ <param>
+ <key>framebits</key>
+ <value>MTU*8</value>
</param>
<param>
<key>state_start</key>
@@ -2495,7 +2464,7 @@
</param>
<param>
<key>_coordinate</key>
- <value>(618, 691)</value>
+ <value>(349, 595)</value>
</param>
<param>
<key>_rotation</key>
@@ -2503,50 +2472,42 @@
</param>
</block>
<block>
- <key>blocks_repack_bits_bb</key>
+ <key>variable_dummy_encoder_def</key>
<param>
<key>id</key>
- <value>blocks_repack_bits_bb_0</value>
+ <value>enc_dummy</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
- <key>k</key>
- <value>8</value>
+ <key>value</key>
+ <value>"ok"</value>
</param>
<param>
- <key>l</key>
+ <key>ndim</key>
<value>1</value>
</param>
<param>
- <key>len_tag_key</key>
- <value>packet_len</value>
+ <key>dim1</key>
+ <value>1</value>
</param>
<param>
- <key>align_output</key>
- <value>False</value>
+ <key>dim2</key>
+ <value>1</value>
</param>
<param>
- <key>alias</key>
- <value></value>
+ <key>framebits</key>
+ <value>MTU*8</value>
</param>
<param>
- <key>affinity</key>
+ <key>alias</key>
<value></value>
</param>
<param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
<key>_coordinate</key>
- <value>(145, 509)</value>
+ <value>(738, 627)</value>
</param>
<param>
<key>_rotation</key>
@@ -2572,62 +2533,62 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_3</sink_block_id>
+ <source_block_id>blocks_throttle_0</source_block_id>
+ <sink_block_id>blocks_stream_to_tagged_stream_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>blocks_stream_to_tagged_stream_0_0</sink_block_id>
+ <source_block_id>blocks_repack_bits_bb_0</source_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_3</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_0</sink_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_2</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_1</sink_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>fec_extended_encoder_2</sink_block_id>
+ <sink_block_id>fec_extended_tagged_encoder_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_2</sink_block_id>
+ <source_block_id>fec_extended_tagged_encoder_3</source_block_id>
+ <sink_block_id>blocks_char_to_float_1</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_2</source_block_id>
+ <source_block_id>fec_extended_tagged_encoder_2</source_block_id>
<sink_block_id>blocks_char_to_float_1_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_0</source_block_id>
- <sink_block_id>blocks_char_to_float_1_0_0</sink_block_id>
+ <source_block_id>fec_extended_tagged_encoder_1</source_block_id>
+ <sink_block_id>blocks_char_to_float_1_0_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1_0_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
+ <source_block_id>fec_extended_tagged_encoder_0</source_block_id>
+ <sink_block_id>blocks_char_to_float_1_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_1</source_block_id>
- <sink_block_id>blocks_char_to_float_1_0_0_0</sink_block_id>
+ <source_block_id>blocks_char_to_float_1</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_3</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
@@ -2638,14 +2599,14 @@
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>blocks_char_to_float_1</source_block_id>
- <sink_block_id>qtgui_time_sink_x_3</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_0_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
- <source_block_id>fec_extended_encoder_3</source_block_id>
- <sink_block_id>blocks_char_to_float_1</sink_block_id>
+ <source_block_id>blocks_char_to_float_1_0</source_block_id>
+ <sink_block_id>qtgui_time_sink_x_2</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
diff --git a/gr-fec/grc/fec_async_encoder.xml b/gr-fec/grc/fec_async_encoder.xml
index d552210523..16a01edb91 100644
--- a/gr-fec/grc/fec_async_encoder.xml
+++ b/gr-fec/grc/fec_async_encoder.xml
@@ -3,15 +3,45 @@
<name>FEC Async Encoder</name>
<key>fec_async_encoder</key>
<import>from gnuradio import fec</import>
- <make>fec.async_encoder($encoder)</make>
+ <make>fec.async_encoder($encoder, $rev_unpack, $rev_pack)</make>
<param>
- <name>Constituent Encoder</name>
+ <name>Encoder Obj.</name>
<key>encoder</key>
<value>encoder_variable</value>
<type>raw</type>
</param>
+ <param>
+ <name>Rev. Unpacking</name>
+ <key>rev_unpack</key>
+ <value>True</value>
+ <type>enum</type>
+ <option>
+ <name>Yes</name>
+ <key>True</key>
+ </option>
+ <option>
+ <name>No</name>
+ <key>False</key>
+ </option>
+ </param>
+
+ <param>
+ <name>Rev. Packing</name>
+ <key>rev_pack</key>
+ <value>True</value>
+ <type>enum</type>
+ <option>
+ <name>Yes</name>
+ <key>True</key>
+ </option>
+ <option>
+ <name>No</name>
+ <key>False</key>
+ </option>
+ </param>
+
<sink>
<name>in</name>
<type>message</type>
diff --git a/gr-fec/grc/fec_block_tree.xml b/gr-fec/grc/fec_block_tree.xml
index c229be2e4a..c674531e3f 100644
--- a/gr-fec/grc/fec_block_tree.xml
+++ b/gr-fec/grc/fec_block_tree.xml
@@ -23,7 +23,9 @@
</cat>
<block>fec_extended_encoder</block>
<block>fec_extended_async_encoder</block>
+ <block>fec_extended_tagged_encoder</block>
<block>fec_extended_decoder</block>
+ <block>fec_extended_tagged_decoder</block>
<block>fec_generic_encoder</block>
<block>fec_generic_decoder</block>
<block>fec_tagged_encoder</block>
diff --git a/gr-fec/grc/fec_extended_decoder.xml b/gr-fec/grc/fec_extended_decoder.xml
index b41c18a9ea..4262a395ae 100644
--- a/gr-fec/grc/fec_extended_decoder.xml
+++ b/gr-fec/grc/fec_extended_decoder.xml
@@ -3,7 +3,7 @@
<name>FEC Extended Decoder</name>
<key>fec_extended_decoder</key>
<import>from gnuradio import fec</import>
- <make>self.$(id) = $(id) = fec.extended_decoder(decoder_obj_list=$decoder_list, threading=$threadtype.arg, ann=$ann, puncpat=$puncpat, integration_period=10000, lentagname=$lentagname)</make>
+ <make>self.$(id) = $(id) = fec.extended_decoder(decoder_obj_list=$decoder_list, threading=$threadtype.arg, ann=$ann, puncpat=$puncpat, integration_period=10000)</make>
<param>
<name>fake val</name>
@@ -55,13 +55,6 @@
<type>string</type>
</param>
- <param>
- <name>Length Tag Name</name>
- <key>lentagname</key>
- <value>None</value>
- <type>string</type>
- </param>
-
<sink>
<name>in</name>
<type>float</type>
diff --git a/gr-fec/grc/fec_extended_encoder.xml b/gr-fec/grc/fec_extended_encoder.xml
index 2c785c7d83..d2a3ec87db 100644
--- a/gr-fec/grc/fec_extended_encoder.xml
+++ b/gr-fec/grc/fec_extended_encoder.xml
@@ -3,7 +3,7 @@
<name>FEC Extended Encoder</name>
<key>fec_extended_encoder</key>
<import>from gnuradio import fec</import>
- <make>fec.extended_encoder(encoder_obj_list=$encoder_list, threading=$threadtype.arg, puncpat=$puncpat, lentagname=$lentagname)</make>
+ <make>fec.extended_encoder(encoder_obj_list=$encoder_list, threading=$threadtype.arg, puncpat=$puncpat)</make>
<param>
<name>Encoder Objects</name>
@@ -40,13 +40,6 @@
<type>string</type>
</param>
- <param>
- <name>Length Tag Name</name>
- <key>lentagname</key>
- <value>None</value>
- <type>string</type>
- </param>
-
<sink>
<name>in</name>
<type>byte</type>
diff --git a/gr-fec/grc/fec_extended_tagged_decoder.xml b/gr-fec/grc/fec_extended_tagged_decoder.xml
new file mode 100644
index 0000000000..b198da2158
--- /dev/null
+++ b/gr-fec/grc/fec_extended_tagged_decoder.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<block>
+ <name>FEC Extended Tagged Decoder</name>
+ <key>fec_extended_tagged_decoder</key>
+ <import>from gnuradio import fec</import>
+ <make>self.$(id) = $(id) = fec.extended_tagged_decoder(decoder_obj_list=$decoder_list, ann=$ann, puncpat=$puncpat, integration_period=10000, lentagname=$lentagname)</make>
+
+ <param>
+ <name>fake val</name>
+ <key>value</key>
+ <value>fec_extended_decoder</value>
+ <type>string</type>
+ <hide>all</hide>
+ </param>
+
+ <param>
+ <name>Decoder Objects</name>
+ <key>decoder_list</key>
+ <value>decoder_variable</value>
+ <type>raw</type>
+ </param>
+
+ <param>
+ <name>Annihilator</name>
+ <key>ann</key>
+ <value>None</value>
+ <type>raw</type>
+ </param>
+
+ <param>
+ <name>Puncture Pattern</name>
+ <key>puncpat</key>
+ <value>'11'</value>
+ <type>string</type>
+ </param>
+
+ <param>
+ <name>Length Tag Name</name>
+ <key>lentagname</key>
+ <value>None</value>
+ <type>string</type>
+ </param>
+
+ <sink>
+ <name>in</name>
+ <type>float</type>
+ </sink>
+
+ <source>
+ <name>out</name>
+ <type>byte</type>
+ </source>
+
+ <doc>
+
+ </doc>
+
+</block>
diff --git a/gr-fec/grc/fec_extended_tagged_encoder.xml b/gr-fec/grc/fec_extended_tagged_encoder.xml
new file mode 100644
index 0000000000..b5253296e7
--- /dev/null
+++ b/gr-fec/grc/fec_extended_tagged_encoder.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+<block>
+ <name>FEC Extended Tagged Encoder</name>
+ <key>fec_extended_tagged_encoder</key>
+ <import>from gnuradio import fec</import>
+ <make>fec.extended_tagged_encoder(encoder_obj_list=$encoder_list, puncpat=$puncpat, lentagname=$lentagname)</make>
+
+ <param>
+ <name>Encoder Objects</name>
+ <key>encoder_list</key>
+ <value>encoder_variable</value>
+ <type>raw</type>
+ </param>
+
+ <param>
+ <name>Puncture Pattern</name>
+ <key>puncpat</key>
+ <value>'11'</value>
+ <type>string</type>
+ </param>
+
+ <param>
+ <name>Length Tag Name</name>
+ <key>lentagname</key>
+ <value>None</value>
+ <type>string</type>
+ </param>
+
+ <sink>
+ <name>in</name>
+ <type>byte</type>
+ </sink>
+
+ <source>
+ <name>out</name>
+ <type>byte</type>
+ </source>
+
+ <doc>
+
+ </doc>
+
+</block>
diff --git a/gr-fec/grc/variable_cc_decoder_def_list.xml b/gr-fec/grc/variable_cc_decoder_def_list.xml
index 37e5cb65dc..87f88a02fb 100644
--- a/gr-fec/grc/variable_cc_decoder_def_list.xml
+++ b/gr-fec/grc/variable_cc_decoder_def_list.xml
@@ -9,7 +9,9 @@
<key>variable_cc_decoder_def</key>
<import>from gnuradio import fec</import>
<var_make>
-#if int($ndim())==1 #
+#if int($ndim())==0 #
+self.$(id) = $(id) = fec.cc_decoder.make($framebits, $k, $rate, $polys, $state_start, $state_end, $mode)
+#else if int($ndim())==1 #
self.$(id) = $(id) = map( (lambda a: fec.cc_decoder.make($framebits, $k, $rate, $polys, $state_start, $state_end, $mode)), range(0,$dim1) ); #slurp
#else
self.$(id) = $(id) = map( (lambda b: map( ( lambda a: fec.cc_decoder.make($framebits, $k, $rate, $polys, $state_start, $state_end, $mode)), range(0,$dim2) ) ), range(0,$dim1)); #slurp
@@ -27,9 +29,13 @@ self.$(id) = $(id) = map( (lambda b: map( ( lambda a: fec.cc_decoder.make($frame
<param>
<name>Parallelism</name>
<key>ndim</key>
- <value></value>
+ <value>0</value>
<type>enum</type>
<option>
+ <name>0</name>
+ <key>0</key>
+ </option>
+ <option>
<name>1</name>
<key>1</key>
</option>
diff --git a/gr-fec/grc/variable_cc_encoder_def_list.xml b/gr-fec/grc/variable_cc_encoder_def_list.xml
index 7e56cf11a1..14c8f12e0f 100644
--- a/gr-fec/grc/variable_cc_encoder_def_list.xml
+++ b/gr-fec/grc/variable_cc_encoder_def_list.xml
@@ -9,7 +9,9 @@
<key>variable_cc_encoder_def</key>
<import>from gnuradio import fec</import>
<var_make>
-#if int($ndim())==1 #
+#if int($ndim())==0 #
+self.$(id) = $(id) = fec.cc_encoder_make($framebits, $k, $rate, $polys, $state_start, $mode)
+#else if int($ndim())==1 #
self.$(id) = $(id) = map( (lambda a: fec.cc_encoder_make($framebits, $k, $rate, $polys, $state_start, $mode)), range(0,$dim1) ); #slurp
#else
self.$(id) = $(id) = map( (lambda b: map( ( lambda a: fec.cc_encoder_make($framebits, $k, $rate, $polys, $state_start, $mode)), range(0,$dim2) ) ), range(0,$dim1)); #slurp
@@ -27,9 +29,13 @@ self.$(id) = $(id) = map( (lambda b: map( ( lambda a: fec.cc_encoder_make($frame
<param>
<name>Parallelism</name>
<key>ndim</key>
- <value></value>
+ <value>0</value>
<type>enum</type>
<option>
+ <name>0</name>
+ <key>0</key>
+ </option>
+ <option>
<name>1</name>
<key>1</key>
</option>
diff --git a/gr-fec/grc/variable_ccsds_encoder_def_list.xml b/gr-fec/grc/variable_ccsds_encoder_def_list.xml
index 8a9fde8a6e..fb0cb05a80 100644
--- a/gr-fec/grc/variable_ccsds_encoder_def_list.xml
+++ b/gr-fec/grc/variable_ccsds_encoder_def_list.xml
@@ -9,7 +9,9 @@
<key>variable_ccsds_encoder_def</key>
<import>from gnuradio import fec</import>
<var_make>
-#if int($ndim())==1 #
+#if int($ndim())==0 #
+self.$(id) = $(id) = fec.ccsds_encoder_make($framebits, $state_start, $mode)
+#else if int($ndim())==1 #
self.$(id) = $(id) = map( (lambda a: fec.ccsds_encoder_make($framebits, $state_start, $mode)), range(0,$dim1) ); #slurp
#else
self.$(id) = $(id) = map( (lambda b: map( ( lambda a: fec.ccsds_encoder_make($framebits, $state_start, $mode)), range(0,$dim2) ) ), range(0,$dim1)); #slurp
@@ -27,9 +29,13 @@ self.$(id) = $(id) = map( (lambda b: map( ( lambda a: fec.ccsds_encoder_make($fr
<param>
<name>Parallelism</name>
<key>ndim</key>
- <value></value>
+ <value>0</value>
<type>enum</type>
<option>
+ <name>0</name>
+ <key>0</key>
+ </option>
+ <option>
<name>1</name>
<key>1</key>
</option>
diff --git a/gr-fec/grc/variable_dummy_encoder_def_list.xml b/gr-fec/grc/variable_dummy_encoder_def_list.xml
index 086ac20876..c2c3f3f995 100644
--- a/gr-fec/grc/variable_dummy_encoder_def_list.xml
+++ b/gr-fec/grc/variable_dummy_encoder_def_list.xml
@@ -29,7 +29,7 @@ self.$(id) = $(id) = map((lambda b: map((lambda a: fec.dummy_encoder_make($frame
<param>
<name>Parallelism</name>
<key>ndim</key>
- <value></value>
+ <value>0</value>
<type>enum</type>
<option>
<name>0</name>
diff --git a/gr-fec/grc/variable_repetition_encoder_def_list.xml b/gr-fec/grc/variable_repetition_encoder_def_list.xml
index 13c5682895..e2668b286c 100644
--- a/gr-fec/grc/variable_repetition_encoder_def_list.xml
+++ b/gr-fec/grc/variable_repetition_encoder_def_list.xml
@@ -12,9 +12,9 @@
#if int($ndim())==0 #
self.$(id) = $(id) = fec.repetition_encoder_make($framebits, $rep)
#else if int($ndim())==1 #
-self.$(id) = $(id) = map( (lambda a: fec.repetition_encoder_make($framebits, $rep)), range(0,$dim1) ) #slurp
+self.$(id) = $(id) = map((lambda a: fec.repetition_encoder_make($framebits, $rep)), range(0,$dim1)) #slurp
#else
-self.$(id) = $(id) = map( (lambda b: map( ( lambda a: fec.repetition_encoder_make($framebits, $rep)), range(0,$dim2) ) ), range(0,$dim1)) #slurp
+self.$(id) = $(id) = map((lambda b: map((lambda a: fec.repetition_encoder_make($framebits, $rep)), range(0,$dim2))), range(0,$dim1)) #slurp
#end if</var_make>
<make></make>
diff --git a/gr-fec/include/gnuradio/fec/async_encoder.h b/gr-fec/include/gnuradio/fec/async_encoder.h
index a59f47d19e..d0d160e079 100644
--- a/gr-fec/include/gnuradio/fec/async_encoder.h
+++ b/gr-fec/include/gnuradio/fec/async_encoder.h
@@ -50,8 +50,11 @@ namespace gr {
* Build the PDU-based FEC encoder block from an FECAPI encoder object.
*
* \param my_encoder An FECAPI encoder object child of the generic_encoder class.
+ * \param rev_unpack Reverse the unpacking order from input bytes to bits
+ * \param rev_pack Reverse the packing order from bits to output bytes
*/
- static sptr make(generic_encoder::sptr my_encoder);
+ static sptr make(generic_encoder::sptr my_encoder,
+ bool rev_unpack=true, bool rev_pack=true);
virtual int general_work(int noutput_items,
gr_vector_int& ninput_items,
diff --git a/gr-fec/lib/async_encoder_impl.cc b/gr-fec/lib/async_encoder_impl.cc
index de760b1c69..4856dfd564 100644
--- a/gr-fec/lib/async_encoder_impl.cc
+++ b/gr-fec/lib/async_encoder_impl.cc
@@ -33,13 +33,15 @@ namespace gr {
namespace fec {
async_encoder::sptr
- async_encoder::make(generic_encoder::sptr my_encoder)
+ async_encoder::make(generic_encoder::sptr my_encoder,
+ bool rev_unpack, bool rev_pack)
{
return gnuradio::get_initial_sptr
- (new async_encoder_impl(my_encoder));
+ (new async_encoder_impl(my_encoder, rev_unpack, rev_pack));
}
- async_encoder_impl::async_encoder_impl(generic_encoder::sptr my_encoder)
+ async_encoder_impl::async_encoder_impl(generic_encoder::sptr my_encoder,
+ bool rev_unpack, bool rev_pack)
: block("async_encoder",
io_signature::make(0,0,0),
io_signature::make(0,0,0)),
@@ -52,6 +54,9 @@ namespace gr {
d_unpack = new blocks::kernel::unpack_k_bits(8);
d_pack = new blocks::kernel::pack_k_bits(8);
+ d_rev_unpack = rev_unpack;
+ d_rev_pack = rev_pack;
+
message_port_register_in(d_in_port);
message_port_register_out(d_out_port);
set_msg_handler(d_in_port, boost::bind(&async_encoder_impl::encode, this ,_1) );
@@ -72,40 +77,44 @@ namespace gr {
int nbytes = pmt::length(bytes);
int nbits = 8*nbytes;
- size_t o0(0);
+ size_t o0 = 0;
const uint8_t* bytes_in = pmt::u8vector_elements(bytes, o0);
uint8_t* bits_in = (uint8_t*)volk_malloc(nbits*sizeof(uint8_t),
volk_get_alignment());
// Encoder takes a stream of bits, but PDU's are received as
// bytes, so we unpack them here.
- d_unpack->unpack(bits_in, bytes_in, nbytes);
+ if(d_rev_unpack)
+ d_unpack->unpack_rev(bits_in, bytes_in, nbytes);
+ else
+ d_unpack->unpack(bits_in, bytes_in, nbytes);
d_encoder->set_frame_size(nbits);
int nbits_out = d_encoder->get_output_size();
- int nbytes_out = nbits_out/8;
+ int nbytes_out = ceilf(static_cast<float>(nbits_out)/8.0f);
// buffers for bits/bytes to go to
uint8_t* bits_out = (uint8_t*)volk_malloc(nbits_out*sizeof(uint8_t),
volk_get_alignment());
- uint8_t* bytes_out = (uint8_t*)volk_malloc(nbytes_out*sizeof(uint8_t),
- volk_get_alignment());
+
+ pmt::pmt_t outvec = pmt::make_u8vector(nbytes_out, 0x00);
+ uint8_t* bytes_out = pmt::u8vector_writable_elements(outvec, o0);
// ENCODE!
d_encoder->generic_work((void*)bits_in, (void*)bits_out);
- // Stolen from pack_k_bits
- d_pack->pack(bytes_out, bits_out, nbytes_out);
+ // Encoder produces bits, so repack them here to bytes.
+ if(d_rev_pack)
+ d_pack->pack_rev(bytes_out, bits_out, nbytes_out);
+ else
+ d_pack->pack(bytes_out, bits_out, nbytes_out);
- //pmt::pmt_t outvec = pmt::init_u8vector(nouts, u8out);
- pmt::pmt_t outvec = pmt::init_u8vector(nbytes_out, bytes_out);
pmt::pmt_t msg_pair = pmt::cons(meta, outvec);
message_port_pub(d_out_port, msg_pair);
volk_free(bits_in);
volk_free(bits_out);
- volk_free(bytes_out);
}
int
diff --git a/gr-fec/lib/async_encoder_impl.h b/gr-fec/lib/async_encoder_impl.h
index 4090d77035..2c43b0d386 100644
--- a/gr-fec/lib/async_encoder_impl.h
+++ b/gr-fec/lib/async_encoder_impl.h
@@ -43,9 +43,12 @@ namespace gr {
void encode(pmt::pmt_t msg);
blocks::kernel::unpack_k_bits *d_unpack;
blocks::kernel::pack_k_bits *d_pack;
+ bool d_rev_unpack;
+ bool d_rev_pack;
public:
- async_encoder_impl(generic_encoder::sptr my_encoder);
+ async_encoder_impl(generic_encoder::sptr my_encoder,
+ bool rev_unpack=true, bool rev_pack=true);
~async_encoder_impl();
int general_work(int noutput_items,
diff --git a/gr-fec/lib/cc_decoder_impl.cc b/gr-fec/lib/cc_decoder_impl.cc
index efaf6c002d..6b7daaf4b2 100644
--- a/gr-fec/lib/cc_decoder_impl.cc
+++ b/gr-fec/lib/cc_decoder_impl.cc
@@ -64,7 +64,8 @@ namespace gr {
// Set max frame size here; all buffers and settings will be
// based on this value.
d_max_frame_size = frame_size;
- set_frame_size(frame_size);
+ d_frame_size = frame_size;
+ //set_frame_size(frame_size);
d_vp = new struct v;
@@ -78,6 +79,7 @@ namespace gr {
d_end_state = &d_end_state_chaining;
d_managed_in = (unsigned char*)volk_malloc(d_veclen*d_rate*sizeof(unsigned char),
volk_get_alignment());
+ d_veclen = d_frame_size + (6 * (d_k - 1));
d_managed_in_size = d_veclen * d_rate;
if(d_managed_in == NULL) {
throw std::runtime_error("cc_decoder: bad alloc for d_managed_in\n");
@@ -85,14 +87,17 @@ namespace gr {
break;
case(CC_TRUNCATED):
+ d_veclen = d_frame_size;
d_end_state = &d_end_state_chaining;
break;
case(CC_TERMINATED):
+ d_veclen = d_frame_size + d_k - 1;
d_end_state = (end_state == -1) ? &d_end_state_chaining : &d_end_state_nonchaining;
break;
case(CC_STREAMING):
+ d_veclen = d_frame_size + d_k - 1;
d_end_state = &d_end_state_chaining;
break;
diff --git a/gr-fec/python/fec/CMakeLists.txt b/gr-fec/python/fec/CMakeLists.txt
index d810237761..032816866d 100644
--- a/gr-fec/python/fec/CMakeLists.txt
+++ b/gr-fec/python/fec/CMakeLists.txt
@@ -31,6 +31,8 @@ GR_PYTHON_INSTALL(
threaded_decoder.py
threaded_encoder.py
extended_async_encoder.py
+ extended_tagged_encoder.py
+ extended_tagged_decoder.py
fec_test.py
bercurve_generator.py
DESTINATION ${GR_PYTHON_DIR}/gnuradio/fec
diff --git a/gr-fec/python/fec/__init__.py b/gr-fec/python/fec/__init__.py
index 11f9c29f83..6c82232d4f 100644
--- a/gr-fec/python/fec/__init__.py
+++ b/gr-fec/python/fec/__init__.py
@@ -39,6 +39,8 @@ from threaded_decoder import threaded_decoder
from capillary_threaded_decoder import capillary_threaded_decoder
from capillary_threaded_encoder import capillary_threaded_encoder
from extended_async_encoder import extended_async_encoder
+from extended_tagged_encoder import extended_tagged_encoder
+from extended_tagged_decoder import extended_tagged_decoder
from fec_test import fec_test
diff --git a/gr-fec/python/fec/extended_decoder.py b/gr-fec/python/fec/extended_decoder.py
index 792d7dfeb3..7e6cf452f9 100644
--- a/gr-fec/python/fec/extended_decoder.py
+++ b/gr-fec/python/fec/extended_decoder.py
@@ -82,7 +82,7 @@ class extended_decoder(gr.hier_block2):
}
def __init__(self, decoder_obj_list, threading, ann=None, puncpat='11',
- integration_period=10000, flush=None, rotator=None, lentagname=None):
+ integration_period=10000, flush=None, rotator=None):
gr.hier_block2.__init__(self, "extended_decoder",
gr.io_signature(1, 1, gr.sizeof_float),
gr.io_signature(1, 1, gr.sizeof_char))
@@ -91,17 +91,13 @@ class extended_decoder(gr.hier_block2):
self.puncpat=puncpat
self.flush=flush
- if(type(decoder_obj_list[0]) == list):
- gr.log.info("fec.extended_decoder: Parallelism must be 1.")
- raise AttributeError
-
- if type(lentagname) == str:
- if(lentagname.lower() == 'none'):
- lentagname = None
-
- if lentagname and threading:
- gr.log.info("fec.extended_decoder: Cannot use threading with tagged_stream mode.")
- raise AttributeError
+ if(type(decoder_obj_list) == list):
+ if(type(decoder_obj_list[0]) == list):
+ gr.log.info("fec.extended_decoder: Parallelism must be 1.")
+ raise AttributeError
+ else:
+ # If it has parallelism of 0, force it into a list of 1
+ decoder_obj_list = [decoder_obj_list,]
message_collector_connected=False
@@ -136,10 +132,10 @@ class extended_decoder(gr.hier_block2):
for i in idx_list:
if 1.0/self.ann.count('1') >= i:
synd_garble = self.garbletable[i]
- print 'using syndrom garble threshold ' + str(synd_garble) + 'for corr_bb'
+ print 'using syndrom garble threshold ' + str(synd_garble) + 'for conv_bit_corr_bb'
print 'ceiling: .0335 data garble rate'
- self.blocks.append(fec.corr_bb(cat, len(puncpat) - puncpat.count('0'),
- len(ann), integration_period, flush, synd_garble))
+ self.blocks.append(fec.conv_bit_corr_bb(cat, len(puncpat) - puncpat.count('0'),
+ len(ann), integration_period, flush, synd_garble))
if self.puncpat != '11':
self.blocks.append(fec.depuncture_bb(len(puncpat), read_bitlist(puncpat), 0))
@@ -166,15 +162,9 @@ class extended_decoder(gr.hier_block2):
fec.get_decoder_output_item_size(decoder_obj_list[0])))
else:
- if(not lentagname):
- self.blocks.append(fec.decoder(decoder_obj_list[0],
- fec.get_decoder_input_item_size(decoder_obj_list[0]),
- fec.get_decoder_output_item_size(decoder_obj_list[0])))
- else:
- self.blocks.append(fec.tagged_decoder(decoder_obj_list[0],
- fec.get_decoder_input_item_size(decoder_obj_list[0]),
- fec.get_decoder_output_item_size(decoder_obj_list[0]),
- lentagname))
+ self.blocks.append(fec.decoder(decoder_obj_list[0],
+ fec.get_decoder_input_item_size(decoder_obj_list[0]),
+ fec.get_decoder_output_item_size(decoder_obj_list[0])))
if fec.get_decoder_output_conversion(decoder_obj_list[0]) == "unpack":
self.blocks.append(blocks.packed_to_unpacked_bb(1, gr.GR_MSB_FIRST));
diff --git a/gr-fec/python/fec/extended_encoder.py b/gr-fec/python/fec/extended_encoder.py
index f511b53a2b..50a8891ea5 100644
--- a/gr-fec/python/fec/extended_encoder.py
+++ b/gr-fec/python/fec/extended_encoder.py
@@ -28,8 +28,7 @@ from capillary_threaded_encoder import capillary_threaded_encoder
from bitflip import read_bitlist
class extended_encoder(gr.hier_block2):
- def __init__(self, encoder_obj_list, threading, puncpat=None,
- lentagname=None):
+ def __init__(self, encoder_obj_list, threading, puncpat=None):
gr.hier_block2.__init__(self, "extended_encoder",
gr.io_signature(1, 1, gr.sizeof_char),
gr.io_signature(1, 1, gr.sizeof_char))
@@ -37,17 +36,13 @@ class extended_encoder(gr.hier_block2):
self.blocks=[]
self.puncpat=puncpat
- if(type(encoder_obj_list[0]) == list):
- gr.log.info("fec.extended_encoder: Parallelism must be 1.")
- raise AttributeError
-
- if type(lentagname) == str:
- if(lentagname.lower() == 'none'):
- lentagname = None
-
- if lentagname and threading:
- gr.log.info("fec.extended_decoder: Cannot use threading with tagged_stream mode.")
- raise AttributeError
+ if(type(encoder_obj_list) == list):
+ if(type(encoder_obj_list[0]) == list):
+ gr.log.info("fec.extended_encoder: Parallelism must be 1.")
+ raise AttributeError
+ else:
+ # If it has parallelism of 0, force it into a list of 1
+ encoder_obj_list = [encoder_obj_list,]
if fec.get_encoder_input_conversion(encoder_obj_list[0]) == "pack":
self.blocks.append(blocks.pack_k_bits_bb(8))
@@ -61,15 +56,9 @@ class extended_encoder(gr.hier_block2):
gr.sizeof_char,
gr.sizeof_char))
else:
- if(not lentagname):
- self.blocks.append(fec.encoder(encoder_obj_list[0],
- gr.sizeof_char,
- gr.sizeof_char))
- else:
- self.blocks.append(fec.tagged_encoder(encoder_obj_list[0],
- gr.sizeof_char,
- gr.sizeof_char,
- lentagname))
+ self.blocks.append(fec.encoder(encoder_obj_list[0],
+ gr.sizeof_char,
+ gr.sizeof_char))
if self.puncpat != '11':
self.blocks.append(fec.puncture_bb(len(puncpat), read_bitlist(puncpat), 0))
diff --git a/gr-fec/python/fec/extended_tagged_decoder.py b/gr-fec/python/fec/extended_tagged_decoder.py
new file mode 100644
index 0000000000..1865cbfbe4
--- /dev/null
+++ b/gr-fec/python/fec/extended_tagged_decoder.py
@@ -0,0 +1,175 @@
+#!/usr/bin/env python
+#
+# Copyright 2014 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+#
+
+from gnuradio import gr, blocks
+import fec_swig as fec
+from bitflip import *
+import sys
+
+if sys.modules.has_key("gnuradio.digital"):
+ digital = sys.modules["gnuradio.digital"]
+else:
+ from gnuradio import digital
+
+class extended_tagged_decoder(gr.hier_block2):
+
+#solution to log_(1-2*t)(1-2*.0335) = 1/taps where t is thresh (syndrome density)
+#for i in numpy.arange(.1, .499, .01):
+ #print str(log((1-(2 * .035)), (1-(2 * i)))) + ':' + str(i);
+ garbletable = {
+ 0.310786835319:0.1,
+ 0.279118162802:0.11,
+ 0.252699589071:0.12,
+ 0.230318516016:0.13,
+ 0.211108735347:0.14,
+ 0.194434959095:0.15,
+ 0.179820650401:0.16,
+ 0.166901324951:0.17,
+ 0.15539341766:0.18,
+ 0.145072979886:0.19,
+ 0.135760766313:0.2,
+ 0.127311581396:0.21,
+ 0.119606529806:0.22,
+ 0.112547286766:0.23,
+ 0.106051798775:0.24,
+ 0.10005101381:0.25,
+ 0.0944863633098:0.26,
+ 0.0893078003966:0.27,
+ 0.084472254501:0.28,
+ 0.0799424008658:0.29,
+ 0.0756856701944:0.3,
+ 0.0716734425668:0.31,
+ 0.0678803831565:0.32,
+ 0.0642838867856:0.33,
+ 0.0608636049994:0.34,
+ 0.0576010337489:0.35,
+ 0.0544791422522:0.36,
+ 0.0514820241933:0.37,
+ 0.0485945507251:0.38,
+ 0.0458019998183:0.39,
+ 0.0430896262596:0.4,
+ 0.0404421166935:0.41,
+ 0.0378428350972:0.42,
+ 0.0352726843274:0.43,
+ 0.0327082350617:0.44,
+ 0.0301183562535:0.45,
+ 0.0274574540266:0.46,
+ 0.0246498236897:0.47,
+ 0.0215448131298:0.48,
+ 0.0177274208353:0.49,
+ }
+
+ def __init__(self, decoder_obj_list, ann=None, puncpat='11',
+ integration_period=10000, flush=None, rotator=None, lentagname=None):
+ gr.hier_block2.__init__(self, "extended_decoder",
+ gr.io_signature(1, 1, gr.sizeof_float),
+ gr.io_signature(1, 1, gr.sizeof_char))
+ self.blocks=[]
+ self.ann=ann
+ self.puncpat=puncpat
+ self.flush=flush
+
+ if(type(decoder_obj_list) == list):
+ # This block doesn't handle parallelism of > 1
+ # We could just grab encoder [0][0], but we don't want to encourage this.
+ if(type(decoder_obj_list[0]) == list):
+ gr.log.info("fec.extended_tagged_decoder: Parallelism must be 1.")
+ raise AttributeError
+
+ decoder_obj = decoder_obj_list[0]
+
+ # Otherwise, just take it as is
+ else:
+ decoder_obj = decoder_obj_list
+
+ # If lentagname is None, fall back to using the non tagged
+ # stream version
+ if type(lentagname) == str:
+ if(lentagname.lower() == 'none'):
+ lentagname = None
+
+ message_collector_connected=False
+
+ ##anything going through the annihilator needs shifted, uchar vals
+ if fec.get_decoder_input_conversion(decoder_obj) == "uchar" or \
+ fec.get_decoder_input_conversion(decoder_obj) == "packed_bits":
+ self.blocks.append(blocks.multiply_const_ff(48.0))
+
+ if fec.get_shift(decoder_obj) != 0.0:
+ self.blocks.append(blocks.add_const_ff(fec.get_shift(decoder_obj)))
+ elif fec.get_decoder_input_conversion(decoder_obj) == "packed_bits":
+ self.blocks.append(blocks.add_const_ff(128.0))
+
+ if fec.get_decoder_input_conversion(decoder_obj) == "uchar" or \
+ fec.get_decoder_input_conversion(decoder_obj) == "packed_bits":
+ self.blocks.append(blocks.float_to_uchar());
+
+ const_index = 0; #index that corresponds to mod order for specinvert purposes
+
+ if not self.flush:
+ flush = 10000;
+ else:
+ flush = self.flush;
+ if self.ann: #ann and puncpat are strings of 0s and 1s
+ cat = fec.ULLVector();
+ for i in fec.read_big_bitlist(ann):
+ cat.append(i);
+
+ synd_garble = .49
+ idx_list = self.garbletable.keys()
+ idx_list.sort()
+ for i in idx_list:
+ if 1.0/self.ann.count('1') >= i:
+ synd_garble = self.garbletable[i]
+ print 'using syndrom garble threshold ' + str(synd_garble) + 'for conv_bit_corr_bb'
+ print 'ceiling: .0335 data garble rate'
+ self.blocks.append(fec.conv_bit_corr_bb(cat, len(puncpat) - puncpat.count('0'),
+ len(ann), integration_period, flush, synd_garble))
+
+ if self.puncpat != '11':
+ self.blocks.append(fec.depuncture_bb(len(puncpat), read_bitlist(puncpat), 0))
+
+ if fec.get_decoder_input_conversion(decoder_obj) == "packed_bits":
+ self.blocks.append(blocks.uchar_to_float())
+ self.blocks.append(blocks.add_const_ff(-128.0))
+ self.blocks.append(digital.binary_slicer_fb())
+ self.blocks.append(blocks.unpacked_to_packed_bb(1,0))
+
+ else:
+ if(not lentagname):
+ self.blocks.append(fec.decoder(decoder_obj,
+ fec.get_decoder_input_item_size(decoder_obj),
+ fec.get_decoder_output_item_size(decoder_obj)))
+ else:
+ self.blocks.append(fec.tagged_decoder(decoder_obj,
+ fec.get_decoder_input_item_size(decoder_obj),
+ fec.get_decoder_output_item_size(decoder_obj),
+ lentagname))
+
+ if fec.get_decoder_output_conversion(decoder_obj) == "unpack":
+ self.blocks.append(blocks.packed_to_unpacked_bb(1, gr.GR_MSB_FIRST));
+
+ self.connect((self, 0), (self.blocks[0], 0));
+ self.connect((self.blocks[-1], 0), (self, 0));
+
+ for i in range(len(self.blocks) - 1):
+ self.connect((self.blocks[i], 0), (self.blocks[i+1], 0));
diff --git a/gr-fec/python/fec/extended_tagged_encoder.py b/gr-fec/python/fec/extended_tagged_encoder.py
new file mode 100644
index 0000000000..2f78b8e5c9
--- /dev/null
+++ b/gr-fec/python/fec/extended_tagged_encoder.py
@@ -0,0 +1,82 @@
+#!/usr/bin/env python
+#
+# Copyright 2014 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+#
+
+from gnuradio import gr, blocks
+
+import fec_swig as fec
+from bitflip import read_bitlist
+
+class extended_tagged_encoder(gr.hier_block2):
+ def __init__(self, encoder_obj_list, puncpat=None, lentagname=None):
+ gr.hier_block2.__init__(self, "extended_tagged_encoder",
+ gr.io_signature(1, 1, gr.sizeof_char),
+ gr.io_signature(1, 1, gr.sizeof_char))
+
+ self.blocks=[]
+ self.puncpat=puncpat
+
+ # If it's a list of encoders, take the first one, unless it's
+ # a list of lists of encoders.
+ if(type(encoder_obj_list) == list):
+ # This block doesn't handle parallelism of > 1
+ # We could just grab encoder [0][0], but we don't want to encourage this.
+ if(type(encoder_obj_list[0]) == list):
+ gr.log.info("fec.extended_tagged_encoder: Parallelism must be 0 or 1.")
+ raise AttributeError
+
+ encoder_obj = encoder_obj_list[0]
+
+ # Otherwise, just take it as is
+ else:
+ encoder_obj = encoder_obj_list
+
+ # If lentagname is None, fall back to using the non tagged
+ # stream version
+ if type(lentagname) == str:
+ if(lentagname.lower() == 'none'):
+ lentagname = None
+
+ if fec.get_encoder_input_conversion(encoder_obj) == "pack":
+ self.blocks.append(blocks.pack_k_bits_bb(8))
+
+ if(not lentagname):
+ self.blocks.append(fec.encoder(encoder_obj,
+ gr.sizeof_char,
+ gr.sizeof_char))
+ else:
+ self.blocks.append(fec.tagged_encoder(encoder_obj,
+ gr.sizeof_char,
+ gr.sizeof_char,
+ lentagname))
+
+ if self.puncpat != '11':
+ self.blocks.append(fec.puncture_bb(len(puncpat), read_bitlist(puncpat), 0))
+
+ # Connect the input to the encoder and the output to the
+ # puncture if used or the encoder if not.
+ self.connect((self, 0), (self.blocks[0], 0));
+ self.connect((self.blocks[-1], 0), (self, 0));
+
+ # If using the puncture block, add it into the flowgraph after
+ # the encoder.
+ for i in range(len(self.blocks) - 1):
+ self.connect((self.blocks[i], 0), (self.blocks[i+1], 0));