04-27-2009 01:50 PM
Thereare no special means for that in tbb::pipeline
To me, the easiest way seems to make the decision in the very beginning of C, just passing the data to D if no processing is required.
04-27-2009 08:12 PM
think about packet process program,
both PacketInput & output are serial executed,analyse and calltrace can be parallelly executed.
but packet from same ip/session should be passed to same calltrace filter
so how to let analyse filter choose the destinate filter,calltrace 1 or calltrace 2?
the developer should be responsible for these logic code?
04-28-2009 01:10 AM
The developer is responsible for making a decision of which filter to call, anyway. And the decision is done at runtime depending on a particular data item. It also allows the developer to choose desired way to organize the logic code, depending on the problem. Might bea simple switch statement insidethe filter is enough; or might be some hierarchy of processing classes can be established, and the filter would just call a virtual method on an object passed to it; etc.