Add QS local filtering to QF_PUBLISH()
Real-Time Event Frameworks based on active objects & state machines
Brought to you by:
quantum-leaps
Currently, publishing of events (QF_PUBLISH() in C and QF::PUBLISH() in C++) don't offer any possibility of applying QS local filter.
This feature request is about adding a possibility to selectively suppress specific publish calls by means of applying the QS local filter. See also discussion thread:
https://sourceforge.net/p/qpc/discussion/668726/thread/39140268ac
Anonymous
The current design idea for this feature would be to introduce a special type
QSpyIdfor objects used only as "sender" in theQF_PUBLISH(). Here is a use case for this:This would allow you to use the QS local filter (QS_AP_ID + 5 in this case) for enabling/disabling the particular
QF_PUBLISH(..., &l_clock_tick).For publishing events from active objects, such as:
QF_PUBLISH(..., &me->super);
this would work as expected, meaning that the QS-filter would be applied to the priority of the active object "me". I hope that this would address your problem.
--MMS
Implemented in QP/C/C++ 6.9.3.
--MMS