{-# LANGUAGE DeriveDataTypeable #-} module Options where import System.Console.CmdArgs data Opts = Opts { trimKey :: Bool , trimAdapter :: Bool , trim :: Bool , filterEmpty :: Bool , output :: FilePath , input :: FilePath } deriving (Data,Typeable, Show, Eq) opts :: Opts opts = Opts { trimKey = False &= help "Trim only the TCAG key sequence" &= name "k" , trim = False &= help "Trim quality using clipping information" &= name "t" , trimAdapter = False &= help "Trim quality using adapter information" &= name "a" , filterEmpty = False &= help "Filter out reads that are empty after trimming" &= name "E" , output = def &= help "SFF file to write" &= name "o" , input = def &= args &= typFile } &= summary "fclip (biosff v0.3.7.1) - Extract information from SFF files" &= program "fclip" getArgs :: IO Opts getArgs = do o <- cmdArgs opts -- todo: option checking return o