com.jsyn.unitgen
Class UnitGenerator

java.lang.Object
  extended by com.jsyn.unitgen.UnitGenerator
Direct Known Subclasses:
ChannelIn, ChannelOut, Circuit, CrossFade, Divide, DualInTwoOut, FourWayFade, Integrate, LatchZeroCrossing, LineIn, LineOut, Maximum, Minimum, MultiChannelScopeProbeUnit, Multiply, MultiplyAdd, Pan, PanControl, ParabolicEnvelope, PeakFollower, PeriodAnalyzer, PowerOfTwo, Select, SequentialDataReader, SequentialDataWriter, Subtract, TwoInDualOut, UnitBinaryOperator, UnitFilter, UnitOscillator, UnitStreamWriter, WhiteNoise

public abstract class UnitGenerator
extends java.lang.Object

Base class for all unit generators.


Field Summary
static double FALSE
           
static double TRUE
           
 
Constructor Summary
UnitGenerator()
           
 
Method Summary
 void addPort(UnitPort port)
           
 double convertHalfLifeToMultiplier(double halfLife)
          Calculate signal based on halflife of an exponential decay.
 void flattenOutputs()
          Flatten output ports so we don't output a changing signal when stopped.
 void generate()
          Generate a full block.
abstract  void generate(int start, int limit)
          Perform essential synthesis function.
 double getFramePeriod()
           
 int getFrameRate()
           
 UnitPort getPortByName(java.lang.String portName)
           
 java.util.Enumeration<UnitPort> getPorts()
           
 SynthesisEngine getSynthesisEngine()
           
 boolean isEnabled()
           
 void pullData(long frameCount, int start, int limit)
           
 void setCircuit(Circuit circuit)
           
 void setFrameRate(int rate)
           
 void setSynthesisEngine(SynthesisEngine synthesisEngine)
           
 void start()
           
 void stop()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FALSE

public static final double FALSE
See Also:
Constant Field Values

TRUE

public static final double TRUE
See Also:
Constant Field Values
Constructor Detail

UnitGenerator

public UnitGenerator()
Method Detail

getFrameRate

public int getFrameRate()

getFramePeriod

public double getFramePeriod()

addPort

public void addPort(UnitPort port)

getPortByName

public UnitPort getPortByName(java.lang.String portName)

getPorts

public java.util.Enumeration<UnitPort> getPorts()

generate

public abstract void generate(int start,
                              int limit)
Perform essential synthesis function.

Parameters:
start - offset into port buffers
limit - limit offset into port buffers for loop

generate

public void generate()
Generate a full block.


getSynthesisEngine

public SynthesisEngine getSynthesisEngine()
Returns:
the synthesisEngine

setSynthesisEngine

public void setSynthesisEngine(SynthesisEngine synthesisEngine)
Parameters:
synthesisEngine - the synthesisEngine to set

convertHalfLifeToMultiplier

public double convertHalfLifeToMultiplier(double halfLife)
Calculate signal based on halflife of an exponential decay.


flattenOutputs

public void flattenOutputs()
Flatten output ports so we don't output a changing signal when stopped.


setCircuit

public void setCircuit(Circuit circuit)

pullData

public void pullData(long frameCount,
                     int start,
                     int limit)

isEnabled

public boolean isEnabled()

start

public void start()

stop

public void stop()

setFrameRate

public void setFrameRate(int rate)