streaming-fft-0.1.0.0: src/Streaming/FFT/Types.hs
{-# LANGUAGE GADTs #-}
{-# OPTIONS_GHC -Wall #-}
module Streaming.FFT.Types
( -- * types
Signal(..)
, Shift(..)
, Bin(..)
, Transform(..)
, Window(..)
) where
import Control.Monad.Primitive
import Data.Complex
import Data.Primitive.PrimArray
import Prelude hiding (undefined, Rational)
-- {-# WARNING undefined "'undefined' remains in code" #-}
-- undefined :: a
-- undefined = error "Prelude.undefined"
newtype Window m e = Window
{ getWindow :: MutablePrimArray (PrimState m) (Complex e) }
newtype Transform m e = Transform
{ getTransform :: MutablePrimArray (PrimState m) (Complex e) }
newtype Signal e = Signal Int
newtype Shift e = Shift Int
newtype Bin e = Bin Int