46 lines
1.5 KiB
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();
|
|
|
|
}
|