blob: bb1d77c0bae9d7142df2a03d861f4e6a8f277b35 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
<?xml version="1.0"?>
<block>
<name>Multiply by Matrix</name>
<key>blocks_multiply_matrix_xx</key>
<import>from gnuradio import blocks</import>
<make>blocks.multiply_matrix_$(type.fcn)($A, $tag_propagation_policy)</make>
<callback>set_A($A)</callback>
<param>
<name>IO Type</name>
<key>type</key>
<type>enum</type>
<option>
<name>Float</name>
<key>float</key>
<opt>fcn:ff</opt>
</option>
<option>
<name>Complex</name>
<key>complex</key>
<opt>fcn:cc</opt>
</option>
</param>
<param>
<name>Matrix A</name>
<key>A</key>
<value>((1, 0), (0, 1))</value>
<type>raw</type>
</param>
<param>
<name>TPP</name>
<key>tag_propagation_policy</key>
<type>enum</type>
<option>
<name>All to All</name>
<key>gr.TPP_ALL_TO_ALL</key>
</option>
<option>
<name>One to One</name>
<key>gr.TPP_ONE_TO_ONE</key>
</option>
<option>
<name>No Propagation</name>
<key>gr.TPP_DONT</key>
</option>
<option>
<name>Matrix-Defined</name>
<key>gr.TPP_CUSTOM</key>
</option>
</param>
<check>len($A) > 0</check>
<check>len(${A}[0]) > 0</check>
<check>$tag_propagation_policy != gr.TPP_ONE_TO_ONE or (len($A) == len(${A}[0]))</check>
<sink>
<name>in</name>
<type>$type</type>
<nports>len(${A}[0])</nports>
</sink>
<sink>
<name>set_A</name>
<type>message</type>
<optional>1</optional>
</sink>
<source>
<name>out</name>
<type>$type</type>
<nports>len($A)</nports>
</source>
</block>
|