halapi
hierarchichalalignmentformatapi
|
00001 /* 00002 * Copyright (C) 2012 by Glenn Hickey (hickey@soe.ucsc.edu) 00003 * 00004 * Released under the MIT license, see LICENSE.txt 00005 */ 00006 00007 #ifndef _HDF5SEQUENCEITERATOR_H 00008 #define _HDF5SEQUENCEITERATOR_H 00009 00010 #include <H5Cpp.h> 00011 #include "halSequenceIterator.h" 00012 #include "hdf5ExternalArray.h" 00013 #include "hdf5Genome.h" 00014 #include "hdf5Sequence.h" 00015 00016 namespace hal { 00017 00018 class HDF5BottomSegmentIterator; 00019 00020 class HDF5SequenceIterator : public SequenceIterator 00021 { 00022 friend class HDF5BottomSegmentIterator; 00023 public: 00024 00025 HDF5SequenceIterator(HDF5Genome* genome, hal_index_t index); 00026 ~HDF5SequenceIterator(); 00027 00028 // SEQUENCE ITERATOR METHODS 00029 SequenceIteratorPtr copy(); 00030 SequenceIteratorConstPtr copy() const; 00031 void toNext() const; 00032 void toPrev() const; 00033 Sequence* getSequence(); 00034 const Sequence* getSequence() const; 00035 00036 protected: 00037 HDF5Sequence _sequence; 00038 }; 00039 00040 } 00041 #endif