pass signal as pointer instead of reference