Signal class - femanov/pycx4 GitHub Wiki
This class is a simple stand-alone signal processor aimed to make pycda code more compatible with qcda. Nevertheless it's not a try to implement something like Qt's QSignal.
Methods:
connect(self, python-callable callback)
disconnect(self, python-callable callback)
emit(self, object arg)
Signal keeps a C-pointers to python functions and checks if it's really a python function only when you connect it. If you garbage-collect connected function it crashes you program.
connect and disconnect are accept a python callable with one positional argument. Second connection of the same function ignored. No direct signal-to-signal connections implemented, instead you can connect Signal.emit to another one.
emit - call all the connected functions and pass "arg" to them. No any checks, just call. Any object is good for arg, but pycda or qcda always pass sender as arg (sender is an object which sends you signal).