Package edu.nrao.sss.electronics

Electronic components that process frequency signals.

See:
          Description

Interface Summary
Digitizer A device that can be configured to produce digital samplings of different bit depths.
SignalProcessor A processor of signals.
SignalSource A provider of a signal.
 

Class Summary
DigitalSignal A frequency signal that has been digitized.
LocalOscillator A frequency generator.
LocalOscillatorPath A signal path that begins with a local oscillator and contains an optional multiplier and optional output filter.
Signal A frequency signal that holds a current frequency range and the range for which the current is a proxy.
SignalCombiner Deprecated. This class will be eliminated because the design of this package is not conducive to devices that process multiple inputs simultaneously.
SignalFilter A filter that operates on the current frequencies of signals.
SignalManifold A device that takes an input signal and replicates it on all of its outputs.
SignalMixer A device that mixes a signal with another frequency.
SignalMultiplier A device that multiplies the current frequencies of a signal.
SignalPipe A connector for moving a signal from one device to another.
SignalProcessorSink A signal processor that does not propagate its signal.
SignalSampler A device that samples a signal to create a DigitalSignal.
SignalSwitch A device that can connect one of its inputs to one of its outputs and pass signals through that connection.
SignalTransferSwitch A special kind of switch that provides a one-to-one mapping of its N input poles to its N output poles.
 

Package edu.nrao.sss.electronics Description

Electronic components that process frequency signals.

The main objects in this package are Signal, SignalProcessor, and SignalPipe. In general, signal processors are devices that contain one or more input pipes and one or more output pipes. The output of one device is connected to the input of another. When a device is told to execute, it asks its SignalSource for a signal, runs its transformation, and tells its output pipe(s) to execute. In this way a signal is pushed from the current device downstream to all connected devices.

Note that this package is not set up in the classical pipes-and-filters pattern. The main difference is that the processors are not running in their own threads. This simplifies some things, and complicates others. One complication is that the devices must be set up in tree like fashion where branches fan out. Fan-in is not handled well, if at all. This design is less efficient in some configurations because certain pathways may be traveled multiple times in one execution.

Warning: this package has not yet been battled tested, or even unit tested. Though it is in our collection of general-purpose utility packages, it was created with a particular goal in mind and may not be suitable for other applications.

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


Copyright © 2009. All Rights Reserved.