edu.mayo.bsi.ngsportal.server
Class FastQCParser

java.lang.Object
  extended by edu.mayo.bsi.ngsportal.server.FastQCParser

public class FastQCParser
extends Object

Class to parse a FastQC file, and make the results available to callers

@author Gregory Dougherty

>>


Constructor Summary
FastQCParser(BufferedReader dataReader)
          Parse a QC file
FastQCParser(File parseFile)
          Parse a QC file
 
Method Summary
 String getDataURL()
           
 double getDuplicationLevel()
          The "#Total Duplicate Percentage" from the "Sequence Duplication Levels" Module
 double getGCContent()
          The "%GC" from the "Basic Statistics" Module
 int getNumBadBases()
          The number of bases from "Per base sequence quality" where the quality is < 20.0
 int getNumBases()
          Count of the number of lines in "Per base sequence quality" that start with an integer
 double getPercentHighQuality()
          Sum of the sequences in "Per sequence quality scores" that have scores above 30, divided by the number of sequences
 double getPercentLowQuality()
          Sum of the sequences in "Per sequence quality scores" that have scores below 20, divided by the number of sequences
 String getQcValue()
          The first non-"pass" QC Result, or "pass" if they all are "pass"
 int getSequenceCount()
          The "Total Sequences" from the "Basic Statistics" Module
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FastQCParser

public FastQCParser(File parseFile)
             throws IOException
Parse a QC file

Parameters:
parseFile - File to parse
Throws:
IOException - If file doesn't exist, or can't be read

FastQCParser

public FastQCParser(BufferedReader dataReader)
             throws IOException
Parse a QC file

Parameters:
dataReader - File to parse
Throws:
IOException - If file doesn't exist, or can't be read
Method Detail

getGCContent

public final double getGCContent()
The "%GC" from the "Basic Statistics" Module

Returns:
the gcContent

getSequenceCount

public final int getSequenceCount()
The "Total Sequences" from the "Basic Statistics" Module

Returns:
the sequenceCount

getPercentLowQuality

public final double getPercentLowQuality()
Sum of the sequences in "Per sequence quality scores" that have scores below 20, divided by the number of sequences

Returns:
The percent of sequences with a quality score below 20

getPercentHighQuality

public final double getPercentHighQuality()
Sum of the sequences in "Per sequence quality scores" that have scores above 30, divided by the number of sequences

Returns:
The percent of sequences with a quality score above

getDuplicationLevel

public final double getDuplicationLevel()
The "#Total Duplicate Percentage" from the "Sequence Duplication Levels" Module

Returns:
the duplicationLevel

getNumBases

public final int getNumBases()
Count of the number of lines in "Per base sequence quality" that start with an integer

Returns:
the numBases

getNumBadBases

public final int getNumBadBases()
The number of bases from "Per base sequence quality" where the quality is < 20.0

Returns:
the numBadBases

getQcValue

public final String getQcValue()
The first non-"pass" QC Result, or "pass" if they all are "pass"

Returns:
the qcValue

getDataURL

public final String getDataURL()
Returns:
the dataURL