de.sciss.synth.ugen

ChannelProxy

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

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

Linear Supertypes
Serializable, Serializable, GE.Lazy, GE, Expander[UGenInLike], Lazy, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ChannelProxy
  2. Serializable
  3. Serializable
  4. Lazy
  5. GE
  6. Expander
  7. Lazy
  8. Product
  9. Equals
  10. AnyRef
  11. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ChannelProxy(elem: GE, index: Int)

    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.

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. val elem: GE

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

  9. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  10. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  12. val index: Int

    channel index starting at zero.

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

  13. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  14. def makeUGens: UGenInLike

    Abstract method which must be implemented by creating the actual UGens during expansion.

    Abstract method which must be implemented by creating the actual UGens during expansion. This method is at most called once during graph expansion

    returns

    the expanded object (depending on the type parameter U)

    Attributes
    protected
    Definition Classes
    ChannelProxyExpander
  15. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  16. final def notify(): Unit

    Definition Classes
    AnyRef
  17. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  18. def rate: MaybeRate

    Definition Classes
    ChannelProxyGE
  19. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  20. def toString(): String

    Definition Classes
    ChannelProxy → AnyRef → Any
  21. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from GE.Lazy

Inherited from GE

Inherited from Expander[UGenInLike]

Inherited from Lazy

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped