X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=Sound%2FEsounD.hs;h=e9276a0d10219249ccc86f140fcc72e45e4799c5;hb=d2396e7b6183bb033861069aaeb52be53a90bfdf;hp=ba46305e0af46eaaf354d81d9d16931e29d8a467;hpb=0465b7e3bed042d72da053bceeb4959403cc53a6;p=EsounD.git diff --git a/Sound/EsounD.hs b/Sound/EsounD.hs index ba46305..e9276a0 100644 --- a/Sound/EsounD.hs +++ b/Sound/EsounD.hs @@ -1,45 +1,9 @@ -- | Type-safe bindings to EsounD with monadic regions. module Sound.EsounD - ( Player - , openPlayer + ( module Sound.EsounD.Types + , module Sound.EsounD.Player ) where -import Control.Monad.CatchIO -import Control.Monad.Trans.Region -import Network -import System.IO.SaferFileHandles - -{- -data Mono -data Stereo - -data Recorder frame channels -data Filter frame channels -data Sampler --} - --- ^ An ESD handle for playing a stream. -data Player frame channels (r ∷ * → *) - = Player { - plRate ∷ Int - , plHandle ∷ RegionalFileHandle WriteMode r - } - -instance Dup (Player frame channels) where - dup pl - = do h' ← dup (plHandle pl) - return pl { plHandle = h' } - --- ^ Open an ESD handle for playing a stream. -openPlayer ∷ MonadCatchIO pr - ⇒ Int -- ^ sample rate for the stream. - → HostName -- ^ host to connect to. - → Maybe String -- ^ name used to identify this stream to - -- ESD (if any). - → RegionT s pr (Player frame channels (RegionT s pr)) -openPlayer rate host name - = return Player { - plRate = rate - , plHandle = error "FIXME: not implemented" - } +import Sound.EsounD.Types +import Sound.EsounD.Player