-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Binding to libSDL_mixer
--   
--   SDL_mixer is a sample multi-channel audio mixer library. It supports
--   any number of simultaneously playing channels of 16 bit stereo audio,
--   plus a single channel of music, mixed by the popular MikMod MOD,
--   Timidity MIDI, Ogg Vorbis, and SMPEG MP3 libraries.
@package SDL-mixer
@version 0.6.3.0


module Graphics.UI.SDL.Mixer.General
data AudioFormat
AudioU8 :: AudioFormat
AudioS8 :: AudioFormat
AudioU16LSB :: AudioFormat
AudioS16LSB :: AudioFormat
AudioU16MSB :: AudioFormat
AudioS16MSB :: AudioFormat
AudioU16Sys :: AudioFormat
AudioS16Sys :: AudioFormat
tryOpenAudio :: Int -> AudioFormat -> Int -> Int -> IO Bool
openAudio :: Int -> AudioFormat -> Int -> Int -> IO ()
closeAudio :: IO ()
tryQuerySpec :: IO (Maybe (Int, AudioFormat, Int))
querySpec :: IO (Int, AudioFormat, Int)
defaultFrequency :: Int


module Graphics.UI.SDL.Mixer.Types
data ChunkStruct
type Chunk = ForeignPtr ChunkStruct
data MusicStruct
type Music = ForeignPtr MusicStruct
type Channel = Int
data MusicType
MusicNone :: MusicType
MusicCmd :: MusicType
MusicWav :: MusicType
MusicMod :: MusicType
MusicMid :: MusicType
MusicOgg :: MusicType
MusicMp3 :: MusicType
data Fading
NoFading :: Fading
FadingOut :: Fading
FadingIn :: Fading
instance GHC.Enum.Bounded Graphics.UI.SDL.Mixer.Types.Fading
instance GHC.Enum.Enum Graphics.UI.SDL.Mixer.Types.Fading
instance GHC.Classes.Ord Graphics.UI.SDL.Mixer.Types.Fading
instance GHC.Classes.Eq Graphics.UI.SDL.Mixer.Types.Fading
instance GHC.Show.Show Graphics.UI.SDL.Mixer.Types.Fading
instance GHC.Enum.Bounded Graphics.UI.SDL.Mixer.Types.MusicType
instance GHC.Enum.Enum Graphics.UI.SDL.Mixer.Types.MusicType
instance GHC.Classes.Ord Graphics.UI.SDL.Mixer.Types.MusicType
instance GHC.Classes.Eq Graphics.UI.SDL.Mixer.Types.MusicType
instance GHC.Show.Show Graphics.UI.SDL.Mixer.Types.MusicType


module Graphics.UI.SDL.Mixer.Samples
mkFinalizedChunk :: Ptr ChunkStruct -> IO Chunk
maxVolume :: Int
tryLoadWAV :: FilePath -> IO (Maybe Chunk)
loadWAV :: FilePath -> IO Chunk
volumeChunk :: Chunk -> Int -> IO Int


module Graphics.UI.SDL.Mixer.Music
freeMusic :: Music -> IO ()
tryLoadMUS :: FilePath -> IO (Maybe Music)
loadMUS :: FilePath -> IO Music
tryPlayMusic :: Music -> Int -> IO Bool
playMusic :: Music -> Int -> IO ()
tryFadeInMusic :: Music -> Int -> Int -> IO Bool
fadeInMusic :: Music -> Int -> Int -> IO ()
tryFadeInMusicPos :: Music -> Int -> Int -> Double -> IO Bool
fadeInMusicPos :: Music -> Int -> Int -> Double -> IO ()
setMusicVolume :: Int -> IO ()
getMusicVolume :: IO Int
modifyMusicVolume :: (Int -> Int) -> IO ()
pauseMusic :: IO ()
resumeMusic :: IO ()
rewindMusic :: IO ()
trySetMusicPosition :: Double -> IO Bool
setMusicPosition :: Double -> IO ()
trySetMusicCmd :: String -> IO Bool
setMusicCmd :: String -> IO ()
disableMusicCmd :: IO ()
haltMusic :: IO ()
tryFadeOutMusic :: Int -> IO Bool
fadeOutMusic :: Int -> IO ()
getMusicType :: Maybe Music -> IO MusicType
playingMusic :: IO Bool
pausedMusic :: IO Bool
fadingMusic :: IO Fading


module Graphics.UI.SDL.Mixer.Channels
allocateChannels :: Int -> IO Int
volume :: Int -> Int -> IO Int
tryPlayChannel :: Channel -> Chunk -> Int -> IO Int
playChannel :: Channel -> Chunk -> Int -> IO Int
tryFadeInChannel :: Channel -> Chunk -> Int -> Int -> IO Int
fadeInChannel :: Channel -> Chunk -> Int -> Int -> IO Int
tryFadeInChannelTimed :: Channel -> Chunk -> Int -> Int -> Int -> IO Int
fadeInChannelTimed :: Channel -> Chunk -> Int -> Int -> Int -> IO Int
pause :: Channel -> IO ()
resume :: Channel -> IO ()
haltChannel :: Channel -> IO ()
expireChannel :: Channel -> Int -> IO Int
fadeOutChannel :: Channel -> Int -> IO Int
isChannelPlaying :: Channel -> IO Bool
numChannelsPlaying :: IO Int
isChannelPaused :: Channel -> IO Bool
numChannelsPaused :: IO Int
fadingChannel :: Channel -> IO Fading
getChunk :: Channel -> IO Chunk

module Graphics.UI.SDL.Mixer.Version
compiledFor :: Version
linkedWith :: IO Version
instance Foreign.Storable.Storable Graphics.UI.SDL.Mixer.Version.SDLVersion

module Graphics.UI.SDL.Mixer
