ViennaRNA-extras-0.0.0.1: BioInf/ViennaRNA/RNAeval.hs
module BioInf.ViennaRNA.RNAeval where
import Biobase.Types.Energy (DG(..))
import Biobase.Types.Sequence (RNAseq(..))
import Biobase.Types.Structure (RNAss(..))
import BioInf.ViennaRNA.Bindings (eosTemp)
import BioInf.ViennaRNA.Internal
-- | High-level wrapper for energy-of-struct calculations similar to the
-- command line @RNAeval@.
rnaeval ∷ Double → RNAseq → RNAss → DG
rnaeval t (RNAseq s1) (RNAss s2)
= unsafePerformIO . withMutex
$! DG <$> eosTemp t s1 s2
{-# NoInline rnaeval #-}