yat  0.10.4pre
BamWriteIterator.h
1 #ifndef theplu_yat_omic_bam_write_iterator
2 #define theplu_yat_omic_bam_write_iterator
3 
4 // $Id: BamWriteIterator.h 2910 2012-12-17 02:31:13Z peter $
5 //
6 // Copyright (C) 2012 Peter Johansson
7 //
8 // This program 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 // This program is distributed in the hope that it will be useful, but
14 // WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // General Public License for more details.
17 //
18 // You should have received a copy of the GNU General Public License
19 // along with this program. If not, see <http://www.gnu.org/licenses/>.
20 
21 #include <boost/function_output_iterator.hpp>
22 
23 #include <functional>
24 
25 namespace theplu {
26 namespace yat {
27 namespace omic {
28 
29  class BamRead;
30  class OutBamFile;
31 
38  class BamWriter : std::unary_function<const BamRead&, void>
39  {
40  public:
47  BamWriter(void);
48 
54  explicit BamWriter(OutBamFile& out);
55 
59  void operator()(const BamRead& b) const;
60  private:
61  OutBamFile* out_;
62  };
63 
64 
83  : public boost::function_output_iterator<BamWriter>
84  {
85  public:
91  BamWriteIterator(void);
92 
96  explicit BamWriteIterator(OutBamFile& out);
97  private:
98  };
99 }}}
100 #endif

Generated on Mon Nov 11 2013 09:41:44 for yat by  doxygen 1.8.1