Repackage the aligner for better partitioning. The C aligner, for example, is now
partitioned from the Java aligner, and both are partitioned from the more general- purpose BWT reader. git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@2045 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
b7097a8db9
commit
15c14add4d
|
|
@ -4,8 +4,7 @@ CXXFLAGS=-g -Wall -O2 -m64 -fPIC
|
|||
.cpp.o:
|
||||
$(CXX) -c $(CXXFLAGS) -I$(BWA_HOME) -I$(JAVA_INCLUDE) $< -o $@
|
||||
|
||||
all: init org_broadinstitute_sting_alignment_bwa_BWACAligner.o bwa_gateway.o
|
||||
$(LIBTOOL_COMMAND) org_broadinstitute_sting_alignment_bwa_BWACAligner.o bwa_gateway.o -o $(TARGET_LIB) -L$(BWA_HOME) -lbwacore $(EXTRA_LIBS)
|
||||
all: init lib
|
||||
|
||||
init:
|
||||
@echo Please make sure the following platforms are set correctly on your machine.
|
||||
|
|
@ -13,7 +12,10 @@ init:
|
|||
@echo JAVA_INCLUDE=$(JAVA_INCLUDE)
|
||||
@echo TARGET_LIB=$(TARGET_LIB)
|
||||
@echo EXTRA_LIBS=$(EXTRA_LIBS)
|
||||
@echo LIBTOOL_COMMAND=$(LIBTOOL_COMMAND)x
|
||||
@echo LIBTOOL_COMMAND=$(LIBTOOL_COMMAND)
|
||||
|
||||
lib: org_broadinstitute_sting_alignment_bwa_c_BWACAligner.o bwa_gateway.o
|
||||
$(LIBTOOL_COMMAND) $? -o $(TARGET_LIB) -L$(BWA_HOME) -lbwacore $(EXTRA_LIBS)
|
||||
|
||||
clean:
|
||||
rm *.o libbwa.*
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
#include "bwt.h"
|
||||
#include "bwtaln.h"
|
||||
#include "bwa_gateway.h"
|
||||
#include "org_broadinstitute_sting_alignment_bwa_BWACAligner.h"
|
||||
#include "org_broadinstitute_sting_alignment_bwa_c_BWACAligner.h"
|
||||
|
||||
static jclass java_alignment_array_class = NULL;
|
||||
static jclass java_alignment_class = NULL;
|
||||
|
|
@ -20,7 +20,7 @@ static jstring get_configuration_string(JNIEnv* env, jobject configuration, cons
|
|||
static void set_int_configuration_param(JNIEnv* env, jobject configuration, const char* field_name, BWA* bwa, int_setter setter);
|
||||
static void set_float_configuration_param(JNIEnv* env, jobject configuration, const char* field_name, BWA* bwa, float_setter setter);
|
||||
|
||||
JNIEXPORT jlong JNICALL Java_org_broadinstitute_sting_alignment_bwa_BWACAligner_create(JNIEnv* env, jobject instance, jobject configuration)
|
||||
JNIEXPORT jlong JNICALL Java_org_broadinstitute_sting_alignment_bwa_c_BWACAligner_create(JNIEnv* env, jobject instance, jobject configuration)
|
||||
{
|
||||
jstring java_ann = get_configuration_string(env,configuration,"annFileName");
|
||||
jstring java_amb = get_configuration_string(env,configuration,"ambFileName");
|
||||
|
|
@ -70,13 +70,13 @@ JNIEXPORT jlong JNICALL Java_org_broadinstitute_sting_alignment_bwa_BWACAligner_
|
|||
return (jlong)bwa;
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL Java_org_broadinstitute_sting_alignment_bwa_BWACAligner_destroy(JNIEnv* env, jobject instance, jlong java_bwa)
|
||||
JNIEXPORT void JNICALL Java_org_broadinstitute_sting_alignment_bwa_c_BWACAligner_destroy(JNIEnv* env, jobject instance, jlong java_bwa)
|
||||
{
|
||||
BWA* bwa = (BWA*)java_bwa;
|
||||
delete bwa;
|
||||
}
|
||||
|
||||
JNIEXPORT jobjectArray JNICALL Java_org_broadinstitute_sting_alignment_bwa_BWACAligner_getAlignments(JNIEnv* env, jobject object, jlong java_bwa, jbyteArray java_bases) {
|
||||
JNIEXPORT jobjectArray JNICALL Java_org_broadinstitute_sting_alignment_bwa_c_BWACAligner_getAlignments(JNIEnv* env, jobject object, jlong java_bwa, jbyteArray java_bases) {
|
||||
BWA* bwa = (BWA*)java_bwa;
|
||||
|
||||
const jsize read_length = env->GetArrayLength(java_bases);
|
||||
|
|
@ -1,34 +1,34 @@
|
|||
/* DO NOT EDIT THIS FILE - it is machine generated */
|
||||
#include <jni.h>
|
||||
/* Header for class org_broadinstitute_sting_alignment_bwa_BWACAligner */
|
||||
/* Header for class org_broadinstitute_sting_alignment_bwa_c_BWACAligner */
|
||||
|
||||
#ifndef _Included_org_broadinstitute_sting_alignment_bwa_BWACAligner
|
||||
#define _Included_org_broadinstitute_sting_alignment_bwa_BWACAligner
|
||||
#ifndef _Included_org_broadinstitute_sting_alignment_bwa_c_BWACAligner
|
||||
#define _Included_org_broadinstitute_sting_alignment_bwa_c_BWACAligner
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
/*
|
||||
* Class: org_broadinstitute_sting_alignment_bwa_BWACAligner
|
||||
* Class: org_broadinstitute_sting_alignment_bwa_c_BWACAligner
|
||||
* Method: create
|
||||
* Signature: (Lorg/broadinstitute/sting/alignment/bwa/BWACConfiguration;)J
|
||||
* Signature: (Lorg/broadinstitute/sting/alignment/bwa/c/BWACConfiguration;)J
|
||||
*/
|
||||
JNIEXPORT jlong JNICALL Java_org_broadinstitute_sting_alignment_bwa_BWACAligner_create
|
||||
JNIEXPORT jlong JNICALL Java_org_broadinstitute_sting_alignment_bwa_c_BWACAligner_create
|
||||
(JNIEnv *, jobject, jobject);
|
||||
|
||||
/*
|
||||
* Class: org_broadinstitute_sting_alignment_bwa_BWACAligner
|
||||
* Class: org_broadinstitute_sting_alignment_bwa_c_BWACAligner
|
||||
* Method: destroy
|
||||
* Signature: (J)V
|
||||
*/
|
||||
JNIEXPORT void JNICALL Java_org_broadinstitute_sting_alignment_bwa_BWACAligner_destroy
|
||||
JNIEXPORT void JNICALL Java_org_broadinstitute_sting_alignment_bwa_c_BWACAligner_destroy
|
||||
(JNIEnv *, jobject, jlong);
|
||||
|
||||
/*
|
||||
* Class: org_broadinstitute_sting_alignment_bwa_BWACAligner
|
||||
* Class: org_broadinstitute_sting_alignment_bwa_c_BWACAligner
|
||||
* Method: getAlignments
|
||||
* Signature: (J[B)[Lorg/broadinstitute/sting/alignment/Alignment;
|
||||
*/
|
||||
JNIEXPORT jobjectArray JNICALL Java_org_broadinstitute_sting_alignment_bwa_BWACAligner_getAlignments
|
||||
JNIEXPORT jobjectArray JNICALL Java_org_broadinstitute_sting_alignment_bwa_c_BWACAligner_getAlignments
|
||||
(JNIEnv *, jobject, jlong, jbyteArray);
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
@ -1,10 +1,12 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment;
|
||||
|
||||
import org.broadinstitute.sting.gatk.walkers.ReadWalker;
|
||||
import org.broadinstitute.sting.utils.BaseUtils;
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.utils.cmdLine.Argument;
|
||||
import org.broadinstitute.sting.alignment.Alignment;
|
||||
import org.broadinstitute.sting.alignment.bwa.c.BWACAligner;
|
||||
import org.broadinstitute.sting.alignment.bwa.c.BWACConfiguration;
|
||||
import net.sf.samtools.SAMRecord;
|
||||
|
||||
/**
|
||||
|
|
@ -41,7 +43,7 @@ public class AlignmentValidationWalker extends ReadWalker<Integer,Integer> {
|
|||
@Override
|
||||
public void initialize() {
|
||||
BWACConfiguration configuration = new BWACConfiguration(prefix);
|
||||
aligner = new BWACAligner(configuration);
|
||||
aligner = new BWACAligner(configuration);
|
||||
}
|
||||
|
||||
/** Must return true for reads that need to be processed. Reads, for which this method return false will
|
||||
|
|
@ -1,7 +1,9 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment;
|
||||
|
||||
import org.broadinstitute.sting.utils.cmdLine.Argument;
|
||||
import org.broadinstitute.sting.gatk.walkers.ReadWalker;
|
||||
import org.broadinstitute.sting.alignment.bwa.c.BWACAligner;
|
||||
import org.broadinstitute.sting.alignment.bwa.c.BWACConfiguration;
|
||||
import net.sf.samtools.SAMRecord;
|
||||
|
||||
import java.util.Random;
|
||||
|
|
@ -32,7 +34,7 @@ public class AlignmentWalker extends ReadWalker<Integer,Integer> {
|
|||
@Override
|
||||
public void initialize() {
|
||||
BWACConfiguration configuration = new BWACConfiguration(prefix);
|
||||
aligner = new BWACAligner(configuration);
|
||||
aligner = new BWACAligner(configuration);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -1,13 +1,10 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.c;
|
||||
|
||||
import net.sf.samtools.SAMFileReader;
|
||||
import net.sf.samtools.SAMRecord;
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.utils.BaseUtils;
|
||||
import org.broadinstitute.sting.alignment.Alignment;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.Scanner;
|
||||
import org.broadinstitute.sting.alignment.bwa.c.BWACConfiguration;
|
||||
|
||||
/**
|
||||
* An aligner using the BWA/C implementation.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.c;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
|
|
@ -1,7 +1,10 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.java;
|
||||
|
||||
import org.broadinstitute.sting.alignment.Aligner;
|
||||
import org.broadinstitute.sting.alignment.Alignment;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.BWAAligner;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.BWAAlignment;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.AlignmentState;
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.utils.BaseUtils;
|
||||
import org.broadinstitute.sting.utils.fasta.IndexedFastaSequenceFile;
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.java;
|
||||
|
||||
import org.broadinstitute.sting.alignment.bwa.java.AlignmentState;
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
import java.util.Deque;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.java;
|
||||
|
||||
/**
|
||||
* The state of a given base in the alignment.
|
||||
|
|
@ -1,6 +1,9 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.java;
|
||||
|
||||
import org.broadinstitute.sting.alignment.bwa.bwt.*;
|
||||
import org.broadinstitute.sting.alignment.reference.bwt.*;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.LowerBound;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.BWAAlignment;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.AlignmentState;
|
||||
import org.broadinstitute.sting.alignment.Alignment;
|
||||
import org.broadinstitute.sting.alignment.Aligner;
|
||||
import org.broadinstitute.sting.utils.BaseUtils;
|
||||
|
|
@ -1,6 +1,9 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.java;
|
||||
|
||||
import org.broadinstitute.sting.alignment.Alignment;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.BWAAligner;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.AlignmentMatchSequence;
|
||||
import org.broadinstitute.sting.alignment.bwa.java.AlignmentState;
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import net.sf.samtools.Cigar;
|
||||
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
package org.broadinstitute.sting.alignment.bwa;
|
||||
package org.broadinstitute.sting.alignment.bwa.java;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import org.broadinstitute.sting.alignment.bwa.bwt.BWT;
|
||||
import org.broadinstitute.sting.alignment.reference.bwt.BWT;
|
||||
|
||||
/**
|
||||
* At any point along the given read, what is a good lower bound for the
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.PackUtils;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.PackUtils;
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
/**
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.UnsignedIntPackedInputStream;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.BasePackedInputStream;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.PackUtils;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.UnsignedIntPackedInputStream;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.BasePackedInputStream;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.PackUtils;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.ByteOrder;
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.UnsignedIntPackedOutputStream;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.BasePackedOutputStream;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.UnsignedIntPackedOutputStream;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.BasePackedOutputStream;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.ByteOrder;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import net.sf.picard.reference.ReferenceSequenceFile;
|
||||
import net.sf.picard.reference.ReferenceSequenceFileFactory;
|
||||
|
|
@ -35,7 +35,7 @@ import java.util.TreeSet;
|
|||
import java.util.Comparator;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.PackUtils;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.PackUtils;
|
||||
|
||||
/**
|
||||
* Create a suffix array data structure.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
/**
|
||||
* Models a block of bases within the BWT.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.UnsignedIntPackedInputStream;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.PackUtils;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.UnsignedIntPackedInputStream;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.PackUtils;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.ByteOrder;
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.bwt;
|
||||
package org.broadinstitute.sting.alignment.reference.bwt;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
import org.broadinstitute.sting.alignment.bwa.packing.UnsignedIntPackedOutputStream;
|
||||
import org.broadinstitute.sting.alignment.reference.packing.UnsignedIntPackedOutputStream;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.ByteOrder;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.packing;
|
||||
package org.broadinstitute.sting.alignment.reference.packing;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.packing;
|
||||
package org.broadinstitute.sting.alignment.reference.packing;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package org.broadinstitute.sting.alignment.bwa.packing;
|
||||
package org.broadinstitute.sting.alignment.reference.packing;
|
||||
|
||||
import net.sf.picard.reference.ReferenceSequenceFile;
|
||||
import net.sf.picard.reference.ReferenceSequenceFileFactory;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.packing;
|
||||
package org.broadinstitute.sting.alignment.reference.packing;
|
||||
|
||||
import org.broadinstitute.sting.utils.StingException;
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.broadinstitute.sting.alignment.bwa.packing;
|
||||
package org.broadinstitute.sting.alignment.reference.packing;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.ByteBuffer;
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
* OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package org.broadinstitute.sting.alignment.bwa.packing;
|
||||
package org.broadinstitute.sting.alignment.reference.packing;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.ByteBuffer;
|
||||
Loading…
Reference in New Issue