Safe Haskell | None |
---|---|
Language | Haskell2010 |
Replacement of Yampa's reactimate
function with more fine-tuned
control and debugging capabilities.
See FRP.Titan.Debug.CommTCP for a communication bridge using TCP sockets.
Synopsis
- reactimateControl :: forall p a b. (Read p, Show p, Show a, Read a, Show b, Read b, Pred p a b) => ExternalBridge -> Preferences -> [Command p] -> IO a -> (Bool -> IO (DTime, Maybe a)) -> (Bool -> b -> IO Bool) -> SF a b -> IO ()
- data ExternalBridge = ExternalBridge {}
- data Preferences = Preferences {}
- defaultPreferences :: Preferences
- data Command p
- class Read p => Pred p i o | p -> i, p -> o where
Debugging
:: (Read p, Show p, Show a, Read a, Show b, Read b, Pred p a b) | |
=> ExternalBridge | Debug: Communication bridge for the interactive GUI |
-> Preferences | Debug: Debugging preferences |
-> [Command p] | Debug: List of commands (exposed only to facilitate fixing the type of predicates p) |
-> IO a | FRP: Initial sensing action |
-> (Bool -> IO (DTime, Maybe a)) | FRP: Continued sensing action |
-> (Bool -> b -> IO Bool) | FRP: Rendering/consumption action |
-> SF a b | FRP: Signal Function that defines the program |
-> IO () |
Start a Yampa program with interactive debugging enabled.
Communication bridge
data ExternalBridge Source #
Configuration layer to communicate the FRP app and the debugging GUI.
Debugging preferences
defaultPreferences :: Preferences Source #
Default simulation preferences that do not dump the input to the log every cycle.
Debugging commands
An interactive, debugging command.