yat  0.11.3pre
BamWriteIterator.h
1 #ifndef theplu_yat_omic_bam_write_iterator
2 #define theplu_yat_omic_bam_write_iterator
3 
4 // $Id: BamWriteIterator.h 3114 2013-11-10 23:51:47Z peter $
5 
6 /*
7  Copyright (C) 2012, 2013 Peter Johansson
8 
9  This file is part of the yat library, http://dev.thep.lu.se/yat
10 
11  The yat library is free software; you can redistribute it and/or
12  modify it under the terms of the GNU General Public License as
13  published by the Free Software Foundation; either version 3 of the
14  License, or (at your option) any later version.
15 
16  The yat library is distributed in the hope that it will be useful,
17  but WITHOUT ANY WARRANTY; without even the implied warranty of
18  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19  General Public License for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with this program. If not, see <http://www.gnu.org/licenses/>.
23 */
24 
25 #include <boost/function_output_iterator.hpp>
26 
27 #include <functional>
28 
29 namespace theplu {
30 namespace yat {
31 namespace omic {
32 
33  class BamRead;
34  class OutBamFile;
35 
42  class BamWriter : std::unary_function<const BamRead&, void>
43  {
44  public:
51  BamWriter(void);
52 
58  explicit BamWriter(OutBamFile& out);
59 
63  void operator()(const BamRead& b) const;
64  private:
65  OutBamFile* out_;
66  };
67 
68 
87  : public boost::function_output_iterator<BamWriter>
88  {
89  public:
95  BamWriteIterator(void);
96 
100  explicit BamWriteIterator(OutBamFile& out);
101  private:
102  };
103 }}}
104 #endif

Generated on Sat May 24 2014 03:33:05 for yat by  doxygen 1.8.2