| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Sound.Tidal.Stream
Synopsis
- data Stream = Stream {
- sConfig :: Config
- sBusses :: MVar [Int]
- sStateMV :: MVar ValueMap
- sListen :: Maybe UDP
- sPMapMV :: MVar PlayMap
- sTempoMV :: MVar Tempo
- sGlobalFMV :: MVar (ControlPattern -> ControlPattern)
- sCxs :: [Cx]
- type PatId = String
- data Cx = Cx {}
- data StampStyle
- data Schedule
- = Pre StampStyle
- | Live
- data Target = Target {}
- data Args
- = Named {
- requiredArgs :: [String]
- | ArgList [(String, Maybe Value)]
- = Named {
- data OSC
- data PlayState = PlayState {
- pattern :: ControlPattern
- mute :: Bool
- solo :: Bool
- history :: [ControlPattern]
- type PlayMap = Map PatId PlayState
- sDefault :: String -> Maybe Value
- fDefault :: Double -> Maybe Value
- rDefault :: Rational -> Maybe Value
- iDefault :: Int -> Maybe Value
- bDefault :: Bool -> Maybe Value
- xDefault :: [Word8] -> Maybe Value
- required :: Maybe Value
- superdirtTarget :: Target
- superdirtShape :: OSC
- dirtTarget :: Target
- dirtShape :: OSC
- startStream :: Config -> [(Target, [OSC])] -> IO Stream
- sendHandshakes :: Stream -> IO ()
- sendO :: Bool -> Maybe UDP -> Cx -> Message -> IO ()
- sendBndl :: Bool -> Maybe UDP -> Cx -> Bundle -> IO ()
- resolve :: String -> String -> IO AddrInfo
- startTidal :: Target -> Config -> IO Stream
- startMulti :: [Target] -> Config -> IO ()
- toDatum :: Value -> Datum
- toData :: OSC -> Event ValueMap -> Maybe [Datum]
- substitutePath :: String -> ValueMap -> Maybe String
- getString :: ValueMap -> String -> Maybe String
- playStack :: PlayMap -> ControlPattern
- toOSC :: Double -> [Int] -> Event ValueMap -> Tempo -> OSC -> [(Double, Bool, Message)]
- doCps :: MVar Tempo -> (Double, Maybe Value) -> IO ()
- onTick :: Stream -> State -> IO ()
- processCps :: Tempo -> [Event ValueMap] -> ([(Tempo, Event ValueMap)], Tempo)
- streamOnce :: Stream -> ControlPattern -> IO ()
- streamFirst :: Stream -> ControlPattern -> IO ()
- doTick :: Bool -> Stream -> State -> IO ()
- setPreviousPatternOrSilence :: Stream -> IO ()
- send :: Maybe UDP -> Cx -> (Double, Bool, Message) -> IO ()
- sched :: Tempo -> Rational -> Double
- streamNudgeAll :: Stream -> Double -> IO ()
- streamResetCycles :: Stream -> IO ()
- hasSolo :: Map k PlayState -> Bool
- streamList :: Stream -> IO ()
- streamReplace :: Stream -> ID -> ControlPattern -> IO ()
- streamMute :: Stream -> ID -> IO ()
- streamMutes :: Stream -> [ID] -> IO ()
- streamUnmute :: Stream -> ID -> IO ()
- streamSolo :: Stream -> ID -> IO ()
- streamUnsolo :: Stream -> ID -> IO ()
- withPatIds :: Stream -> [ID] -> (PlayState -> PlayState) -> IO ()
- streamMuteAll :: Stream -> IO ()
- streamHush :: Stream -> IO ()
- streamUnmuteAll :: Stream -> IO ()
- streamUnsoloAll :: Stream -> IO ()
- streamSilence :: Stream -> ID -> IO ()
- streamAll :: Stream -> (ControlPattern -> ControlPattern) -> IO ()
- streamGet :: Stream -> String -> IO (Maybe Value)
- streamSet :: Valuable a => Stream -> String -> Pattern a -> IO ()
- streamSetI :: Stream -> String -> Pattern Int -> IO ()
- streamSetF :: Stream -> String -> Pattern Double -> IO ()
- streamSetS :: Stream -> String -> Pattern String -> IO ()
- streamSetB :: Stream -> String -> Pattern Bool -> IO ()
- streamSetR :: Stream -> String -> Pattern Rational -> IO ()
- openListener :: Config -> IO (Maybe UDP)
- ctrlResponder :: Int -> Config -> Stream -> IO ()
- verbose :: Config -> String -> IO ()
- recvMessagesTimeout :: Transport t => Double -> t -> IO [Message]
- streamGetcps :: Stream -> IO Time
- streamGetnow :: Stream -> IO Double
Documentation
Constructors
| Cx | |
data StampStyle Source #
Constructors
| BundleStamp | |
| MessageStamp |
Instances
| Eq StampStyle Source # | |
Defined in Sound.Tidal.Stream | |
| Show StampStyle Source # | |
Defined in Sound.Tidal.Stream Methods showsPrec :: Int -> StampStyle -> ShowS show :: StampStyle -> String # showList :: [StampStyle] -> ShowS | |
Constructors
| Pre StampStyle | |
| Live |
Constructors
| Target | |
Constructors
| Named | |
Fields
| |
| ArgList [(String, Maybe Value)] | |
Constructors
| PlayState | |
Fields
| |
superdirtShape :: OSC Source #
dirtTarget :: Target Source #
sendHandshakes :: Stream -> IO () Source #
startMulti :: [Target] -> Config -> IO () Source #
substitutePath :: String -> ValueMap -> Maybe String Source #
playStack :: PlayMap -> ControlPattern Source #
streamOnce :: Stream -> ControlPattern -> IO () Source #
streamFirst :: Stream -> ControlPattern -> IO () Source #
doTick :: Bool -> Stream -> State -> IO () Source #
Query the current pattern (contained in argument stream :: Stream)
for the events in the current arc (contained in argument st :: T.State),
translate them to OSC messages, and send these.
If an exception occurs during sending, this functions prints a warning and continues, because the likely reason is that the backend (supercollider) isn't running.
If any exception occurs before or outside sending (e.g., while querying the pattern, while computing a message), this function prints a warning and resets the current pattern to the previous one (or to silence if there isn't one) and continues, because the likely reason is that something is wrong with the current pattern.
setPreviousPatternOrSilence :: Stream -> IO () Source #
streamNudgeAll :: Stream -> Double -> IO () Source #
streamResetCycles :: Stream -> IO () Source #
streamList :: Stream -> IO () Source #
streamReplace :: Stream -> ID -> ControlPattern -> IO () Source #
streamMute :: Stream -> ID -> IO () Source #
streamMutes :: Stream -> [ID] -> IO () Source #
streamUnmute :: Stream -> ID -> IO () Source #
streamSolo :: Stream -> ID -> IO () Source #
streamUnsolo :: Stream -> ID -> IO () Source #
streamMuteAll :: Stream -> IO () Source #
streamHush :: Stream -> IO () Source #
streamUnmuteAll :: Stream -> IO () Source #
streamUnsoloAll :: Stream -> IO () Source #
streamSilence :: Stream -> ID -> IO () Source #
streamAll :: Stream -> (ControlPattern -> ControlPattern) -> IO () Source #
streamSetI :: Stream -> String -> Pattern Int -> IO () Source #
streamSetF :: Stream -> String -> Pattern Double -> IO () Source #
streamSetS :: Stream -> String -> Pattern String -> IO () Source #
streamSetB :: Stream -> String -> Pattern Bool -> IO () Source #
streamSetR :: Stream -> String -> Pattern Rational -> IO () Source #
openListener :: Config -> IO (Maybe UDP) Source #
ctrlResponder :: Int -> Config -> Stream -> IO () Source #
recvMessagesTimeout :: Transport t => Double -> t -> IO [Message] Source #
streamGetcps :: Stream -> IO Time Source #
streamGetnow :: Stream -> IO Double Source #