| """ |
| Embedded Python Blocks: |
| |
| Each this file is saved, GRC will instantiate the first class it finds to get |
| ports and parameters of your block. The arguments to __init__ will be the |
| parameters. All of them are required to have default values! |
| """ |
| |
| from gnuradio import gr |
| from pmt import * |
| |
| class dict_toggle_sign(gr.basic_block): |
| def __init__(self): # only default arguments here |
| gr.basic_block.__init__( |
| self, |
| name='Change sign of elts in dict', |
| in_sig=[], |
| out_sig=[] |
| ) |
| self.message_port_register_in(intern("dict_in")) |
| self.message_port_register_out(intern("dict_out")) |
| self.set_msg_handler(intern("dict_in"), self.change_sign) |
| |
| def change_sign(self, msg): |
| if is_dict(msg): |
| d = to_python(msg) |
| #print d |
| for key, value in d.items(): |
| d[key] *= -1 |
| self.message_port_pub(intern("dict_out"), to_pmt(d)) |