Slice Tools
  • Home
  • SourceForge Page


  • libSlice
  • Home
  • Modules
  • Files
  • Examples
  • Additional Information


  • SourceForge.net Logo
     

    getConsQV.c File Reference


    Detailed Description

    Implementation of functions which calculate consensus and consensus quality values.

    Definition in file getConsQV.c.

    Go to the source code of this file.

    Ambiguity Code Calculations

    Functions for calculating ambiguity codes

    char libSlice_calculateAmbiguityFlags (long double cpA, long double cpC, long double cpG, long double cpT, long double cpGap, int highQualityThreshold, int baseCount)
     Calculates ambiguity flags from Churchill and Waterman procedure.

    char libSlice_convertAmbiguityFlags (char ambiguityFlags)
     Calculates extended ambiguity code bases from ambiguity flags.

    char libSlice_getAmbiguityCode (long double cpA, long double cpC, long double cpG, long double cpT, long double cpGap, int highQualityThreshold, int baseCount)
     Return IUPAC Ambiguity Code in one operation.


    Slice Consensus Calculations

    Functions for calculating the consensus and qv of a single slice

    void libSlice_setRecallEmpty (int recallEmpty)
     Toggles if empty slices should be recalled as gap.

    int libSlice_getConsensusParam (const libSlice_Slice *s, libSlice_Consensus *result, const libSlice_BaseDistribution *dist, int highQualityThreshold, int doAmbiguity)
     Calculates the consensus quality value for a single slice.

    int libSlice_updateAmbiguityConic (const libSlice_Slice *s, libSlice_Consensus *consensus, int highQuality)
     Updates the ambiguity flags using the conic model and scoring matrix.

    int libSlice_updateAmbiguity (const libSlice_Slice *s, libSlice_Consensus *consensus, int highQuality)
     Updates the ambiguity flags to include all high quality reads.

    int libSlice_getConsensus (const libSlice_Slice *s, libSlice_Consensus *result, const libSlice_BaseDistribution *dist, int highQualityThreshold)
     Calculates the consensus of a slice with NO ambiguity codes.

    int libSlice_getConsensusWithAmbiguity (const libSlice_Slice *s, libSlice_Consensus *result, const libSlice_BaseDistribution *dist, int highQualityThreshold)
     Calculates the consensus of a slice with ambiguity codes.

    int m_recallEmpty = 0

    SliceRange Calculations

    Functions for calculating the consensus and qv of a range of slices

    int libSlice_getConsensusRangeParam (const libSlice_Slice s[], libSlice_Consensus results[], int len, const libSlice_BaseDistribution *dist, int highQualityThreshold, int doAmbiguity)
     Calculates the Consensus Quality Values for a range of slices.

    int libSlice_getConsensusRange (const libSlice_Slice s[], libSlice_Consensus results[], int len, const libSlice_BaseDistribution *dist, int highQualityThreshold)
     Calculates the consensus of an array of slice with no ambiguity codes.

    int libSlice_getConsensusRangeWithAmbiguity (const libSlice_Slice s[], libSlice_Consensus results[], int len, const libSlice_BaseDistribution *dist, int highQualityThreshold)
     Calculates the consensus of an array of slice with ambiguity codes.


    Variables

    libSlice_BaseDistribution standardDistribution = {.20, .20, .20, .20, .20}
     The default distribution of bases for distributing qv probabilities.