1 #ifndef theplu_yat_omic_bam_read_iterator
2 #define theplu_yat_omic_bam_read_iterator
27 #include "config_bam.h"
29 #include YAT_SAM_HEADER
31 #include <boost/iterator/iterator_facade.hpp>
32 #include <boost/shared_ptr.hpp>
61 :
public boost::iterator_facade<
62 BamReadIterator, const BamRead, std::input_iterator_tag
98 friend class boost::iterator_core_access;
99 BamReadIterator::reference dereference(
void)
const;
101 void increment(
void);
112 virtual ~Actor(
void);
113 virtual void increment(
void)=0;
119 class AllActor :
public Actor
124 void increment(
void);
128 class IndexActor :
public Actor
131 IndexActor(
InBamFile& bf, int32_t tid, int32_t begin, int32_t end);
132 void increment(
void);
135 boost::shared_ptr<hts_itr_t> iter_;
137 boost::shared_ptr<__bam_iter_t> iter_;
141 boost::shared_ptr<Actor> actor_;
143 struct IndexDestroyer
146 void operator()(hts_itr_t* i)
const
151 void operator()(bam_iter_t i)
const
Class holding a bam query.
Definition: BamRead.h:53
BamReadIterator(void)
Contructs end of file iterator.
Definition: BamFile.h:118
class to iterate through a InBamFile
Definition: BamReadIterator.h:60