de.sciss.lucre.event

impl

package impl

Visibility
  1. Public
  2. All

Type Members

  1. trait Constant extends AnyRef

    A constant "event" is one which doesn't actually fire.

    A constant "event" is one which doesn't actually fire. It thus arguably isn't really an event, but it can be used to implement the constant type of an expression system which can use a unified event approach, where the Constant event just acts as a dummy event. addReactor and removeReactor have no-op implementations. Also pull in inherited from Root, but will always return None as there is no way to fire this event. Implementation must provide a constant value method constValue and implement its serialization via writeData.

  2. trait EventImpl[S <: Sys[S], +A, +Repr] extends Event[S, A, Repr]

  3. trait Generator[S <: Sys[S], A, +Repr] extends Event[S, A, Repr]

  4. trait MappingGenerator[S <: Sys[S], A, B, +Repr] extends Generator[S, A, Repr] with StandaloneLike[S, A, Repr] with Publisher[S, A]

    A trait which combined external input events with self generated events.

  5. trait Reducer[S <: Sys[S], A, B, Repr] extends Node[S] with Publisher[S, A]

    A trait which reduces multiple input events into one output event.

    A trait which reduces multiple input events into one output event.

    S

    the system

    A

    the reduced (output) event type

    B

    the input event type

    Repr

    the self-type (implementing instance must conform to this)

  6. trait Root[S <: stm.Sys[S], +A] extends AnyRef

    A rooted event does not have sources.

    A rooted event does not have sources. This trait provides a simple implementation of pull which merely checks if this event has fired or not.

  7. trait SingleGenerator[S <: Sys[S], A, +Repr] extends Generator[S, A, Repr] with Root[S, A] with StandaloneLike[S, A, Repr] with Publisher[S, A]

    Combines Generator, Root and StandaloneLike into a convenient trait that instantly sets up a self contained rooted event, dispatched via fire.

    Combines Generator, Root and StandaloneLike into a convenient trait that instantly sets up a self contained rooted event, dispatched via fire. It also adds method changed which is useful for distinguishing node and event on the outside facade.

    S

    the system used

    A

    the update type

    Repr

    the representation type. This type mixin in this trait must conform to this (self-)type.

  8. trait Singleton[S <: stm.Sys[S]] extends InvariantSelector[S]

    A Singleton event is one which doesn't carry any state.

    A Singleton event is one which doesn't carry any state. This is a utility trait which provides no-op implementations for writeData and disposeData.

  9. trait StandaloneLike[S <: Sys[S], +A, +Repr] extends Node[S] with EventImpl[S, A, Repr] with InvariantEvent[S, A, Repr]

    Standalone events unite a node and one particular event.

    Standalone events unite a node and one particular event.

    WARNING: the implementations of equals are really tricky right now. EventImpl is more specific in that VirtualNodeSelector checks if the compared object is another VirtualNodeSelector whose reactor has the same id and whose slot is the same. On the other hand Invariant inherits equals from Reactor which checks for another reactor and then compares their ids.

    I don't know if Reactor still needs the equals implementation?

  10. trait TriggerImpl[S <: Sys[S], A, +Repr] extends Trigger[S, A, Repr] with EventImpl[S, A, Repr] with Generator[S, A, Repr]

Value Members

  1. object DummyValidity extends Validity[Any]

  2. object DurableImpl

  3. object InMemoryImpl

  4. object ReactionMapImpl

  5. object TriggerImpl

Ungrouped