Trait

de.sciss.fscape.stream.impl

DualAuxWindowedLogic

Related Doc: package impl

Permalink

trait DualAuxWindowedLogic[S <: Shape] extends DualAuxChunkImpl[S]

A logic component for windowed processing, where window parameters are obtained "on demand", i.e. at the speed of one per window.

"aux 2" serves as additional buffer to the main window processing, and thus needs to be exhausted before main processing function is called.

Self Type
DualAuxWindowedLogic[S] with GraphStageLogic
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DualAuxWindowedLogic
  2. DualAuxChunkImpl
  3. InOutImpl
  4. Node
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def allocOutputBuffers(): Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  2. abstract def aux1CanRead: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  3. abstract def aux2CanRead: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  4. abstract def canWrite: Boolean

    Permalink

    Whether all outputs are available for pushing.

    Whether all outputs are available for pushing.

    Definition Classes
    InOutImpl
  5. abstract def completeAsync(): Future[Unit]

    Permalink
    Definition Classes
    Node
  6. abstract def completeStage(): Unit

    Permalink

    Exposed from GraphStageLogic API.

    Exposed from GraphStageLogic API.

    Definition Classes
    InOutImpl
  7. implicit abstract def control: Control

    Permalink
    Attributes
    protected
    Definition Classes
    InOutImplNode
  8. abstract def copyInputToWindow(writeToWinOff: Long, chunk: Int): Unit

    Permalink

    Issues a copy from input buffer to internal window buffer.

    Issues a copy from input buffer to internal window buffer.

    writeToWinOff

    current offset into internal window buffer

    chunk

    number of frames to copy

    Attributes
    protected
  9. abstract def copyWindowToOutput(readFromWinOff: Long, outOff: Int, chunk: Int): Unit

    Permalink
    Attributes
    protected
  10. abstract def failAsync(ex: Exception): Unit

    Permalink
    Definition Classes
    Node
  11. abstract def freeOutputBuffers(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    InOutImpl
  12. abstract def inValid: Boolean

    Permalink

    Whether all input buffers are valid.

    Whether all input buffers are valid.

    Definition Classes
    InOutImpl
  13. abstract def inputsEnded: Boolean

    Permalink

    If crucial inputs have been closed.

    If crucial inputs have been closed.

    Attributes
    protected
  14. abstract def launchAsync(): Future[Unit]

    Permalink
    Definition Classes
    Node
  15. abstract def layer: Layer

    Permalink
    Definition Classes
    Node
  16. abstract def mainCanRead: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  17. abstract def processAux2(): Boolean

    Permalink
    Attributes
    protected
  18. abstract def processWindow(writeToWinOff: Long): Long

    Permalink

    Called when the internal window buffer is full, in order to proceed to the next phase of copying from window to output.

    Called when the internal window buffer is full, in order to proceed to the next phase of copying from window to output. (transitioning between copyInputToWindow and copyWindowToOutput)

    writeToWinOff

    the current offset into the internal window buffer. this is basically the amount of frames available for processing.

    returns

    the number of frames available for sending through copyWindowToOutput (this becomes readFromWinRemain).

    Attributes
    protected
  19. abstract def readAux1Ins(): Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  20. abstract def readAux2Ins(): Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  21. abstract def readMainIns(): Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  22. abstract def shape: S

    Permalink
    Definition Classes
    InOutImplNode
  23. abstract def startNextWindow(): Long

    Permalink

    Notifies about the start of the next window.

    Notifies about the start of the next window.

    returns

    the number of frames to write to the internal window buffer (becomes writeToWinRemain)

    Attributes
    protected
  24. abstract def updateCanWrite(): Unit

    Permalink

    Requests the update of the canWrite status.

    Requests the update of the canWrite status.

    Definition Classes
    InOutImpl
  25. abstract def writeOuts(outOff: Int): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    InOutImpl

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 asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. final var aux1InOff: Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  6. final var aux1InRemain: Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  7. final var aux2InOff: Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  8. final var aux2InRemain: Int

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. final def eq(arg0: AnyRef): Boolean

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  15. final def isInAvailable[A](in: Inlet[A]): Boolean

    Permalink

    Exposed from protected GraphStageLogic API.

    Exposed from protected GraphStageLogic API.

    Definition Classes
    InOutImpl
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. final def isOutAvailable[A](out: Outlet[A]): Boolean

    Permalink

    Exposed from protected GraphStageLogic API.

    Exposed from protected GraphStageLogic API.

    Definition Classes
    InOutImpl
  18. final var mainInOff: Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  19. final var mainInRemain: Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  20. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  23. final var outOff: Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  24. final var outRemain: Int

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxChunkImpl
  25. final def postStop(): Unit

    Permalink

    Calls stopped and then removes the node from the control.

    Calls stopped and then removes the node from the control.

    Definition Classes
    Node
  26. final def preStart(): Unit

    Permalink

    Final so we don't accidentally place code here.

    Final so we don't accidentally place code here. In order to initialize state, use NodeHasInitImpl and implement init.

    Definition Classes
    Node
  27. final def process(): Unit

    Permalink
    Definition Classes
    DualAuxChunkImplInOutImpl
    Annotations
    @tailrec()
  28. final def processChunk(): Boolean

    Permalink

    Should read and possibly update inRemain, outRemain, inOff, outOff.

    Should read and possibly update inRemain, outRemain, inOff, outOff.

    returns

    true if this method did any actual processing.

    Attributes
    protected
    Definition Classes
    DualAuxWindowedLogicDualAuxChunkImpl
  29. final def setInHandler[A](in: Inlet[A], h: InHandler): Unit

    Permalink

    Exposed from protected GraphStageLogic API.

    Exposed from protected GraphStageLogic API.

    Definition Classes
    InOutImpl
  30. final def setOutHandler[A](out: Outlet[A], h: OutHandler): Unit

    Permalink

    Exposed from protected GraphStageLogic API.

    Exposed from protected GraphStageLogic API.

    Definition Classes
    InOutImpl
  31. final def shouldComplete(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    DualAuxWindowedLogicDualAuxChunkImpl
  32. def stopped(): Unit

    Permalink

    Subclasses can override this

    Subclasses can override this

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

    Permalink
    Definition Classes
    AnyRef
  34. def toString(): String

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

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

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

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

Inherited from DualAuxChunkImpl[S]

Inherited from InOutImpl[S]

Inherited from Node

Inherited from AnyRef

Inherited from Any

Ungrouped