Example #1
0
        /// <summary>
        /// Converts quality scores from fromQualityScore type to toQualityScore type
        /// Ex: Phred to Solexa or Solexa to Phred
        /// </summary>
        /// <param name="fromQualityScoreType">from quality score type.</param>
        /// <param name="toQualityScoreType">to quality score type.</param>
        /// <param name="qualScores">Quality scores</param>
        private static int[] Convert(BaseQualityScoreType fromQualityScoreType, BaseQualityScoreType toQualityScoreType, int[] qualScores)
        {
            long count = qualScores.GetLongLength();
            int[] result = new int[count];
            if (fromQualityScoreType == toQualityScoreType)
            {
                Helper.Copy(qualScores, result, qualScores.GetLongLength());
            }
            else
            {
                if (fromQualityScoreType == BaseQualityScoreType.PhredBaseQualityScore)
                {
                    for (long i = 0; i < count; i++)
                    {
                        result[i] = ConvertPhredToSolexa(qualScores[i]);
                    }
                }
                else
                {
                    for (long i = 0; i < count; i++)
                    {
                        result[i] = ConvertSolexaToPhred(qualScores[i]);
                    }
                }
            }

            return result;
        }
Example #2
0
        /// <summary>
        /// Converts quality score from fromQualityScore type to toQualityScore type
        /// Ex: Phred to Solexa or Solexa to Phred
        /// </summary>
        /// <param name="fromQualityScoreType">from quality score type.</param>
        /// <param name="toQualityScoreType">to quality score type.</param>
        /// <param name="qualScore">Quality score</param>
        private static int Convert(BaseQualityScoreType fromQualityScoreType, BaseQualityScoreType toQualityScoreType, int qualScore)
        {
            int result;
            if (fromQualityScoreType == toQualityScoreType)
            {
                result = qualScore;
            }
            else
            {
                if (fromQualityScoreType == BaseQualityScoreType.PhredBaseQualityScore)
                {
                    result = ConvertPhredToSolexa(qualScore);
                }
                else
                {
                    result = ConvertSolexaToPhred(qualScore);
                }
            }

            return result;
        }