Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Synopsis
- data T i y a
- type SampleFreq = Int
- type Time = Int
- type Size = Int
- data Interleaved
- data Noninterleaved
- canMmapSampleResolution :: T i y Bool
- isDouble :: T i y Bool
- isBatch :: T i y Bool
- isBlockTransfer :: T i y Bool
- canOverrange :: T i y Bool
- canPause :: T i y Bool
- canResume :: T i y Bool
- isHalfDuplex :: T i y Bool
- isJointDuplex :: T i y Bool
- canSyncStart :: T i y Bool
- getRateNumden :: T i y (Word, Word)
- getSbits :: T i y Word
- getFifoSize :: T i y Word
- getChannels :: T i y Word
- getChannelsMin :: T i y Word
- getChannelsMax :: T i y Word
- testChannels :: Word -> T i y Errno
- setChannels :: Word -> T Noninterleaved y ()
- setChannelsMin :: Word -> T Noninterleaved y Word
- setChannelsMax :: Word -> T Noninterleaved y Word
- setChannelsMinmax :: Word -> Word -> T Noninterleaved y (Word, Word)
- setChannelsNear :: Word -> T Noninterleaved y Word
- setChannelsFirst :: Word -> T Noninterleaved y Word
- setChannelsLast :: Word -> T Noninterleaved y Word
- getRate :: T i y (SampleFreq, Ordering)
- getRateMin :: T i y (SampleFreq, Ordering)
- getRateMax :: T i y (SampleFreq, Ordering)
- testRate :: SampleFreq -> Ordering -> T i y Errno
- setRate :: SampleFreq -> Ordering -> T i y ()
- setRateMin :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering)
- setRateMax :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering)
- setRateMinmax :: SampleFreq -> Ordering -> SampleFreq -> Ordering -> T i y (SampleFreq, Ordering, SampleFreq, Ordering)
- setRateNear :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering)
- setRateFirst :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering)
- setRateLast :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering)
- setRateResample :: Bool -> T i y ()
- getRateResample :: T i y Bool
- setExportBuffer :: Bool -> T i y ()
- getExportBuffer :: T i y Bool
- getPeriodTime :: T i y (Time, Ordering)
- getPeriodTimeMin :: T i y (Time, Ordering)
- getPeriodTimeMax :: T i y (Time, Ordering)
- testPeriodTime :: Time -> Ordering -> T i y Errno
- setPeriodTime :: Time -> Ordering -> T i y ()
- setPeriodTimeMin :: Time -> Ordering -> T i y (Time, Ordering)
- setPeriodTimeMax :: Time -> Ordering -> T i y (Time, Ordering)
- setPeriodTimeMinmax :: Time -> Ordering -> Time -> Ordering -> T i y (Time, Ordering, Time, Ordering)
- setPeriodTimeNear :: Time -> Ordering -> T i y (Time, Ordering)
- setPeriodTimeFirst :: Time -> Ordering -> T i y (Time, Ordering)
- setPeriodTimeLast :: Time -> Ordering -> T i y (Time, Ordering)
- getPeriodSize :: T i y (Size, Ordering)
- getPeriodSizeMin :: T i y (Size, Ordering)
- getPeriodSizeMax :: T i y (Size, Ordering)
- testPeriodSize :: Size -> Ordering -> T i y Errno
- setPeriodSize :: Size -> Ordering -> T i y ()
- setPeriodSizeMin :: Size -> Ordering -> T i y (Size, Ordering)
- setPeriodSizeMax :: Size -> Ordering -> T i y (Size, Ordering)
- setPeriodSizeMinmax :: Size -> Ordering -> Size -> Ordering -> T i y (Size, Ordering, Size, Ordering)
- setPeriodSizeNear :: Size -> Ordering -> T i y (Size, Ordering)
- setPeriodSizeFirst :: Size -> Ordering -> T i y (Size, Ordering)
- setPeriodSizeLast :: Size -> Ordering -> T i y (Size, Ordering)
- setPeriodSizeInteger :: T i y ()
- getPeriods :: T i y (Word, Ordering)
- getPeriodsMin :: T i y (Word, Ordering)
- getPeriodsMax :: T i y (Word, Ordering)
- testPeriods :: Word -> Ordering -> T i y Errno
- setPeriods :: Word -> Ordering -> T i y ()
- setPeriodsMin :: Word -> Ordering -> T i y (Word, Ordering)
- setPeriodsMax :: Word -> Ordering -> T i y (Word, Ordering)
- setPeriodsMinmax :: Word -> Ordering -> Word -> Ordering -> T i y (Word, Ordering, Word, Ordering)
- setPeriodsNear :: Word -> Ordering -> T i y (Word, Ordering)
- setPeriodsFirst :: Word -> Ordering -> T i y (Word, Ordering)
- setPeriodsLast :: Word -> Ordering -> T i y (Word, Ordering)
- setPeriodsInteger :: T i y ()
- getBufferTime :: T i y (Time, Ordering)
- getBufferTimeMin :: T i y (Time, Ordering)
- getBufferTimeMax :: T i y (Time, Ordering)
- testBufferTime :: Time -> Ordering -> T i y Errno
- setBufferTime :: Time -> Ordering -> T i y ()
- setBufferTimeMin :: Time -> Ordering -> T i y (Time, Ordering)
- setBufferTimeMax :: Time -> Ordering -> T i y (Time, Ordering)
- setBufferTimeMinmax :: Time -> Ordering -> Time -> Ordering -> T i y (Time, Ordering, Time, Ordering)
- setBufferTimeNear :: Time -> Ordering -> T i y (Time, Ordering)
- setBufferTimeFirst :: Time -> Ordering -> T i y (Time, Ordering)
- setBufferTimeLast :: Time -> Ordering -> T i y (Time, Ordering)
- getBufferSize :: T i y Size
- getBufferSizeMin :: T i y Size
- getBufferSizeMax :: T i y Size
- testBufferSize :: Size -> T i y Errno
- setBufferSize :: Size -> T i y ()
- setBufferSizeMin :: Size -> T i y Size
- setBufferSizeMax :: Size -> T i y Size
- setBufferSizeMinmax :: Size -> Size -> T i y (Size, Size)
- setBufferSizeNear :: Size -> T i y Size
- setBufferSizeFirst :: Size -> T i y Size
- setBufferSizeLast :: Size -> T i y Size
- getTickTime :: T i y (Time, Ordering)
- getTickTimeMin :: T i y (Time, Ordering)
- getTickTimeMax :: T i y (Time, Ordering)
- testTickTime :: Time -> Ordering -> T i y Errno
- setTickTime :: Time -> Ordering -> T i y ()
- setTickTimeMin :: Time -> Ordering -> T i y (Time, Ordering)
- setTickTimeMax :: Time -> Ordering -> T i y (Time, Ordering)
- setTickTimeMinmax :: Time -> Ordering -> Time -> Ordering -> T i y (Time, Ordering, Time, Ordering)
- setTickTimeNear :: Time -> Ordering -> T i y (Time, Ordering)
- setTickTimeFirst :: Time -> Ordering -> T i y (Time, Ordering)
- setTickTimeLast :: Time -> Ordering -> T i y (Time, Ordering)
- getMinAlign :: T i y Size
- setRateBufferTime :: SampleFreq -> Time -> Time -> T Interleaved y (Size, Size)
Types
type SampleFreq = Int Source #
data Interleaved Source #
Instances
Access Interleaved Source # | |
Defined in Sound.ALSA.PCM.Core.Class access :: T Interleaved y Access setChannels :: C y => T Interleaved y () |
data Noninterleaved Source #
Instances
Access Noninterleaved Source # | |
Defined in Sound.ALSA.PCM.Core.Class access :: T Noninterleaved y Access setChannels :: C y => T Noninterleaved y () |
Primitive accessors to hardware parameters
canMmapSampleResolution :: T i y Bool Source #
isBlockTransfer :: T i y Bool Source #
canOverrange :: T i y Bool Source #
isHalfDuplex :: T i y Bool Source #
isJointDuplex :: T i y Bool Source #
canSyncStart :: T i y Bool Source #
getFifoSize :: T i y Word Source #
getChannels :: T i y Word Source #
getChannelsMin :: T i y Word Source #
getChannelsMax :: T i y Word Source #
setChannels :: Word -> T Noninterleaved y () Source #
For non-interleaved access the number of channels must be set manually.
It can be chosen at runtime,
but the compiler cannot check whether the number of allocated channels
matches the one in readn
and writen
.
In interleaved access the number of channels is derived from the type
and must not be set manually.
The number is static
but the compiler checks consistency with readi
and writei
.
setChannelsMin :: Word -> T Noninterleaved y Word Source #
setChannelsMax :: Word -> T Noninterleaved y Word Source #
setChannelsMinmax :: Word -> Word -> T Noninterleaved y (Word, Word) Source #
setChannelsNear :: Word -> T Noninterleaved y Word Source #
setChannelsFirst :: Word -> T Noninterleaved y Word Source #
setChannelsLast :: Word -> T Noninterleaved y Word Source #
getRateMin :: T i y (SampleFreq, Ordering) Source #
getRateMax :: T i y (SampleFreq, Ordering) Source #
setRateMin :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering) Source #
setRateMax :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering) Source #
setRateMinmax :: SampleFreq -> Ordering -> SampleFreq -> Ordering -> T i y (SampleFreq, Ordering, SampleFreq, Ordering) Source #
setRateNear :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering) Source #
setRateFirst :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering) Source #
setRateLast :: SampleFreq -> Ordering -> T i y (SampleFreq, Ordering) Source #
setRateResample :: Bool -> T i y () Source #
getRateResample :: T i y Bool Source #
setExportBuffer :: Bool -> T i y () Source #
getExportBuffer :: T i y Bool Source #
setPeriodTimeMinmax :: Time -> Ordering -> Time -> Ordering -> T i y (Time, Ordering, Time, Ordering) Source #
setPeriodSizeMinmax :: Size -> Ordering -> Size -> Ordering -> T i y (Size, Ordering, Size, Ordering) Source #
setPeriodSizeInteger :: T i y () Source #
setPeriodsMinmax :: Word -> Ordering -> Word -> Ordering -> T i y (Word, Ordering, Word, Ordering) Source #
setPeriodsInteger :: T i y () Source #
setBufferTimeMinmax :: Time -> Ordering -> Time -> Ordering -> T i y (Time, Ordering, Time, Ordering) Source #
getBufferSize :: T i y Size Source #
getBufferSizeMin :: T i y Size Source #
getBufferSizeMax :: T i y Size Source #
setBufferSize :: Size -> T i y () Source #
setTickTimeMinmax :: Time -> Ordering -> Time -> Ordering -> T i y (Time, Ordering, Time, Ordering) Source #
getMinAlign :: T i y Size Source #
Complex hardware parameter configuration
:: SampleFreq | sample frequency |
-> Time | buffer time |
-> Time | period time |
-> T Interleaved y (Size, Size) | (bufferSize,periodSize) |