edu.nrao.sss.electronics
Class SignalCombiner

java.lang.Object
  extended by edu.nrao.sss.electronics.SignalCombiner
All Implemented Interfaces:
SignalProcessor, SignalSource

Deprecated. This class will be eliminated because the design of this package is not conducive to devices that process multiple inputs simultaneously. A device that combines multiple signals into one. There are restrictions on the nature of the signals to be combined, namely:
  1. All signals must have the same polarization.
  2. All signals must have the same mapping function (the function that converts a current frequency to a proxied frequency).
  3. All signals must have the same reversal state (either all reversed or none reversed) for the relationship between their current and proxied frequencies. (This is really redundant, given item 2, above.)

A recent change to the Signal class changed its the way in which it holds frequencies. It had held these in the form of a FrequencySpectrum; it now holds them in the form of a FrequencyRange. This change compromises the ability of this combiner. The main consequence is that if signals S and T hold non-overlapping, non-contiguous, ranges, the combined signal contains all of S, all of T, and the range in between them.

Version Info:

$Revision: 1198 $
$Date: 2008-04-02 18:59:31 -0600 (Wed, 02 Apr 2008) $
$Author: dharland $ (last person to modify)

public class SignalCombiner
extends Object
implements SignalProcessor, SignalSource

Since:
2007-10-30
Author:
David M. Harland

Constructor Summary
SignalCombiner(int numberOfInputs)
          Deprecated. Creates a new combiner with the given number of inputs.
 
Method Summary
 Signal combine(Collection<Signal> input)
          Deprecated. Creates and returns a new signal that is the result of applying this combiner to the given collection of input signals.
 void eraseSignalMemory()
          Deprecated. Erases this device's memory of its most recent execution.
 void execute()
          Deprecated. Runs this device on the signals received from its input pipes and then executes the processor connected to its output pipe, if any.
 void executeFromStartOfChainUpTo(SignalProcessor firstUnexecutedDevice)
          Deprecated. Retreats upstream from this processor to the source of the stream and executes that device(s), telling it to stop execution at firstUnexecutedDevice.
 void executeUpTo(SignalProcessor firstUnexecutedDevice)
          Deprecated. Executes this device and all downstream devices up to, but not including, the firstUnexecutedDevice.
 SignalPipe getInputPipe(int index)
          Deprecated. Returns the indexth input pipe of this device.
 int getNumberOfInputs()
          Deprecated. Returns the number of inputs into this combiner.
 SignalPipe getOutputPipe()
          Deprecated. Returns the output pipe of this device.
 Signal getSignal()
          Deprecated. Returns a copy of the signal produced by the most recent execution of this device.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SignalCombiner

public SignalCombiner(int numberOfInputs)
Deprecated. 
Creates a new combiner with the given number of inputs.

Parameters:
numberOfInputs - the number of inputs merging into this combiner.
Throws:
IllegalArgumentException - if numberOfInputs is negative.
Method Detail

getNumberOfInputs

public int getNumberOfInputs()
Deprecated. 
Returns the number of inputs into this combiner.

Returns:
the number of inputs into this combiner.

getInputPipe

public SignalPipe getInputPipe(int index)
Deprecated. 
Returns the indexth input pipe of this device. A typical usage pattern for this method is:
 myCombiner.getInputPipe(p).connectInputTo(mySource);

Returns:
the indexth input pipe of this device.

getOutputPipe

public SignalPipe getOutputPipe()
Deprecated. 
Returns the output pipe of this device. A typical usage pattern for this method is:
 myCombiner.getOutputPipe().connectOutputTo(myProcessor);

Returns:
the output pipe of this device.

eraseSignalMemory

public void eraseSignalMemory()
Deprecated. 
Erases this device's memory of its most recent execution.

See Also:
getSignal()

getSignal

public Signal getSignal()
Deprecated. 
Returns a copy of the signal produced by the most recent execution of this device. If this device has never been run, or if the input signals it processed most recently were all null, the returned value will be null.

Specified by:
getSignal in interface SignalSource
Returns:
the signal provided by this device.

execute

public void execute()
Deprecated. 
Runs this device on the signals received from its input pipes and then executes the processor connected to its output pipe, if any.

Specified by:
execute in interface SignalProcessor

executeUpTo

public void executeUpTo(SignalProcessor firstUnexecutedDevice)
Deprecated. 
Description copied from interface: SignalProcessor
Executes this device and all downstream devices up to, but not including, the firstUnexecutedDevice. See SignalProcessor.execute() for more information about the linking of processors.

Specified by:
executeUpTo in interface SignalProcessor
Parameters:
firstUnexecutedDevice - the first device downstream that is not to be executed. If all downstream devices should be executed you may use a null value here or call SignalProcessor.execute().

executeFromStartOfChainUpTo

public void executeFromStartOfChainUpTo(SignalProcessor firstUnexecutedDevice)
Deprecated. 
Description copied from interface: SignalProcessor
Retreats upstream from this processor to the source of the stream and executes that device(s), telling it to stop execution at firstUnexecutedDevice.

Specified by:
executeFromStartOfChainUpTo in interface SignalProcessor
Parameters:
firstUnexecutedDevice - the first device in a chain of processors that is not to be executed. If all devices should be executed you may use a null value here. The first unexecuted device should be downstream of this device.

combine

public Signal combine(Collection<Signal> input)
Deprecated. 
Creates and returns a new signal that is the result of applying this combiner to the given collection of input signals.

Note that the input signals and this combiner are not affected by calls to this method.

Parameters:
input - the signals to be combined.
Returns:
a new signal that is the result of applying this combiner to input.


Copyright © 2009. All Rights Reserved.