de.sciss.synth.proc.impl

AuralScheduledBase

trait AuralScheduledBase[S <: Sys[S], Target, Elem <: AuralView[S, Target]] extends ObservableImpl[S, State]

Self Type
AuralScheduledBase[S, Target, Elem]
Linear Supertypes
ObservableImpl[S, State], Observable[S.Tx, State], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. AuralScheduledBase
  2. ObservableImpl
  3. Observable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract type ElemHandle

    Attributes
    protected
  2. final class IPlaying extends ITimedState

    Attributes
    protected
  3. final class IPreparing extends ITimedState

    Attributes
    protected
  4. sealed trait ITimedState extends InternalState

    Attributes
    protected
  5. sealed trait InternalState extends Disposable[S.Tx]

    Attributes
    protected
  6. type PrepareResult = (ViewID, SpanLike, Obj[S])

    Attributes
    protected
  7. abstract type ViewID

    An opaque type passed into playView that may be used by an overriding implementation.

    An opaque type passed into playView that may be used by an overriding implementation. Otherwise it may simply be set to Unit.

    Attributes
    protected

Abstract Value Members

  1. abstract def checkReschedule(h: ElemHandle, currentOffset: Long, oldTarget: Long, elemPlays: Boolean)(implicit tx: S.Tx): Boolean

    Attributes
    protected
  2. implicit abstract val context: AuralContext[S]

    Attributes
    protected
  3. abstract def elemFromHandle(h: ElemHandle): Elem

    Attributes
    protected
  4. abstract def mkView(vid: ViewID, span: SpanLike, obj: Obj[S])(implicit tx: S.Tx): ElemHandle

    Attributes
    protected
  5. abstract def modelEventAfter(offset: Long)(implicit tx: S.Tx): Long

    Report the next interesting frame greater than the given frame for which gridReached (internal) and processPrepare will be called.

    Report the next interesting frame greater than the given frame for which gridReached (internal) and processPrepare will be called. If no such event exists, the method must return Long.MaxValue.

    Attributes
    protected
  6. abstract def playView(h: ElemHandle, timeRef: Option, target: Target)(implicit tx: S.Tx): Unit

    Should be called from processPlay.

    Should be called from processPlay. It calls play on the view and adds it to the list of playing views. Note: timeRef must already have been updated through appropriate intersection.

    Sub-classes may override this if they call super.playView

    Attributes
    protected
  7. abstract def processEvent(play: IPlaying, timeRef: TimeRef)(implicit tx: S.Tx): Unit

    Called when a next interesting frame has been reached.

    Called when a next interesting frame has been reached. The method should look for and invoke the events such as starting or stopping a view.

    Attributes
    protected
  8. abstract def processPlay(timeRef: TimeRef, target: Target)(implicit tx: S.Tx): Unit

    Called during play.

    Called during play. Sub-classes should intersect the current elements and for each of them call playView.

    Attributes
    protected
  9. abstract def processPrepare(prepareSpan: Span, timeRef: TimeRef, initial: Boolean)(implicit tx: S.Tx): Iterator[(ViewID, SpanLike, Obj[S])]

    Called during preparation of armed elements.

    Called during preparation of armed elements. This happens either during initial prepare or during grid-events. Given the prepareSpan, the sub-class should

    - find the elements using an intersect - for each build a view and store it somewhere - for each view call prepareChild - accumulate the results of prepareChild into a Map that is returned.

    The map will become part of IPreparing. (NOT: The returned Boolean indicates if elements were found (true) or not (false)).

    initial

    if true this is an initial preparation which means the method must include views that start before prepareSpan if their span overlaps with prepareSpan. If false this is a follow up from gridReached and the search must be restricted to views that start no earlier than prepareSpan.

    Attributes
    protected
  10. abstract def stopView(h: ElemHandle)(implicit tx: S.Tx): Unit

    Should be called from processEvent for views that should be stopped and disposed.

    Should be called from processEvent for views that should be stopped and disposed. The caller is responsible for removing the view also from a view-tree if such structure is maintained. NOT: This method ends by calling viewRemoved.

    Attributes
    protected
  11. abstract def stopViews()(implicit tx: S.Tx): Unit

    Stops and disposes all currently playing views.

    Stops and disposes all currently playing views.

    Attributes
    protected
  12. abstract def viewEventAfter(offset: Long)(implicit tx: S.Tx): Long

    Report the next interesting frame greater than the given frame for which eventReached (internal) and processEvent will be called.

    Report the next interesting frame greater than the given frame for which eventReached (internal) and processEvent will be called. If no such event exists, the method must return Long.MaxValue.

    Attributes
    protected

Concrete 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. object IStopped extends InternalState with Product with Serializable

    Attributes
    protected
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. final def childPreparedOrRemoved(childView: Elem)(implicit tx: S.Tx): Unit

    Attributes
    protected
  9. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def dispose()(implicit tx: S.Tx): Unit

    Sub-classes may override this and call super.dispose() if they wish to free additional observers, e.

    Sub-classes may override this and call super.dispose() if they wish to free additional observers, e.g. the timeline or grapheme observer.

  11. final def elemAdded(vid: ViewID, span: SpanLike, obj: Obj[S])(implicit tx: S.Tx): Unit

    Attributes
    protected
  12. final def elemRemoved(h: ElemHandle, elemPlays: Boolean)(implicit tx: S.Tx): Unit

    Attributes
    protected
  13. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. final def fire(update: State)(implicit tx: S.Tx): Unit

    Attributes
    protected
    Definition Classes
    ObservableImpl
  17. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  18. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  19. final def internalState(implicit tx: S.Tx): InternalState

    Attributes
    protected
  20. final def internalState_=(value: InternalState)(implicit tx: S.Tx): Unit

    Attributes
    protected
  21. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  22. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  25. final def play(timeRef: Option, target: Target)(implicit tx: S.Tx): Unit

    Ensures state is consistent, then checks preparation of children.

    Ensures state is consistent, then checks preparation of children. If all is good, sets internal state to IPlaying and calls processPlay. Next instructs scheduler and sets external state to Playing.

  26. final def prepare(timeRef: Option)(implicit tx: S.Tx): Unit

  27. final def prepareSpan()(implicit tx: S.Tx): Span

    Note: the prepare span will always start from current-frame and have a duration of at least LOOK_STOP.

    Note: the prepare span will always start from current-frame and have a duration of at least LOOK_STOP. I.e. during playback it contains the current play position.

    Attributes
    protected
  28. final def react(fun: (S.Tx) ⇒ (State) ⇒ Unit)(implicit tx: S.Tx): Disposable[S.Tx]

    Definition Classes
    ObservableImpl → Observable
  29. final def scheduledEvent()(implicit tx: S.Tx): Scheduled

    Attributes
    protected
  30. final def scheduledGrid()(implicit tx: S.Tx): Scheduled

    Attributes
    protected
  31. final def state(implicit tx: S.Tx): State

  32. final def stop()(implicit tx: S.Tx): Unit

  33. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  34. final def targetOption(implicit tx: S.Tx): Option[Target]

  35. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from ObservableImpl[S, State]

Inherited from Observable[S.Tx, State]

Inherited from AnyRef

Inherited from Any

Ungrouped