Ejemplo n.º 1
0
    public int AddByScore(SAMAlignedItem item, int count, int minScore)
    {
      int result = 0;
      string align, score;
      item.GetSequenceScore(out align, out score);

      for (int i = 0; i < align.Length; i++)
      {
        if (minScore > 0)
        {
          var bq = (int)(score[i]) - 33;
          if (bq < minScore)
          {
            result++;
            continue;
          }
        }

        var c = align[i];
        var dic = Count[(int)(item.Pos) + i];
        int curcount = 0;
        if (dic.TryGetValue(c, out curcount))
        {
          dic[c] = curcount + count;
        }
        else
        {
          dic[c] = count;
        }
      }

      return result;
    }