com.softsynth.jsyn
Class SchmidtTrigger

java.lang.Object
  extended by java.util.Observable
      extended by com.softsynth.jsyn.SynthObject
          extended by com.softsynth.jsyn.SynthSound
              extended by com.softsynth.jsyn.SynthUnit
                  extended by com.softsynth.jsyn.SchmidtTrigger

public class SchmidtTrigger
extends SynthUnit

SchmidtTrigger unit.

Output logic level value with hysteresis. Transition high when input exceeds setlevel. Only go low when input is below resetLevel. This can be used to reject low level noise on the input signal. The default values for setlevel and resetLevel are both 0.0. Setting setLevel to 0.1 and resetLevel to -0.1 will give some hysteresis. The outputPulse is a single sample wide pulse set when the output transitions from low to high.

   if( output == 0.0 )
          output = ( input > setLevel ) ? 1.0 : 0.0;
   else   if( output > 0.0 )
          output = ( input <= resetLevel ) ? 0.0 : 1.0;
   else
      output = previous_output;
 

Version:
JSyn Version 010
Author:
(C) 1997 Phil Burk, SoftSynth.com, All Rights Reserved
See Also:
CompareUnit

Field Summary
 SynthInput input
           
 SynthOutput output
           
 SynthOutput outputPulse
           
 SynthInput resetLevel
           
 SynthInput setLevel
           
 
Constructor Summary
SchmidtTrigger()
           
SchmidtTrigger(SynthContext synthContext)
          Create a SynthUnit that runs at Synth.RATE_AUDIO.
SchmidtTrigger(SynthContext synthContext, int calculationRate)
           
 
Method Summary
 
Methods inherited from class com.softsynth.jsyn.SynthSound
addPort, addPort, findNamedPort, getName, getNumPorts, getPortAt, getPriority, setPriority, setStage, setStage, start, start, stop, stop
 
Methods inherited from class com.softsynth.jsyn.SynthObject
delete, deleteAll, enableDeletionByGarbageCollector, enableTracking, getPeer, getSynthContext, isTrackingEnabled, toString, track
 
Methods inherited from class java.util.Observable
addObserver, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

input

public SynthInput input

setLevel

public SynthInput setLevel

resetLevel

public SynthInput resetLevel

outputPulse

public SynthOutput outputPulse

output

public SynthOutput output
Constructor Detail

SchmidtTrigger

public SchmidtTrigger(SynthContext synthContext,
                      int calculationRate)
               throws SynthException
Throws:
SynthException

SchmidtTrigger

public SchmidtTrigger(SynthContext synthContext)
               throws SynthException
Create a SynthUnit that runs at Synth.RATE_AUDIO.

Throws:
SynthException - If name does not match list of valid units. Note that match is case sensitive.

SchmidtTrigger

public SchmidtTrigger()
               throws SynthException
Throws:
SynthException