net.beadsproject.beads.ugens
Class Glide

java.lang.Object
  extended by net.beadsproject.beads.core.Bead
      extended by net.beadsproject.beads.core.UGen
          extended by net.beadsproject.beads.ugens.Glide

public class Glide
extends UGen

Simple UGen that ramps between given values over a given duration (e.g., for portamento).

Author:
ollie

Nested Class Summary
 
Nested classes/interfaces inherited from class net.beadsproject.beads.core.UGen
UGen.OutputInitializationRegime, UGen.OutputPauseRegime
 
Field Summary
 
Fields inherited from class net.beadsproject.beads.core.UGen
bufferSize, bufIn, bufOut, context, ins, outputInitializationRegime, outputPauseRegime, outs
 
Constructor Summary
Glide(AudioContext context)
          Creates a new Glide with the specified AudioContext.
Glide(AudioContext context, float currentValue)
          Creates a new Glide with the specified AudioContext, initial value.
Glide(AudioContext context, float currentValue, float glideTimeMS)
          Creates a new Glide with the specified AudioContext, initial value and glide time in milliseconds.
 
Method Summary
 void calculateBuffer()
          Called by the signal chain to update this UGen's ouput data.
 float getGlideTime()
          Gets the glide time in milliseconds.
 void setGlideTime(float msTime)
          Sets the glide time in milliseconds immediately.
 void setValue(float targetValue)
          Sets the target glide value.
 void setValueImmediately(float targetValue)
          Resets the Glide's current value to the specified value immediately.
 
Methods inherited from class net.beadsproject.beads.core.UGen
addDependent, addInput, addInput, clearDependents, clearInputConnections, containsInput, crossfadeInput, getConnectedInputs, getContext, getEnvelopes, getIns, getNumberOfConnectedUGens, getNumberOfDependents, getOutBuffer, getOuts, getTimeTakenLastUpdate, getValue, getValue, getValueDouble, getValueDouble, initializeOuts, isTimerMode, isUpdated, noInputs, pause, printInBuffers, printInputList, printOutBuffers, removeAllConnections, removeConnection, removeDependent, setOutsToPause, setTimerMode, update, zeroIns, zeroOuts
 
Methods inherited from class net.beadsproject.beads.core.Bead
getKillListener, getName, isDeleted, isPaused, kill, message, messageReceived, setKillListener, setName, start, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Glide

public Glide(AudioContext context,
             float currentValue,
             float glideTimeMS)
Creates a new Glide with the specified AudioContext, initial value and glide time in milliseconds.

Parameters:
context - the AudioContext.
currentValue - the initial value.
glideTimeMS - the glide time in milliseconds.

Glide

public Glide(AudioContext context,
             float currentValue)
Creates a new Glide with the specified AudioContext, initial value. Uses the default glide time of 100 milliseconds.

Parameters:
context - the AudioContext.
currentValue - the initial value.

Glide

public Glide(AudioContext context)
Creates a new Glide with the specified AudioContext. Uses the default inital value of zero and glide time of 100 milliseconds.

Parameters:
context - the AudioContext.
Method Detail

setValue

public void setValue(float targetValue)
Sets the target glide value. From its current value Glide immediately interpolates its way to that value over the specified glideTime.

Overrides:
setValue in class UGen
Parameters:
targetValue - the target value.

setValueImmediately

public void setValueImmediately(float targetValue)
Resets the Glide's current value to the specified value immediately.

Parameters:
targetValue - the target value.

setGlideTime

public void setGlideTime(float msTime)
Sets the glide time in milliseconds immediately.

Parameters:
msTime - glide time in milliseconds.

getGlideTime

public float getGlideTime()
Gets the glide time in milliseconds.

Returns:
the glide time in milliseconds.

calculateBuffer

public void calculateBuffer()
Description copied from class: UGen
Called by the signal chain to update this UGen's ouput data. Subclassses of UGen should implement the UGen's DSP perform routine here. In general this involves grabbing data from UGen.bufIn and putting data into UGen.bufOut in some way. UGen.bufIn and UGen.bufOut are 2D arrays of floats of the form float[numChannels][bufferSize]. The length of the buffers is given by UGen.bufferSize, and the number of channels of the input and output buffers are given by UGen.ins and UGen.outs respectively.

Specified by:
calculateBuffer in class UGen