sample-frame-0.0.3: Handling of samples in an (audio) signal

Safe HaskellSafe-Inferred

Sound.Frame

Synopsis

Documentation

class C y whereSource

This is a class for nested tuples used as sample frames.

Should we make Storable a superclass of C?

Methods

numberOfChannels :: y -> IntSource

The argument is not touched and can be undefined

sizeOfElement :: y -> IntSource

Size of elements. In a nested record type, like Stereo (Stereo a), it is the size of the atomic element, in our example a. We assume that the atomic element values all have the same size, such that sizeOfElement undefined is defined.

Instances

C Double 
C Float 
C Int8 
C Int16 
C Int32 
C Word8 
C Word16 
C Word32 
C T 
C a => C (T a) 

numberOfChannelsFoldable :: (C y, Foldable f) => f y -> IntSource

Default implementations for a foldable Frame.

sizeOfElementType :: C y => f y -> IntSource

Returns the size of an undefined element. This might be more efficient than sizeOfElementFoldable.

paddedSizeOf :: Storable a => a -> IntSource

Space that an element consumes in a Storable Array. This is space for the element plus padding.

withSignal :: (y -> a) -> sig y -> aSource