public class IlluminaDataProviderFactory
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected java.util.Map<IlluminaFileUtil.SupportedIlluminaFormat,java.util.Set<IlluminaDataType>> |
formatToDataTypes
A Map of file formats to the dataTypes they will provide for this run.
|
Constructor and Description |
---|
IlluminaDataProviderFactory(java.io.File basecallDirectory,
java.io.File barcodesDirectory,
int lane,
ReadStructure readStructure,
BclQualityEvaluationStrategy bclQualityEvaluationStrategy,
IlluminaDataType... dataTypesArg)
Create factory with the specified options, one that favors using QSeqs over all other files
|
IlluminaDataProviderFactory(java.io.File basecallDirectory,
int lane,
ReadStructure readStructure,
BclQualityEvaluationStrategy bclQualityEvaluationStrategy,
IlluminaDataType... dataTypesArg)
Create factory with the specified options, one that favors using QSeqs over all other files
|
Modifier and Type | Method and Description |
---|---|
static java.util.Map<IlluminaFileUtil.SupportedIlluminaFormat,java.util.Set<IlluminaDataType>> |
determineFormats(java.util.Set<IlluminaDataType> requestedDataTypes,
IlluminaFileUtil fileUtil)
For all requestedDataTypes return a map of file format to set of provided data types that covers as many requestedDataTypes as possible and
chooses the most preferred available formats possible
|
static IlluminaFileUtil.SupportedIlluminaFormat |
findPreferredFormat(IlluminaDataType dt,
IlluminaFileUtil fileUtil)
Given a data type find the most preferred file format even if files are not available
|
static java.util.Set<IlluminaDataType> |
findUnmatchedTypes(java.util.Set<IlluminaDataType> requestedDataTypes,
java.util.Map<IlluminaFileUtil.SupportedIlluminaFormat,java.util.Set<IlluminaDataType>> formatToMatchedTypes)
Given a set of formats to data types they provide, find any requested data types that do not have a format associated with them and return them
|
java.util.List<java.lang.Integer> |
getAvailableTiles()
Return the list of tiles available for this flowcell and lane.
|
ReadStructure |
getOutputReadStructure()
Sometimes (in the case of skipped reads) the logical read structure of the output cluster data is different from the input
readStructure
|
IlluminaDataProvider |
makeDataProvider()
Call this method to create a ClusterData iterator over all clusters for all tiles in ascending numeric order.
|
IlluminaDataProvider |
makeDataProvider(java.util.List<java.lang.Integer> requestedTiles)
Call this method to create a ClusterData iterator over the specified tiles.
|
void |
setApplyEamssFiltering(boolean applyEamssFiltering)
Sets whether or not EAMSS filtering will be applied if parsing BCL files for bases and quality scores.
|
protected final java.util.Map<IlluminaFileUtil.SupportedIlluminaFormat,java.util.Set<IlluminaDataType>> formatToDataTypes
public IlluminaDataProviderFactory(java.io.File basecallDirectory, int lane, ReadStructure readStructure, BclQualityEvaluationStrategy bclQualityEvaluationStrategy, IlluminaDataType... dataTypesArg)
basecallDirectory
- The baseCalls directory of a complete Illumina directory. Files are found by searching relative to this folder (some of them higher up in the directory tree).lane
- Which lane to iterate over.readStructure
- The read structure to which output clusters will conform. When not using QSeqs, EAMSS masking(see BclParser) is run on individual reads as found in the readStructure, if
the readStructure specified does not match the readStructure implied by the sequencer's output than the quality scores output may differ than what would be found
in a run's QSeq filesdataTypesArg
- Which data types to readpublic IlluminaDataProviderFactory(java.io.File basecallDirectory, java.io.File barcodesDirectory, int lane, ReadStructure readStructure, BclQualityEvaluationStrategy bclQualityEvaluationStrategy, IlluminaDataType... dataTypesArg)
basecallDirectory
- The baseCalls directory of a complete Illumina directory. Files are found by searching relative to this folder (some of them higher up in the directory tree).barcodesDirectory
- The barcodesDirectory with barcode files extracted by 'ExtractIlluminaBarcodes' (optional, use basecallDirectory if not specified)lane
- Which lane to iterate over.readStructure
- The read structure to which output clusters will conform. When not using QSeqs, EAMSS masking(see BclParser) is run on individual reads as found in the readStructure, if
the readStructure specified does not match the readStructure implied by the sequencer's output than the quality scores output may differ than what would be found
in a run's QSeq filesdataTypesArg
- Which data types to readpublic ReadStructure getOutputReadStructure()
public java.util.List<java.lang.Integer> getAvailableTiles()
public void setApplyEamssFiltering(boolean applyEamssFiltering)
public IlluminaDataProvider makeDataProvider()
public IlluminaDataProvider makeDataProvider(java.util.List<java.lang.Integer> requestedTiles)
public static java.util.Set<IlluminaDataType> findUnmatchedTypes(java.util.Set<IlluminaDataType> requestedDataTypes, java.util.Map<IlluminaFileUtil.SupportedIlluminaFormat,java.util.Set<IlluminaDataType>> formatToMatchedTypes)
requestedDataTypes
- Data types that need to be providedformatToMatchedTypes
- A map of file formats to data types that will support thempublic static java.util.Map<IlluminaFileUtil.SupportedIlluminaFormat,java.util.Set<IlluminaDataType>> determineFormats(java.util.Set<IlluminaDataType> requestedDataTypes, IlluminaFileUtil fileUtil)
requestedDataTypes
- Data types to be providedfileUtil
- A file util for the lane/directory we wish to provide data forpublic static IlluminaFileUtil.SupportedIlluminaFormat findPreferredFormat(IlluminaDataType dt, IlluminaFileUtil fileUtil)
dt
- Type of desired datafileUtil
- Util for the lane/directory in which we will find data