midi 0.1.5 → 0.1.5.1
raw patch · 15 files changed
+51/−14 lines, 15 filesdep ~transformers
Dependency ranges changed: transformers
Files
- midi.cabal +4/−2
- src/Sound/MIDI/Example/ControllerRamp.hs +34/−0
- src/Sound/MIDI/File/Load.hs +1/−1
- src/Sound/MIDI/Message/Channel/Mode.hs +1/−1
- src/Sound/MIDI/Message/Channel/Voice.hs +1/−0
- src/Sound/MIDI/Message/System/Common.hs +1/−1
- src/Sound/MIDI/Message/System/Exclusive.hs +1/−1
- src/Sound/MIDI/Parser/ByteString.hs +1/−1
- src/Sound/MIDI/Parser/Class.hs +1/−1
- src/Sound/MIDI/Parser/File.hs +1/−1
- src/Sound/MIDI/Parser/Restricted.hs +1/−1
- src/Sound/MIDI/Parser/Status.hs +1/−1
- src/Sound/MIDI/Parser/Stream.hs +1/−1
- src/Sound/MIDI/Writer/Basic.hs +1/−1
- test/Main.hs +1/−1
midi.cabal view
@@ -1,5 +1,5 @@ Name: midi-Version: 0.1.5+Version: 0.1.5.1 License: GPL License-File: LICENSE Author: Henning Thielemann <haskell@henning-thielemann.de>@@ -41,7 +41,7 @@ explicit-exception >=0.1 && <0.2, bytestring >=0.9.0.1 && <0.10, binary >=0.4.2 && <0.6,- transformers >=0.0.1 && <0.2,+ transformers >=0.2 && <0.3, monoid-transformer >=0.0.1 && <0.1, QuickCheck >=1 && <3 If flag(splitBase)@@ -94,6 +94,8 @@ Sound.MIDI.Monoid Sound.MIDI.String Sound.MIDI.Utility+ -- didactic example+ Sound.MIDI.Example.ControllerRamp Executable test If !flag(buildTests)
+ src/Sound/MIDI/Example/ControllerRamp.hs view
@@ -0,0 +1,34 @@+module Sound.MIDI.Example.ControllerRamp {- Main -} where++import qualified Sound.MIDI.File as MidiFile+import qualified Sound.MIDI.File.Save as Save++-- import qualified Sound.MIDI.File.Event.Meta as MetaEvent+import qualified Sound.MIDI.File.Event as Event++import qualified Sound.MIDI.Message.Channel as ChannelMsg+import qualified Sound.MIDI.Message.Channel.Voice as VoiceMsg++-- import qualified Sound.MIDI.Parser.Report as Report++import qualified Data.EventList.Relative.TimeBody as EventList+-- import Data.EventList.Relative.MixedBody ((/.), (./), )++import qualified Data.ByteString.Lazy as B++-- import qualified Numeric.NonNegative.Wrapper as NonNeg++++example :: MidiFile.T+example =+ let chan = ChannelMsg.toChannel 0+ in MidiFile.Cons MidiFile.Parallel (MidiFile.Ticks 10)+ [EventList.fromPairList $+ map (\x -> (50, Event.MIDIEvent (ChannelMsg.Cons chan (ChannelMsg.Voice (VoiceMsg.Control VoiceMsg.mainVolume x)))))+ [0..127]]++main :: IO ()+main =+ B.writeFile "controller-ramp.mid"+ (Save.toByteString example)
src/Sound/MIDI/File/Load.hs view
@@ -36,7 +36,7 @@ import qualified Sound.MIDI.Parser.File as FileParser import qualified Sound.MIDI.Parser.Status as StatusParser import qualified Sound.MIDI.Parser.Report as Report-import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Control.Monad (liftM, liftM2, ) import qualified Data.ByteString.Lazy as B
src/Sound/MIDI/Message/Channel/Mode.hs view
@@ -14,7 +14,7 @@ import qualified Control.Monad.Exception.Asynchronous as Async import Sound.MIDI.Utility (toMaybe, )-import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Control.Monad (liftM, ) import Test.QuickCheck (Arbitrary(arbitrary), )
src/Sound/MIDI/Message/Channel/Voice.hs view
@@ -258,6 +258,7 @@ instance Bounded Controller where minBound = Controller 0 maxBound = Controller 119+ -- higher controller numbers have special meanings {- |
src/Sound/MIDI/Message/System/Common.hs view
@@ -8,7 +8,7 @@ import Sound.MIDI.Parser.Primitive import qualified Sound.MIDI.Parser.Class as Parser -import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Control.Monad (liftM, liftM2, ) import qualified Sound.MIDI.Writer.Basic as Writer
src/Sound/MIDI/Message/System/Exclusive.hs view
@@ -14,7 +14,7 @@ import qualified Sound.MIDI.Writer.Basic as Writer import Sound.MIDI.Monoid ((+#+)) -import Control.Monad.Trans (MonadTrans, lift, )+import Control.Monad.Trans.Class (MonadTrans, lift, ) import qualified Control.Monad.Exception.Asynchronous as Async import Data.Maybe (fromMaybe, )
src/Sound/MIDI/Parser/ByteString.hs view
@@ -10,7 +10,7 @@ import qualified Data.Binary.Get as Binary import Data.Binary.Get (Get, runGet, ) -import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import qualified Sound.MIDI.Parser.Report as Report
src/Sound/MIDI/Parser/Class.hs view
@@ -16,7 +16,7 @@ import qualified Control.Monad.Exception.Asynchronous as Async import qualified Control.Monad.Exception.Synchronous as Sync -import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Control.Monad.Trans.State (StateT, ) import Control.Monad (liftM, liftM2, when, )
src/Sound/MIDI/Parser/File.hs view
@@ -6,7 +6,7 @@ import Sound.MIDI.Parser.Class (UserMessage, PossiblyIncomplete, ) import Control.Monad.Trans.Reader (ReaderT(runReaderT), ask, )-import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Control.Monad (liftM, ) import qualified System.IO.Error as IOE
src/Sound/MIDI/Parser/Restricted.hs view
@@ -10,7 +10,7 @@ import qualified Control.Monad.Exception.Synchronous as Sync import qualified Control.Monad.Trans.State as State-import qualified Control.Monad.Trans as Trans+import qualified Control.Monad.Trans.Class as Trans import Control.Monad.Trans.State (StateT(runStateT), gets, get, put, ) import Control.Monad (when, )
src/Sound/MIDI/Parser/Status.hs view
@@ -12,7 +12,7 @@ import qualified Control.Monad.Exception.Synchronous as Sync import Control.Monad.Trans.State (StateT, evalStateT, ) import qualified Control.Monad.Trans.State as State-import qualified Control.Monad.Trans as Trans+import qualified Control.Monad.Trans.Class as Trans import Sound.MIDI.Utility (checkRange, ) import Data.Ix (Ix)
src/Sound/MIDI/Parser/Stream.hs view
@@ -6,7 +6,7 @@ import Control.Monad.Trans.State (State, runState, evalState, get, put, )-import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Control.Monad (liftM, when, ) import qualified Sound.MIDI.Parser.Report as Report
src/Sound/MIDI/Writer/Basic.hs view
@@ -13,7 +13,7 @@ import Sound.MIDI.Monoid ((+#+), genAppend, genConcat, ) import Control.Monad.Trans.Reader (ReaderT, runReaderT, ask, )-import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Data.List (genericLength, ) import Data.Word (Word8, )
test/Main.hs view
@@ -28,7 +28,7 @@ import qualified Data.List as List import Sound.MIDI.Utility (viewR, dropMatch, )-import Control.Monad.Trans (lift, )+import Control.Monad.Trans.Class (lift, ) import Control.Monad (when, ) import System.Random (mkStdGen, randomR, )