packages feed

EsounD 0.1 → 0.2

raw patch · 7 files changed

+37/−46 lines, 7 filesdep +monad-controldep −monad-peeldep ~regionsdep ~safer-file-handles

Dependencies added: monad-control

Dependencies removed: monad-peel

Dependency ranges changed: regions, safer-file-handles

Files

EsounD.cabal view
@@ -2,19 +2,21 @@ Synopsis: Type-safe bindings to EsounD (ESD; Enlightened Sound Daemon) Description:         Type-safe bindings to EsounD: <http://www.tux.org/~ricdude/EsounD.html>-Version: 0.1+Version: 0.2 License: PublicDomain License-File: COPYING Author: PHO <pho at cielonegro dot org> Maintainer: PHO <pho at cielonegro dot org> Stability: experimental Homepage: http://cielonegro.org/EsounD.html+Bug-Reports: http://static.cielonegro.org/ditz/EsounD/ Category: Sound Tested-With: GHC == 7.0.1 Cabal-Version: >= 1.6 Build-Type: Simple Extra-Source-Files:     COPYING+    NEWS  Source-Repository head     Type: git@@ -29,10 +31,10 @@         base                      == 4.*,         base-unicode-symbols      == 0.2.*,         bindings-EsounD           == 0.1.*,-        monad-peel                == 0.1.*,+        monad-control             == 0.2.*,         network                   == 2.3.*,-        regions                   == 0.8.*,-        safer-file-handles        == 0.9.*,+        regions                   == 0.9.*,+        safer-file-handles        == 0.10.*,         storablevector            == 0.2.*,         transformers              == 0.2.*,         unix                      == 2.4.*
+ NEWS view
@@ -0,0 +1,2 @@+== EsounD-0.2 / 2011-05-11+* Replace use of MonadPeelIO with MonadControlIO (Thanks: Bas van Dijk)
Sound/EsounD/Controller.hs view
@@ -42,9 +42,9 @@     )     where import Bindings.EsounD-import Control.Exception.Peel+import Control.Exception.Control import Control.Monad.IO.Class-import Control.Monad.IO.Peel+import Control.Monad.IO.Control import Control.Monad.Trans.Region import Control.Monad.Trans.Region.OnExit import Control.Monad.Unicode@@ -75,13 +75,13 @@                 return co { coCloseH = ch' }  -- | Open an ESD handle for controlling ESD.-openController ∷ MonadPeelIO pr+openController ∷ MonadControlIO pr                ⇒ Maybe HostName -- ^ host to connect to.                → RegionT s pr (Controller (RegionT s pr)) openController host-    = block $+    = mask_ $       do s  ← liftIO openSocket-         ch ← onExit $ sanitizeIOError $ closeSocket' s+         ch ← onExit $ closeSocket' s          return Controller {                       coSocket = s                     , coCloseH = ch@@ -115,7 +115,6 @@      → cr () lock co     = liftIO $-      sanitizeIOError $       c'esd_lock (fdToCInt $ coSocket co)           ≫= failOnError "esd_lock(fd) returned an error" (≤ 0)           ≫  return ()@@ -129,7 +128,6 @@        → cr () unlock co     = liftIO $-      sanitizeIOError $       c'esd_unlock (fdToCInt $ coSocket co)           ≫= failOnError "esd_unlock(fd) returned an error" (≤ 0)           ≫  return ()@@ -143,7 +141,6 @@         → cr () standby co     = liftIO $-      sanitizeIOError $       c'esd_standby (fdToCInt $ coSocket co)           ≫= failOnError "esd_standby(fd) returned an error" (≤ 0)           ≫  return ()@@ -157,7 +154,6 @@        → cr () resume co     = liftIO $-      sanitizeIOError $       c'esd_resume (fdToCInt $ coSocket co)           ≫= failOnError "esd_resume(fd) returned an error" (≤ 0)           ≫  return ()@@ -180,7 +176,7 @@  class (Frame fr, Channels ch) ⇒ SampleSource fr ch dvec where     -- | Cache a sample in the server.-    cacheSample ∷ (MonadPeelIO pr)+    cacheSample ∷ (MonadControlIO pr)                 ⇒ Controller (RegionT s pr)                 → Maybe String  -- ^ name used to identify this sample to                 → Int           -- ^ sample rate@@ -189,7 +185,7 @@  instance Frame fr ⇒ SampleSource fr Mono (L.Vector fr) where     cacheSample co name rate v-        = block $+        = mask_ $           do sa ← createSample                    co                    name@@ -208,7 +204,7 @@  instance Frame fr ⇒ SampleSource fr Stereo (L.Vector fr, L.Vector fr) where     cacheSample co name rate (l, r)-        = block $+        = mask_ $           do sa ← createSample                    co                    name@@ -228,7 +224,7 @@ createSample ∷ ∀fr ch s pr.                 ( Frame fr                 , Channels ch-                , MonadPeelIO pr+                , MonadControlIO pr                 )              ⇒ Controller (RegionT s pr)              → Maybe String@@ -238,9 +234,9 @@              → Int              → RegionT s pr (Sample (RegionT s pr)) createSample co name rate _ _ len-    = block $+    = mask_ $       do sid ← liftIO newCache-         ch  ← onExit $ sanitizeIOError $ deleteCache sid+         ch  ← onExit $ deleteCache sid          return Sample {                       saID     = sid                     , saCtrl   = co@@ -290,7 +286,6 @@            → cr () playSample sa     = liftIO $-      sanitizeIOError $       c'esd_sample_play (fdToCInt $ coSocket $ saCtrl sa) (saID sa)           ≫= failOnError ( printf "esd_sample_play(%s, %s) returned an error"                                    (show $ coSocket $ saCtrl sa)@@ -306,7 +301,6 @@            → cr () loopSample sa     = liftIO $-      sanitizeIOError $       c'esd_sample_loop (fdToCInt $ coSocket $ saCtrl sa) (saID sa)           ≫= failOnError ( printf "esd_sample_loop(%s, %s) returned an error"                                    (show $ coSocket $ saCtrl sa)@@ -322,7 +316,6 @@            → cr () stopSample sa     = liftIO $-      sanitizeIOError $       c'esd_sample_stop (fdToCInt $ coSocket $ saCtrl sa) (saID sa)           ≫= failOnError ( printf "esd_sample_stop(%s, %s) returned an error"                                    (show $ coSocket $ saCtrl sa)@@ -338,7 +331,6 @@            → cr () killSample sa     = liftIO $-      sanitizeIOError $       c'esd_sample_kill (fdToCInt $ coSocket $ saCtrl sa) (saID sa)           ≫= failOnError ( printf "esd_sample_kill(%s, %s) returned an error"                                    (show $ coSocket $ saCtrl sa)@@ -398,7 +390,6 @@               → cr ServerInfo getServerInfo co     = liftIO $-      sanitizeIOError $       bracket retrieve dispose extractServerInfo     where       retrieve ∷ IO (Ptr C'esd_server_info)@@ -539,7 +530,6 @@            → cr AllInfo getAllInfo co     = liftIO $-      sanitizeIOError $       bracket retrieve dispose extractAllInfo     where       retrieve ∷ IO (Ptr C'esd_info)@@ -560,7 +550,6 @@              → cr () setStreamPan co sid l r     = liftIO $-      sanitizeIOError $       c'esd_set_stream_pan (fdToCInt $ coSocket co)                            (fromIntegral sid)                            (floor $ l ⋅ c'ESD_VOLUME_BASE)@@ -584,7 +573,6 @@                     → cr () setDefaultSamplePan co sid l r     = liftIO $-      sanitizeIOError $       c'esd_set_default_sample_pan (fdToCInt $ coSocket co)                                    (fromIntegral sid)                                    (floor $ l ⋅ c'ESD_VOLUME_BASE)@@ -619,7 +607,6 @@                → cr ServerState getServerState co     = liftIO $-      sanitizeIOError $       fmap extractServerState $       c'esd_get_standby_mode (fdToCInt $ coSocket co)           ≫= failOnError "esd_get_standby_mode(fd) returned an error" (≡ c'ESM_ERROR)
Sound/EsounD/Filter.hs view
@@ -13,9 +13,9 @@     )     where import Bindings.EsounD-import Control.Exception.Peel+import Control.Exception.Control import Control.Monad.IO.Class-import Control.Monad.IO.Peel+import Control.Monad.IO.Control import Control.Monad.Trans.Region import Control.Monad.Trans.Region.OnExit import Control.Monad.Unicode@@ -87,7 +87,7 @@ openFilter ∷ ∀fr ch s pr.               ( Frame fr               , Channels ch-              , MonadPeelIO pr+              , MonadControlIO pr               )            ⇒ Int            -- ^ sample rate for the stream.            → Maybe HostName -- ^ host to connect to.@@ -95,7 +95,7 @@                              --   ESD (if any).            → RegionT s pr (Filter fr ch (RegionT s pr)) openFilter rate host name-    = block $+    = mask_ $       do h  ← liftIO openSocket          ch ← onExit $ sanitizeIOError $ closeSocket h          return Filter {
Sound/EsounD/Monitor.hs view
@@ -13,9 +13,9 @@     )     where import Bindings.EsounD-import Control.Exception.Peel+import Control.Exception.Control import Control.Monad.IO.Class-import Control.Monad.IO.Peel+import Control.Monad.IO.Control import Control.Monad.Trans.Region import Control.Monad.Trans.Region.OnExit import Control.Monad.Unicode@@ -63,7 +63,7 @@ openMonitor ∷ ∀fr ch s pr.                ( Frame fr                , Channels ch-               , MonadPeelIO pr+               , MonadControlIO pr                )             ⇒ Int            -- ^ sample rate for the stream.             → Maybe HostName -- ^ host to connect to.@@ -71,7 +71,7 @@                               --   to ESD (if any).             → RegionT s pr (Monitor fr ch (RegionT s pr)) openMonitor rate host name-    = block $+    = mask_ $       do h  ← liftIO openSocket          ch ← onExit $ sanitizeIOError $ closeSocket h          return Monitor {@@ -83,7 +83,7 @@       fmt ∷ C'esd_format_t       fmt = frameFmt   ((⊥) ∷ fr) .|.             channelFmt ((⊥) ∷ ch) .|.-            c'ESD_STREAM            .|.+            c'ESD_STREAM          .|.             c'ESD_MONITOR        openSocket ∷ IO Handle
Sound/EsounD/Player.hs view
@@ -13,9 +13,9 @@     )     where import Bindings.EsounD-import Control.Exception.Peel+import Control.Exception.Control import Control.Monad.IO.Class-import Control.Monad.IO.Peel+import Control.Monad.IO.Control import Control.Monad.Trans.Region import Control.Monad.Trans.Region.OnExit import Control.Monad.Unicode@@ -65,7 +65,7 @@ openPlayer ∷ ∀fr ch s pr.               ( Frame fr               , Channels ch-              , MonadPeelIO pr+              , MonadControlIO pr               )            ⇒ Int            -- ^ sample rate for the stream.            → Maybe HostName -- ^ host to connect to.@@ -73,7 +73,7 @@                              --   ESD (if any).            → RegionT s pr (Player fr ch (RegionT s pr)) openPlayer rate host name-    = block $+    = mask_ $       do h  ← liftIO openSocket          ch ← onExit $ sanitizeIOError $ closeSocket h          return Player {
Sound/EsounD/Recorder.hs view
@@ -13,9 +13,9 @@     )     where import Bindings.EsounD-import Control.Exception.Peel+import Control.Exception.Control import Control.Monad.IO.Class-import Control.Monad.IO.Peel+import Control.Monad.IO.Control import Control.Monad.Trans.Region import Control.Monad.Trans.Region.OnExit import Control.Monad.Unicode@@ -63,7 +63,7 @@ openRecorder ∷ ∀fr ch s pr.                 ( Frame fr                 , Channels ch-                , MonadPeelIO pr+                , MonadControlIO pr                 )              ⇒ Int            -- ^ sample rate for the stream.              → Maybe HostName -- ^ host to connect to.@@ -71,7 +71,7 @@                                --   to ESD (if any).              → RegionT s pr (Recorder fr ch (RegionT s pr)) openRecorder rate host name-    = block $+    = mask_ $       do h  ← liftIO openSocket          ch ← onExit $ sanitizeIOError $ closeSocket h          return Recorder {@@ -83,7 +83,7 @@       fmt ∷ C'esd_format_t       fmt = frameFmt   ((⊥) ∷ fr) .|.             channelFmt ((⊥) ∷ ch) .|.-            c'ESD_STREAM            .|.+            c'ESD_STREAM          .|.             c'ESD_RECORD        openSocket ∷ IO Handle