Safe Haskell | None |
---|
- data Context = Context {}
- newtype Schedule = Schedule Int
- newtype Reactor t a = Reactor {}
- data InEvent = InEvent (Map Schedule [Handler AbsoluteTicks]) [T]
- inEventBeat :: T InEvent (Map Schedule [Handler AbsoluteTicks])
- type InQueue = Map NFrames InEvent
- type OutQueue = Map NFrames [T]
- run :: ThrowsErrno e => (forall t. Frameworks t => Event t T -> Event t [T]) -> ReaderT Handle (ExceptionalT e IO) ()
- runM :: ThrowsErrno e => (forall t. Frameworks t => Behavior t AbsoluteTicks -> Event t T -> Reactor t (Event t [T])) -> ReaderT Handle (ExceptionalT e IO) ()
- type Handler a = a -> IO ()
- viewQueueL :: InQueue -> Maybe ((NFrames, Either [Handler AbsoluteTicks] T), InQueue)
- normalizeInQueue :: InQueue -> InQueue
- reduceQueueTime :: NFrames -> Map NFrames a -> Map NFrames a
- process :: Handle -> IORef AbsoluteTicks -> IORef InQueue -> IORef OutQueue -> Handler (NFrames, NFrames) -> Handler T -> NFrames -> ExceptionalT Errno IO ()
- type RelativeTicks = T Reactor Relative Ticks
- type AbsoluteTicks = T Reactor Absolute Ticks
- type RelativeSeconds = T Reactor Relative Seconds
- nframesFromTicks :: RelativeTicks -> NFrames
- ticksFromNFrames :: NFrames -> RelativeTicks
- absTicksFromNFrames :: NFrames -> AbsoluteTicks
- sendBeat :: Context -> Schedule -> Handler AbsoluteTicks -> AbsoluteTicks -> IO ()
- cancelBeats :: Context -> Schedule -> IO ()
make JACK reactive
run :: ThrowsErrno e => (forall t. Frameworks t => Event t T -> Event t [T]) -> ReaderT Handle (ExceptionalT e IO) ()Source
runM :: ThrowsErrno e => (forall t. Frameworks t => Behavior t AbsoluteTicks -> Event t T -> Reactor t (Event t [T])) -> ReaderT Handle (ExceptionalT e IO) ()Source
viewQueueL :: InQueue -> Maybe ((NFrames, Either [Handler AbsoluteTicks] T), InQueue)Source
process :: Handle -> IORef AbsoluteTicks -> IORef InQueue -> IORef OutQueue -> Handler (NFrames, NFrames) -> Handler T -> NFrames -> ExceptionalT Errno IO ()Source
sendBeat :: Context -> Schedule -> Handler AbsoluteTicks -> AbsoluteTicks -> IO ()Source