Class Demultiplex

  • All Implemented Interfaces:
    CSProcess

    public final class Demultiplex
    extends java.lang.Object
    implements CSProcess
    This demultiplexes data from its input channel to its output channel array.

    Process Diagram

    Description

    Demultiplex is a process to convert the single stream of (Integer, Object) messages sent from a Multiplex process on the other end of its in channel back into separate streams (its out channels). It assumes that Multiplex operates on the same size array of channels as its out array.

    The protocol on the incoming multiplexed stream consists of an Integer, that represents the channel identity of the multiplexed data, followed by the multiplexed data.

    Channel Protocols

    Input Channels
    in java.lang.Integer, java.lang.Object A channel index followed by the multiplexed data.
    Output Channels
    out[] java.lang.Object All channels in this package carry integers.
    See Also:
    Multiplex, Paraplex, Deparaplex
    • Constructor Summary

      Constructors 
      Constructor Description
      Demultiplex​(ChannelInput in, ChannelOutput[] out)
      Construct a new Demultiplex process with the input Channel in and the output Channels out.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void run()
      The main body of this process.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Demultiplex

        public Demultiplex​(ChannelInput in,
                           ChannelOutput[] out)
        Construct a new Demultiplex 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.
        Parameters:
        in - the input channel
        out - the output channels
    • Method Detail

      • run

        public void run()
        The main body of this process.
        Specified by:
        run in interface CSProcess