Package

de.sciss.synth

ugen

Permalink

package ugen

Visibility
  1. Public
  2. All

Type Members

  1. final case class AudioControl(values: IndexedSeq[Float], ctrlName: Option[String]) extends MultiOut with AudioRated with Product with Serializable

    Permalink
  2. final case class AudioControlProxy(values: IndexedSeq[Float], name: Option[String]) extends ControlProxyLike with AudioRated with Product with Serializable

    Permalink
  3. abstract class BinaryOpUGen extends SingleOut

    Permalink
  4. final case class ChannelProxy(elem: GE, index: Int) extends GE.Lazy with Product with Serializable

    Permalink

    A helper graph element that selects a particular output channel of another element.

    A helper graph element that selects a particular output channel of another element. The index is an Integer and thus cannot be determined at graph expansion time. If this is desired, the Select UGen can be used.

    Usually the graph element operator \ (backlash) can be used instead of explicitly writing ChannelProxy. Thus elem \ index is equivalent to ChannelProxy(elem, index). UGens with a fixed number of outputs often have auxiliary methods to access the channels in meaningful way, e.g. Pitch has method freq and hasFreq, which are equivalent to pitch \ 0 and pitch \ 1.

    Because ScalaCollider allows late-expanding graph elements, we have no direct way to get some array of a UGen's outputs.

    Examples
    // frequency of a pitch estimator
    play {
      val sin = SinOsc.ar(MouseX.kr(10, 10000, warp = 1))
      val pch = Pitch.kr(sin)
      val freq = pch \ 0  // same as pch.freq
      freq.poll(label = "freq")
      ()
    }
    elem

    a multi-channel element from which to select a channel.

    index

    channel index starting at zero. It automatically wraps around the actual number of channels the input elem expands to.

    See also

    Select

    NumChannels

  5. final case class Constant(value: Float) extends UGenIn with ScalarRated with Product with Serializable

    Permalink

    A scalar constant used as an input to a UGen.

    A scalar constant used as an input to a UGen. These constants are stored in a separate table of the synth graph.

  6. final case class Control(rate: Rate, values: IndexedSeq[Float], ctrlName: Option[String]) extends MultiOut with Product with Serializable

    Permalink
  7. final class ControlFactory extends ControlFactoryLike

    Permalink
  8. trait ControlFactoryLike extends AnyRef

    Permalink
  9. final case class ControlProxy(rate: Rate, values: IndexedSeq[Float], name: Option[String]) extends ControlProxyLike with Product with Serializable

    Permalink
  10. final class ControlProxyFactory extends AnyVal

    Permalink
  11. trait ControlProxyLike extends GE

    Permalink
  12. final case class ControlUGenOutProxy(source: ControlProxyLike, outputIndex: Int) extends UGenIn with Product with Serializable

    Permalink

    A ControlOutProxy is similar to a UGenOutProxy in that it denotes an output channel of a control UGen.

    A ControlOutProxy is similar to a UGenOutProxy in that it denotes an output channel of a control UGen. However it refers to a control-proxy instead of a real control ugen, since the proxies are synthesized into actual ugens only at the end of a synth graph creation, in order to clump several controls together. ControlOutProxy instance are typically returned from the ControlProxyFactory class, that is, using the package implicits, from calls such as "myControl".kr.

  13. final case class ControlValues(seq: IndexedSeq[Float]) extends Product with Serializable

    Permalink
  14. final case class GESeq(elems: IndexedSeq[GE]) extends GE with Product with Serializable

    Permalink
  15. final case class MulAdd(in: GE, mul: GE, add: GE) extends SingleOut with Product with Serializable

    Permalink

    A UGen that multiplies an input with another signal and then adds a third signal.

    A UGen that multiplies an input with another signal and then adds a third signal. This can be used to translate an element into a different value range.

    Usually the graph element operator madd is used instead of explicitly writing MulAdd.

    MulAdd(in, mul, add) == in.madd(mul, add) == in * mul + add
    Examples
    // scale value range
    play {
      // input range -1 to +1,
      // output range ((-1 * 100) + 300) = 200
      // to           ((+1 * 100) + 300) = 400
      val freq = SinOsc.kr(1).madd(100, 300) // or MulAdd(..., 100, 300)
      freq.poll(label = "freq")
      SinOsc.ar(freq) * 0.1
    }
    in

    the input signal to scale and offset

    mul

    the scaling factor, applied first to the input

    add

    the offset, added after applying the multiplication

    See also

    Sum4

    Sum3

    BinaryOpUGen

  16. final case class Nyquist() extends GE with ScalarRated with Product with Serializable

    Permalink

    A helper graph element equivalent to SampleRate.ir * 0.5.

    A helper graph element equivalent to SampleRate.ir * 0.5.

    See also

    SampleRate

  17. final case class Sum3(in0: GE, in1: GE, in2: GE) extends SingleOut with Product with Serializable

    Permalink

    A UGen to efficiently add three signals together.

    A UGen to efficiently add three signals together. Usually used indirectly through Mix.

    in0

    first of the three inputs

    in1

    second of the three inputs

    in2

    third of the three inputs

    See also

    Sum4

    MulAdd

    BinaryOpUGen

  18. final case class Sum4(in0: GE, in1: GE, in2: GE, in3: GE) extends SingleOut with Product with Serializable

    Permalink

    A UGen to efficiently add four signals together.

    A UGen to efficiently add four signals together. Usually used indirectly through Mix.

    in0

    first of the four inputs

    in1

    second of the four inputs

    in2

    third of the four inputs

    in3

    fourth of the four inputs

    See also

    Sum3

    MulAdd

    BinaryOpUGen

  19. final case class TrigControl(values: IndexedSeq[Float], ctrlName: Option[String]) extends MultiOut with ControlRated with Product with Serializable

    Permalink
  20. final case class TrigControlProxy(values: IndexedSeq[Float], name: Option[String]) extends ControlProxyLike with ControlRated with Product with Serializable

    Permalink
  21. sealed trait UGenInGroup extends UGenInLike

    Permalink

    A trait that can be either a group of UGenInLike or a UGen.MultiOut

  22. final case class UGenOutProxy(source: MultiOut, outputIndex: Int) extends UGenIn with UGenProxy with Product with Serializable

    Permalink

    A UGenOutProxy refers to a particular output of a multi-channel UGen.

    A UGenOutProxy refers to a particular output of a multi-channel UGen. A sequence of these form the representation of a multi-channel-expanded UGen.

  23. sealed trait UGenProxy extends UGenIn

    Permalink
  24. abstract class UnaryOpUGen extends SingleOut

    Permalink

Value Members

  1. object AudioControl extends Serializable

    Permalink
  2. object AudioControlProxy extends Serializable

    Permalink
  3. object BinaryOpUGen

    Permalink

    Binary operations are generally constructed by calling one of the methods of GEOps.

    Binary operations are generally constructed by calling one of the methods of GEOps.

    See also

    UnaryOpUGen

    GEOps

  4. object BuildInfo extends Product with Serializable

    Permalink

    This object was generated by sbt-buildinfo.

  5. object Constant extends Serializable

    Permalink
  6. object Control extends Serializable

    Permalink
  7. object ControlProxy extends Serializable

    Permalink
  8. object ControlValues extends Serializable

    Permalink
  9. object GESeq extends Serializable

    Permalink
  10. object Nyquist extends Serializable

    Permalink

    A helper graph element equivalent to SampleRate.ir * 0.5.

    A helper graph element equivalent to SampleRate.ir * 0.5.

    Examples
    // as frequency argument
    play {
      Dust.ar(Nyquist()).pow(8)
    }
    See also

    SampleRate

  11. object Sum3 extends Serializable

    Permalink

    A UGen to efficiently add three signals together.

    A UGen to efficiently add three signals together. Usually used indirectly through Mix.

    See also

    Sum4

    MulAdd

    BinaryOpUGen

  12. object Sum4 extends Serializable

    Permalink

    A UGen to efficiently add four signals together.

    A UGen to efficiently add four signals together. Usually used indirectly through Mix.

    See also

    Sum3

    MulAdd

    BinaryOpUGen

  13. object TrigControl extends Serializable

    Permalink
  14. object TrigControlProxy extends Serializable

    Permalink
  15. object UGenInGroup

    Permalink
  16. object UnaryOpUGen

    Permalink

    Unary operations are generally constructed by calling one of the methods of GEOps.

    Unary operations are generally constructed by calling one of the methods of GEOps.

    See also

    GEOps  @see BinaryOpUGen

  17. package impl

    Permalink

Ungrouped