Skip to content
Commits on Source (10)
[submodule "samtools"]
path = samtools
url = https://github.com/samtools/samtools.git
......@@ -24,7 +24,7 @@
#include <boost/math/special_functions/digamma.hpp>
#include <seqan/align.h>
#include <seqan/graph_align.h>
#include "foreach.hpp"
#include <boost/foreach.hpp>
#include "bam.h"
#include "DInDel.hpp"
#include "Haplotype.hpp"
......
......@@ -35,7 +35,7 @@
#include "Haplotype.hpp"
#include "Faster.hpp"
#include "Utils.hpp"
#include "foreach.hpp"
#include <boost/foreach.hpp>
using namespace std;
const int DEBUGS=0;
......
......@@ -22,7 +22,7 @@
#include <fstream>
#include <string>
#include "MyBam.hpp"
#include "foreach.hpp"
#include <boost/foreach.hpp>
#include "ObservationModelSeqAn.hpp"
#include "GetCandidates.hpp"
#include "Variant.hpp"
......@@ -32,7 +32,6 @@
#include "Fasta.hpp"
#include "StringHash.hpp"
#include <set>
#include "foreach.hpp"
using namespace std;
int GetCandidatesFromCIGAR::getIndelFromCIGARFetchFunc(const bam1_t *b, void *data)
......
......@@ -23,7 +23,7 @@
#include <vector>
#include "Variant.hpp"
#include "MLAlignment.hpp"
#include "foreach.hpp"
#include <boost/foreach.hpp>
#include <ext/hash_map>
#include <set>
//#include "Fast.hpp"
......
......@@ -27,7 +27,7 @@
#include "bam.h"
#include "Haplotype.hpp"
#include "HapBlock.hpp"
#include "foreach.hpp"
#include <boost/foreach.hpp>
#include "VariantFile.hpp"
using namespace std;
......
This diff is collapsed.
SAMTOOLDIR=/nfs/users/nfs_c/caa/source/samtools/
SEQANDIR=seqan_library/
PREFIX=/usr
BINDIR=$(PREFIX)/bin
SHAREDIR=$(PREFIX)/share
SAMTOOLSDIR=samtools
SEQANDIR=seqan_library
DINDEL=dindel$(SUFFIX)
CPPFLAGS=-DNDEBUG -D_IOLIB=2 -DMINREADS=2 -DDINDEL
CXXFLAGS= -I$(SAMTOOLDIR) -I$(SEQANDIR) -I./ -Wno-deprecated -O3
LDFLAGS= -L$(SAMTOOLDIR) -lbam -lz -lboost_program_options -static
CXXFLAGS=-I$(SAMTOOLSDIR) -I$(SEQANDIR) -I./ -Wno-deprecated -O3
LDFLAGS=$(SAMTOOLSDIR)/libbam.a -lz -lboost_program_options -lpthread
SRCSDINDEL=DInDel.cpp HapBlock.cpp HaplotypeDistribution.cpp ObservationModelFB.cpp GetCandidates.cpp Faster.cpp
OBJSDINDEL=$(SRCSDINDEL:%.cpp=%.o)
dindel:$(OBJSDINDEL) Read.hpp DInDel.hpp HapBlock.hpp Haplotype.hpp HaplotypeDistribution.hpp MyBam.hpp GetCandidates.hpp Variant.hpp Fasta.hpp OutputData.hpp MLAlignment.hpp ObservationModelSeqAn.hpp VariantFile.hpp ReadIndelErrorModel.hpp Library.hpp Faster.hpp
all: $(DINDEL)
$(DINDEL):$(OBJSDINDEL) Read.hpp DInDel.hpp HapBlock.hpp Haplotype.hpp HaplotypeDistribution.hpp MyBam.hpp GetCandidates.hpp Variant.hpp Fasta.hpp OutputData.hpp MLAlignment.hpp ObservationModelSeqAn.hpp VariantFile.hpp ReadIndelErrorModel.hpp Library.hpp Faster.hpp
$(CXX) -o $@ $(CXXFLAGS) $(DINDELFLAGS) $(OBJSDINDEL) $(LDFLAGS)
clean:
rm -f $(OBJSDINDEL) $(OBJSCOMPAREVARIANTS) $(OBJSMAKEGLF)
rm -f $(OBJSDINDEL) $(DINDEL)
DESTBINDIR=$(DESTDIR)$(BINDIR)
DESTSHAREDIR=$(DESTDIR)$(SHAREDIR)/$(DINDEL)
install: all
install -d $(DESTBINDIR) $(DESTSHAREDIR)
install $(DINDEL) $(DESTBINDIR)
cp -dr --no-preserve=ownership python/* $(DESTSHAREDIR)/
......@@ -25,7 +25,7 @@
#include "StringHash.hpp"
#include <string>
#include <iostream>
#include "foreach.hpp"
#include <boost/foreach.hpp>
using namespace std;
using namespace boost;
......
The source code for Dindel itself is released under GPL3.
In the directory you will find parts of the Boost library (www.boost.org), and
parts of the Seqan library (www.seqan.de). You will still need to install a copy
of the Boost library in order for the program_options to compile. The parts of
the Boost library included in Dindel are there to make it compatible with old
versions of Boost which didn't have 'foreach.hpp' for instance. The Seqan
library is included as Dindel uses its Needleman-Wunsch algorithm to align
candidate haplotypes to the reference sequence.
You will need to download the source code for SAMtools in order to compile
Dindel. The path to the SAMtools source files can be specified in the Makefile.
If all libraries are in place, simply type "make" at the command line to compile
Dindel.
# dindel-tgi
This is a fork of [dindel-1.01](https://www.sanger.ac.uk/resources/software/dindel/)
by [The Genome Institute at Washington University](http://genome.wustl.edu).
It is licensed under the [GNU GPLv3](http://www.gnu.org/copyleft/gpl.html).
[Dindel](https://www.sanger.ac.uk/resources/software/dindel/) was originally
developed by Cornelis Albers together with Gerton Lunter ([Wellcome Trust Centre for Human Genetics, University of Oxford](http://www.well.ox.ac.uk/home))
and Richard Durbin ([Wellcome Trust Sanger Institute](https://www.sanger.ac.uk)).
> Dindel is a program for calling small indels from short-read sequence data
('next generation sequence data'). It is currently designed to handle only
Illumina data.
>
> Dindel takes BAM files with mapped Illumina read data and enables researchers
to detect small indels and produce a VCF file of all the variant calls. It has
been written in C++ and can be used on Linux-based and Mac computers (it has
not been tested on Windows operating systems).
>
> ---
>
> Dindel requires a BAM file containing the read-alignments as input. It then
extracts candidate indels from the BAM file, and realigns the reads to
candidate haplotypes consisting of these candidate indels in windows of ~120
bp. If there is sufficient evidence for an alternative haplotype to the
reference, it will call an indel.
>
> Dindel can test candidate indels discovered with other methods, for instance
longer deletions found by split-read methods or indels obtained through
assembly methods. Dindel will then realign both mapped and unmapped reads to
see if the candidate indel is supported by the reads.
>
> Dindel produces a [VCF file](http://vcftools.sourceforge.net/) with the indel
calls. Genotype likelihoods can be obtained from intermediate files generated
by Dindel.
>
> There is basic support for outputting a realigned BAM file for each
realignment-window. These realigned BAM files can be used to call SNPs near
(candidate) indels.
You can find more information, including a [manual](ftp://ftp.sanger.ac.uk/pub/resources/software/dindel/manual-1.01.pdf)
and the original [source tarball](ftp://ftp.sanger.ac.uk/pub/resources/software/dindel/source_code/dindel-1.01-src.tar.gz),
on the Wellcome Trust Sanger Institute's [Dindel page](https://www.sanger.ac.uk/resources/software/dindel/).
You may also be interested in the *Genome Research* 2010 article **Dindel:
Accurate indel calls from short-read data** (DOI: [10.1101/gr.112326.110](http://dx.doi.org/10.1101%2Fgr.112326.110)).
This fork currently contains a patch to allow sequence data that includes the
`0x800` flag (supplementary alignment) from newer versions of the [SAM](http://samtools.github.io)
specification. It also removes the included copy of Boost and adds [samtools-0.1.19](https://github.com/samtools/samtools/tree/0.1.19)
as a submodule.
## Compiling
This software depends on [Boost](http://www.boost.org), which should probably
be installed using your packager manager of choice.
This software also depends on [SAMtools](http://samtools.github.io) for SAM
format support, and [SeqAn](http://www.seqan.de) for aligning candidate
haplotypes to the reference sequence with the Needleman-Wunsch algorithm. Both
of these dependencies are included in this repo.
If libboost is installed and the samtools submodule is in place, you
should be able to compile the `dindel` binary using `make`.
## Packaging
Install dependencies, clone the repository, and run `dpkg-buildpackage`:
```
$ sudo apt-get update
$ sudo apt-get install debhelper git-core libboost-dev libboost-program-options-dev libncurses5-dev
$ git clone https://github.com/genome/dindel-tgi.git dindel-tgi1.01-wu1-1.01-wu1
$ cd dindel-tgi1.01-wu1-1.01-wu1
$ git checkout 1.01-wu1-3
$ dpkg-buildpackage
```
......@@ -381,7 +381,7 @@ public:
{
FetchReadData *ptr=(FetchReadData *) data;
if (!( (b->core.flag & BAM_FDUP) || (b->core.flag & BAM_FQCFAIL) )) {
if (!( (b->core.flag & BAM_FDUP) || (b->core.flag & BAM_FQCFAIL) || (b->core.flag & 0x800) )) {
try {
ptr->reads->push_back(Read(b, *(ptr->libraries), ptr->poolID, (*(ptr->myBams))[ptr->poolID]->bh));
ptr->numReads++;
......
......@@ -25,7 +25,7 @@
#include <ext/hash_map>
#include <string>
#include <iostream>
#include "foreach.hpp"
#include <boost/foreach.hpp>
using namespace std;
using namespace boost;
using __gnu_cxx::hash;
......
......@@ -16,3 +16,16 @@ dindel for Debian
-- Steffen Moeller <moeller@debian.org> Fri, 18 Mar 2016 14:52:14 +0100
The source of dindel was moved from Google code to Github:
https://github.com/genome-vendor/dindel
This was forked to
https://github.com/genome/dindel-tgi
and received a patch that sounds promising. Thus this fork is packaged
now in the Debian package.
-- Andreas Tille <tille@debian.org> Mon, 13 Aug 2018 13:41:27 +0200
dindel (1.01+dfsg-5) UNRELEASED; urgency=medium
dindel (1.01-wu1-3+dfsg-1) unstable; urgency=medium
[ Steffen Moeller ]
* [debian/upstream/metadata] Added registry ref to
OMICtools, bio.tools, RRID
-- Steffen Moeller <moeller@debian.org> Fri, 21 Jul 2017 12:56:45 +0200
[ Andreas Tille ]
* New upstream version
* Package dindel-tgi since this seems to be actively maintained
and contains some sensible enhancement.
* debhelper 11
* Point Vcs fields to salsa.debian.org
* Standards-Version: 4.2.0
* Update copyright
-- Andreas Tille <tille@debian.org> Mon, 13 Aug 2018 14:03:51 +0200
dindel (1.01+dfsg-4) unstable; urgency=medium
......
......@@ -5,16 +5,16 @@ Uploaders: Animesh Sharma <sharma.animesh@gmail.com>,
Andreas Tille <tille@debian.org>
Section: science
Priority: optional
Build-Depends: debhelper (>= 9),
Build-Depends: debhelper (>= 11~),
seqan-dev (>= 1.4.1),
libbam-dev,
libboost-program-options-dev,
libboost-math-dev,
zlib1g-dev
Standards-Version: 3.9.8
Vcs-Browser: https://anonscm.debian.org/cgit/debian-med/dindel.git
Vcs-Git: https://anonscm.debian.org/git/debian-med/dindel.git
Homepage: https://sites.google.com/site/keesalbers/soft/dindel
Standards-Version: 4.2.0
Vcs-Browser: https://salsa.debian.org/med-team/dindel
Vcs-Git: https://salsa.debian.org/med-team/dindel.git
Homepage: https://github.com/genome/dindel-tgi
Package: dindel
Architecture: any
......
......@@ -6,47 +6,16 @@ Files-Excluded: boost
seqan_library
Files: *
Copyright: 2010 Cornelis A. Albers
Sanger Center, Cambridge, UK
Copyright: 2010-2014 Cornelis A. Albers;
Sanger Center, Cambridge, UK;
The McDonnell Genome Institute
License: GPL-3
Files: digamma.hpp
Copyright: 2006 John Maddock
License: Boost
Files: foreach.hpp
Copyright: 2004 Eric Niebler.
License: Boost
Files: debian/*
Copyright: 2016 Animesh Sharma <sharma.animesh@gmail.com>
Copyright: 2016-2018 Animesh Sharma <sharma.animesh@gmail.com>
Andreas Tille <tille@debian.org>
License: GPL-3
License: Boost
Permission is hereby granted, free of charge, to any person or
organization obtaining a copy of the software and accompanying
documentation covered by this license (the "Software") to use, reproduce,
display, distribute, execute, and transmit the Software, and to prepare
derivative works of the Software, and to permit third-parties to whom
the Software is furnished to do so, all subject to the following:
.
The copyright notices in the Software and this entire statement,
including the above license grant, this restriction and the following
disclaimer, must be included in all copies of the Software, in whole or
in part, and all derivative works of the Software, unless such copies
or derivative works are solely in the form of machine-executable object
code generated by a source language processor.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE
DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY,
WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
License: GPL-3
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
......