public final class Deparaplex
This demultiplexes data from its input channel to its output channel array.
In each cycle, it inputs one packet and outputs its contents in parallel to each of its output channels. The parallel output means that the process will wait until each item is accepted by every channel -- in whatever order is demanded by its environment. The ordering of the channels in the out array, therefore, makes no difference to the functionality of this process.
Input Channels | ||
---|---|---|
in | Object[] | A packet carrying the paraplexed data. |
Output Channels | ||
out[] | Object | Most channels in this package carry integers. |
import org.org.jcsp.lang.*; import org.jcsp.plugNplay.*; class DeparaplexTest { public static void main (String[] args) { final One2OneChannel[] a = Channel.createOne2One (3); final One2OneChannel b = Channel.createOne2One (); final One2OneChannel[] c = Channel.createOne2One (3); final One2OneChannel d = Channel.createOne2One (); new Parallel ( new CSProcess[] { new Numbers (a[0].out ()), new Squares (a[1].out ()), new Fibonacci (a[2].out ()), new Paraplex (Channel.getInputArray (a), b.out ()), new Deparaplex (b.in (), Channel.getOutputArray (c)), new Paraplex (Channel.getInputArray (c), d.out ()), new CSProcess () { public void run () { System.out.println ("\n\t\tNumbers\t\tSquares\t\tFibonacci\n"); while (true) { Object[] data = (Object[]) d.in ().read (); for (int i = 0; i < data.length; i++) { System.out.print ("\t\t" + data[i]); } System.out.println (); } } } } ).run (); } }
Constructor and description |
---|
Deparaplex
(ChannelInput in, ChannelOutput[] out) Construct a new Deparaplex process with the input Channel in and the output Channels out. |
Construct a new Deparaplex process with the input Channel in and the output Channels out. The ordering of the Channels in the out array make no difference to the functionality of this process.
in
- the input channelout
- the output ChannelsJCSP for Java 1.8 generated 14-10-2016 by Jon Kerridge, Edinburgh Napier University - j dot kerridge at napier dot ac dot uk