gatk-3.8/java/lib/edu/mit/broad/picard/aligner/Aligner.java

46 lines
1.5 KiB
Java

/*
* The Broad Institute
* SOFTWARE COPYRIGHT NOTICE AGREEMENT
* This software and its documentation are copyright 2009 by the
* Broad Institute/Massachusetts Institute of Technology. All rights are reserved.
*
* This software is supplied without any warranty or guaranteed support whatsoever. Neither
* the Broad Institute nor MIT can be responsible for its use, misuse, or functionality.
*/
package edu.mit.broad.picard.aligner;
/**
* API for aligners. Clients must call these methods in order, as each depends on
* the previous one, but they may call them multiple times and need not call them all.
* This allows steps to be rerun and also lets the caller review intermediate files
* when troubleshooting.
*
* @author Kathleen Tibbetts
*/
public interface Aligner {
public static enum Stringency{ low, high };
/**
* Prepares all the necessary inputs for the alignment process from a BAM file of read data.
*/
public void prepareInputs();
/**
* Does the alignment and produces output in the underlying form of the aligner.
*/
public void align();
/**
* Converts the output of the aligner to BAM format
*/
public void prepareOutput();
/**
* Cleans up intermediate files (the files created in by and for the underlying aligner by the
* prepareInputs() and align() methods. Does not clean up the original source files or the final BAM file.
*/
public void cleanup();
}