net.beadsproject.beads.ugens
Class Recorder

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

public class Recorder
extends UGen

Recorder records audio into a Sample. If a Recorder is not in loop mode it kills itself when it reaches the end of the Sample.


Field Summary
 
Fields inherited from class net.beadsproject.beads.core.UGen
bufferSize, bufIn, bufOut, context, ins, outs
 
Constructor Summary
Recorder(AudioContext context, Sample sample)
          Instantiates a new Recorder.
 
Method Summary
 void calculateBuffer()
          Called by the signal chain to update this UGen's ouput data.
 double getPosition()
          Gets the position.
 Sample getSample()
          Gets the Sample.
 boolean isLoopRecord()
          Checks if loop record mode is enabled.
 void reset()
          Resets the Recorder to record into the beginning of the Sample.
 void setLoopRecord(boolean loopRecord)
          Starts/stops loop record mode.
 void setPosition(double position)
          Sets the position to record to in milliseconds.
 void setSample(Sample sample)
          Sets the Sample.
 
Methods inherited from class net.beadsproject.beads.core.UGen
addDependent, addInput, addInput, clearInputConnections, getContext, getIns, getNumberOfConnectedUGens, getOuts, getValue, getValue, noInputs, pause, printInputList, printOutBuffers, removeAllConnections, removeDependent, setValue, 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

Recorder

public Recorder(AudioContext context,
                Sample sample)
Instantiates a new Recorder.

Parameters:
context - the AudioContext.
sample - the Sample.
Method Detail

getSample

public Sample getSample()
Gets the Sample.

Returns:
the Sample.

setSample

public void setSample(Sample sample)
Sets the Sample.

Parameters:
sample - the new Sample.

reset

public void reset()
Resets the Recorder to record into the beginning of the Sample.


setPosition

public void setPosition(double position)
Sets the position to record to in milliseconds.

Parameters:
position - the new position 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

getPosition

public double getPosition()
Gets the position.

Returns:
the position

isLoopRecord

public boolean isLoopRecord()
Checks if loop record mode is enabled.

Returns:
true if loop record mode is enabled.

setLoopRecord

public void setLoopRecord(boolean loopRecord)
Starts/stops loop record mode.

Parameters:
loopRecord - true to enable loop record mode.