Trait/Object

de.sciss.synth.proc.impl

AuralGraphemeBase

Related Docs: object AuralGraphemeBase | package impl

Permalink

trait AuralGraphemeBase[S <: Sys[S], I <: Sys[I], Target, Elem <: ObjViewBase[S, Target]] extends AuralScheduledBase[S, Target, Elem] with ObservableImpl[S, State]

Base for AuralGraphemeAttribute

Self Type
AuralGraphemeBase[S, I, Target, Elem] with ObjViewBase[S, Target]
See also

AuralGraphemeAttribute

Linear Supertypes
AuralScheduledBase[S, Target, Elem], ObservableImpl[S, State], ObjViewBase[S, Target], ViewBase[S, Target], Disposable[S.Tx], Observable[S.Tx, State], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AuralGraphemeBase
  2. AuralScheduledBase
  3. ObservableImpl
  4. ObjViewBase
  5. ViewBase
  6. Disposable
  7. Observable
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type ElemHandle = AuralGraphemeBase.ElemHandle[S, Elem]

    Permalink
    Attributes
    protected
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  2. final class IPlaying extends ITimedState

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  3. final class IPreparing extends ITimedState

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  4. sealed trait ITimedState extends InternalState

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  5. sealed trait InternalState extends Disposable[S.Tx]

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  6. type Model = Obj[S]

    Permalink

    An opaque type coming out of processPrepare and ending up in mkView and elemAdded.

    An opaque type coming out of processPrepare and ending up in mkView and elemAdded. Typically Obj[S].

    Attributes
    protected
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  7. type PrepareResult = ((AuralGraphemeBase.this)#ViewId, SpanLike, (AuralGraphemeBase.this)#Model)

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  8. type ViewId = Unit

    Permalink

    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
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase

Abstract Value Members

  1. implicit abstract val context: AuralContext[S]

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  2. abstract def iSys: (S.Tx) ⇒ I.Tx

    Permalink
    Attributes
    protected
  3. abstract def makeViewElem(start: Long, obj: Obj[S])(implicit tx: S.Tx): Elem

    Permalink
    Attributes
    protected
  4. abstract def objH: Source[S.Tx, Grapheme[S]]

    Permalink

    The view must store a handle to its underlying model.

    The view must store a handle to its underlying model.

    Definition Classes
    AuralGraphemeBaseObjViewBase
  5. abstract def viewTree: Map[I, Long, IndexedSeq[Elem]]

    Permalink
    Attributes
    protected

Concrete Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def ElemHandle(start: Long, view: Elem): (AuralGraphemeBase.this)#ElemHandle

    Permalink
    Attributes
    protected
  5. object IStopped extends InternalState with Product with Serializable

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def checkReschedule(h: (AuralGraphemeBase.this)#ElemHandle, currentOffset: Long, oldTarget: Long, elemPlays: Boolean)(implicit tx: S.Tx): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  8. final def childPreparedOrRemoved(childView: Elem)(implicit tx: S.Tx): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  9. def clone(): AnyRef

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

    Permalink

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

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

    Definition Classes
    AuralGraphemeBaseAuralScheduledBase → Disposable
  11. final def elemAdded(vid: (AuralGraphemeBase.this)#ViewId, span: SpanLike, obj: (AuralGraphemeBase.this)#Model)(implicit tx: S.Tx): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  12. def elemFromHandle(h: (AuralGraphemeBase.this)#ElemHandle): Elem

    Permalink
    Attributes
    protected
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  13. final def elemRemoved(h: (AuralGraphemeBase.this)#ElemHandle, elemPlays: Boolean)(implicit tx: S.Tx): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  14. final def eq(arg0: AnyRef): Boolean

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

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  20. def init(gr: Grapheme[S])(implicit tx: S.Tx): AuralGraphemeBase.this

    Permalink
  21. final def internalState(implicit tx: S.Tx): (AuralGraphemeBase.this)#InternalState

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  22. final def internalState_=(value: (AuralGraphemeBase.this)#InternalState)(implicit tx: S.Tx): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  23. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  24. def mkView(vid: Unit, span: SpanLike, obj: Obj[S])(implicit tx: S.Tx): (AuralGraphemeBase.this)#ElemHandle

    Permalink

    Should create a new view for the given object and return a handle to it.

    Should create a new view for the given object and return a handle to it. As a side effect should also memorize the view in a view-tree, if such structure is maintained, for later retrieval in viewEventAfter

    Attributes
    protected
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  25. final def modelEventAfter(offset: Long)(implicit tx: S.Tx): Long

    Permalink

    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
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  26. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  27. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  29. def playView(h: (AuralGraphemeBase.this)#ElemHandle, timeRef: Option, target: Target)(implicit tx: S.Tx): Unit

    Permalink

    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
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  30. final def prepare(timeRef: Option)(implicit tx: S.Tx): Unit

    Permalink
    Definition Classes
    AuralScheduledBaseViewBase
  31. final def prepareSpan()(implicit tx: S.Tx): Span

    Permalink

    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
    Definition Classes
    AuralScheduledBase
  32. final def processEvent(play: (AuralGraphemeBase.this)#IPlaying, timeRef: TimeRef)(implicit tx: S.Tx): Unit

    Permalink

    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
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  33. final def processPlay(timeRef: TimeRef, target: Target)(implicit tx: S.Tx): Unit

    Permalink

    Called during play.

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

    Attributes
    protected
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  34. final def processPrepare(spanP: Span, timeRef: TimeRef, initial: Boolean)(implicit tx: S.Tx): Iterator[(AuralGraphemeBase.this)#PrepareResult]

    Permalink

    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.

    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
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  35. final def react(fun: (S.Tx) ⇒ (State) ⇒ Unit)(implicit tx: S.Tx): Disposable[S.Tx]

    Permalink
    Definition Classes
    ObservableImpl → Observable
  36. def reactNow(fun: (S.Tx) ⇒ (State) ⇒ Unit)(implicit tx: S.Tx): Disposable[S.Tx]

    Permalink
    Definition Classes
    ViewBase
  37. final def run(timeRef: Option, target: Target)(implicit tx: S.Tx): Unit

    Permalink

    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.

    Definition Classes
    AuralScheduledBaseViewBase
  38. final def scheduledEvent()(implicit tx: S.Tx): Scheduled

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  39. final def scheduledGrid()(implicit tx: S.Tx): Scheduled

    Permalink
    Attributes
    protected
    Definition Classes
    AuralScheduledBase
  40. final def state(implicit tx: S.Tx): State

    Permalink
    Definition Classes
    AuralScheduledBaseViewBase
  41. final def stop()(implicit tx: S.Tx): Unit

    Permalink
    Definition Classes
    AuralScheduledBaseViewBase
  42. def stopView(h: (AuralGraphemeBase.this)#ElemHandle)(implicit tx: S.Tx): Unit

    Permalink

    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
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  43. def stopViews()(implicit tx: S.Tx): Unit

    Permalink

    Stops and disposes all currently playing views.

    Stops and disposes all currently playing views.

    Attributes
    protected
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  44. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AuralScheduledBase
  46. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  47. final def tpe: Type

    Permalink
    Definition Classes
    AuralGraphemeBaseObjViewBase
  48. final def viewEventAfter(offset: Long)(implicit tx: S.Tx): Long

    Permalink

    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
    Definition Classes
    AuralGraphemeBaseAuralScheduledBase
  49. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AuralScheduledBase[S, Target, Elem]

Inherited from ObservableImpl[S, State]

Inherited from ObjViewBase[S, Target]

Inherited from ViewBase[S, Target]

Inherited from Disposable[S.Tx]

Inherited from Observable[S.Tx, State]

Inherited from AnyRef

Inherited from Any

Ungrouped