SHORE API
Main Page
Namespaces
Classes
Files
File List
File Members
SHORE API
Namespaces
Classes
Files
File List
shore
algo
base
container
datatype
fmtio
alignment.hpp
aln.hpp
bed.hpp
eland.hpp
fasta.hpp
fastq.hpp
flatread.hpp
gff.hpp
maplist.hpp
mummer.hpp
psl.hpp
qseq.hpp
read.hpp
refdict.hpp
sam.hpp
segment.hpp
sff.hpp
text.hpp
vcf.hpp
parallel
processing
program
statistics
stream
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
eland.hpp
Go to the documentation of this file.
1
2
/*
3
* Copyright 2008,2009,2010,2011,2012 Stephan Ossowski, Korbinian Schneeberger,
4
* Felix Ott, Joerg Hagmann, Alf Scotland, Sebastian Bender
5
*
6
* This file is part of SHORE.
7
*
8
* SHORE is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation, either version 3 of the License, or
11
* (at your option) any later version.
12
*
13
* SHORE is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with SHORE. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
25
26
#ifndef SHORE_IO_ELAND_HPP__
27
#define SHORE_IO_ELAND_HPP__
28
29
#include <string>
30
#include <deque>
31
32
#include "
shore/datatype/alignment_processing.hpp
"
33
#include "
shore/processing/pipeline.hpp
"
34
#include "
shore/datatype/datatypes.hpp
"
35
#include "
shore/fmtio/read.hpp
"
36
#include "
shore/fmtio/text.hpp
"
37
38
namespace
shore {
39
41
class
eland_reader
42
{
43
private
:
44
45
shore::line_reader
m_rfile;
46
shore::read_reader
m_rread;
47
int
m_max_mm;
48
int
m_firstread_len;
49
50
shore::alignment_queue
m_queue;
51
shore::alignment
m_template;
52
size_t
m_currenthits;
53
54
std::vector<shore::sequence_record> m_ref;
55
56
shore::feed<shore::read>
m_leftovers;
57
58
59
void
parse();
60
61
public
:
62
63
typedef
shore::alignment
current_type
;
64
65
eland_reader
(
const
std::string &fn,
66
const
std::string &ref_fn,
const
std::string &reads_fn,
67
const
int
max_mm);
68
69
const
shore::alignment
¤t()
const
;
70
71
bool
has_data();
72
73
void
next();
74
75
shore::feed<shore::read>
&leftovers();
76
};
77
79
typedef
shore::source<eland_reader>
eland_source
;
80
81
}
// namespace
82
83
#endif // SHORE_IO_ELAND_HPP__
84
shore
fmtio
eland.hpp
Generated on Thu Jun 20 2013 15:49:38 for SHORE API by
1.8.4