for GATK style codecs, make sure we fill in their GenomeLocParser from the RMDIndexer
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4650 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
fd78ce6c86
commit
698e5cf345
|
|
@ -10,7 +10,10 @@ import org.broad.tribble.util.LittleEndianOutputStream;
|
||||||
import org.broadinstitute.sting.commandline.Argument;
|
import org.broadinstitute.sting.commandline.Argument;
|
||||||
import org.broadinstitute.sting.commandline.CommandLineProgram;
|
import org.broadinstitute.sting.commandline.CommandLineProgram;
|
||||||
import org.broadinstitute.sting.commandline.Input;
|
import org.broadinstitute.sting.commandline.Input;
|
||||||
|
import org.broadinstitute.sting.gatk.GenomeAnalysisEngine;
|
||||||
|
import org.broadinstitute.sting.gatk.refdata.ReferenceDependentFeatureCodec;
|
||||||
import org.broadinstitute.sting.gatk.refdata.tracks.builders.RMDTrackBuilder;
|
import org.broadinstitute.sting.gatk.refdata.tracks.builders.RMDTrackBuilder;
|
||||||
|
import org.broadinstitute.sting.utils.GenomeLocParser;
|
||||||
import org.broadinstitute.sting.utils.Utils;
|
import org.broadinstitute.sting.utils.Utils;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
@ -28,7 +31,7 @@ public class RMDIndexer extends CommandLineProgram {
|
||||||
@Argument(shortName="t", fullName="type", doc="The reference meta data file format (e.g. vcf, bed)", required = true)
|
@Argument(shortName="t", fullName="type", doc="The reference meta data file format (e.g. vcf, bed)", required = true)
|
||||||
String inputFileType = null;
|
String inputFileType = null;
|
||||||
|
|
||||||
@Input(fullName = "referenceSequence", shortName = "R", doc = "The reference to use when indexing; this sequence will be set in the index", required = false)
|
@Input(fullName = "referenceSequence", shortName = "R", doc = "The reference to use when indexing; this sequence will be set in the index", required = true)
|
||||||
public File referenceFile = null;
|
public File referenceFile = null;
|
||||||
|
|
||||||
@Input(shortName = "i", fullName = "indexFile", doc = "Where to write the index to (as a file), if not supplied we write to <inputFile>.idx", required = false)
|
@Input(shortName = "i", fullName = "indexFile", doc = "Where to write the index to (as a file), if not supplied we write to <inputFile>.idx", required = false)
|
||||||
|
|
@ -38,10 +41,13 @@ public class RMDIndexer extends CommandLineProgram {
|
||||||
IndexFactory.IndexBalanceApproach approach = IndexFactory.IndexBalanceApproach.FOR_SEEK_TIME;
|
IndexFactory.IndexBalanceApproach approach = IndexFactory.IndexBalanceApproach.FOR_SEEK_TIME;
|
||||||
|
|
||||||
private static Logger logger = Logger.getLogger(RMDIndexer.class);
|
private static Logger logger = Logger.getLogger(RMDIndexer.class);
|
||||||
|
private IndexedFastaSequenceFile ref = null;
|
||||||
|
private GenomeLocParser genomeLocParser = null;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int execute() throws Exception {
|
protected int execute() throws Exception {
|
||||||
|
|
||||||
|
|
||||||
// check parameters
|
// check parameters
|
||||||
// ---------------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
@ -68,6 +74,10 @@ public class RMDIndexer extends CommandLineProgram {
|
||||||
// try to index the file
|
// try to index the file
|
||||||
// ---------------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// setup the reference
|
||||||
|
ref = new IndexedFastaSequenceFile(referenceFile);
|
||||||
|
genomeLocParser = new GenomeLocParser(ref);
|
||||||
|
|
||||||
// get a track builder
|
// get a track builder
|
||||||
RMDTrackBuilder builder = new RMDTrackBuilder();
|
RMDTrackBuilder builder = new RMDTrackBuilder();
|
||||||
|
|
||||||
|
|
@ -81,6 +91,10 @@ public class RMDIndexer extends CommandLineProgram {
|
||||||
// create the codec
|
// create the codec
|
||||||
FeatureCodec codec = builder.createByType(typeMapping.get(inputFileType));
|
FeatureCodec codec = builder.createByType(typeMapping.get(inputFileType));
|
||||||
|
|
||||||
|
// check if it's a reference dependent feature codec
|
||||||
|
if (codec instanceof ReferenceDependentFeatureCodec)
|
||||||
|
((ReferenceDependentFeatureCodec)codec).setGenomeLocParser(genomeLocParser);
|
||||||
|
|
||||||
// get some timing info
|
// get some timing info
|
||||||
long currentTime = System.currentTimeMillis();
|
long currentTime = System.currentTimeMillis();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue