diff --git a/gr-jay/grc/jay_peak_manager.xml b/gr-jay/grc/jay_peak_manager.xml
index 6091e82..d39fddb 100644
--- a/gr-jay/grc/jay_peak_manager.xml
+++ b/gr-jay/grc/jay_peak_manager.xml
@@ -4,12 +4,12 @@
jay_peak_manager
[jay]
import jay
- jay.peak_manager($test)
+ jay.peak_manager($numPeaksMax)
- Test
- test
- 1024
+ Num. peaks max.
+ numPeaksMax
+ 1
int
@@ -27,6 +27,7 @@
freq
message
+ $numPeaksMax
1
diff --git a/gr-jay/python/peak_manager.py b/gr-jay/python/peak_manager.py
index c4d3be8..f393a64 100644
--- a/gr-jay/python/peak_manager.py
+++ b/gr-jay/python/peak_manager.py
@@ -27,30 +27,38 @@ class peak_manager(gr.basic_block):
"""
docstring for block peak_manager
"""
- def __init__(self, test):
+ def __init__(self, numPeaksMax):
gr.basic_block.__init__(self,
name="peak_manager",
in_sig=None,
out_sig=None)
- self.test = test
- self.numFrequencies = 1
+ self.numPeaksMax = numPeaksMax
self.peak_dict = {}
- print ("test : ", test)
+ print ("numPeaksMax : ", numPeaksMax)
# Register in / out message ports
self.message_port_register_in(pmt.intern("control"))
self.message_port_register_out(pmt.intern("status"))
- self.message_port_register_out(pmt.intern("freq"))
+
+ self.out_ports = []
+ if self.numPeaksMax < 2:
+ self.out_ports.append(pmt.intern("freq"))
+
+ else:
+ for n in range(0, self.numPeaksMax):
+ self.out_ports.append(pmt.intern("freq" + str(n)))
+
+ for out_port in self.out_ports:
+ self.message_port_register_out(out_port)
# Register in message handler
self.set_msg_handler(pmt.intern("control"), self.msg_handler)
-
def peak_add(self, key, peak):
- if len(self.peak_dict) < self.numFrequencies:
+ if len(self.peak_dict) < self.numPeaksMax:
self.peak_dict[key] = peak
return True
return False