|
Gamgee
You miserable little maggot. I'll stove your head in!
|
#include <indexed_variant_iterator.h>
Public Member Functions | |
| IndexedVariantIterator () | |
| creates an empty iterator (used for the end() method) More... | |
| IndexedVariantIterator (const std::shared_ptr< htsFile > &file_ptr, const std::shared_ptr< hts_idx_t > &index_ptr, const std::shared_ptr< bcf_hdr_t > &header_ptr, const std::vector< std::string > &interval_list=all_intervals) | |
| initializes a new iterator based on a file, an index, a header, and a vector of intervals More... | |
| IndexedVariantIterator (const IndexedVariantIterator &other)=delete | |
| an IndexedVariantIterator cannot be copied safely, as it is iterating over a stream. More... | |
| IndexedVariantIterator & | operator= (const IndexedVariantIterator &other)=delete |
| IndexedVariantIterator (IndexedVariantIterator &&other)=default | |
| an IndexedVariantIterator can be moved More... | |
| IndexedVariantIterator & | operator= (IndexedVariantIterator &&other)=default |
| bool | operator!= (const IndexedVariantIterator &rhs) |
| inequality operator (needed by for-each loop) More... | |
Public Member Functions inherited from gamgee::VariantIterator | |
| VariantIterator ()=default | |
| creates an empty iterator (used for the end() method) More... | |
| VariantIterator (const std::shared_ptr< htsFile > &variant_file_ptr, const std::shared_ptr< bcf_hdr_t > &variant_header_ptr) | |
| initializes a new iterator based on an input stream (e.g. a vcf/bcf file, stdin, ...) More... | |
| VariantIterator (VariantIterator &&)=default | |
| a VariantIterator move constructor guarantees all objects will have the same state. More... | |
| VariantIterator & | operator= (VariantIterator &&)=default |
| a VariantIterator move assignment operator guarantees all objects will have the same state. More... | |
| VariantIterator (const VariantIterator &)=delete | |
| a VariantIterator cannot be copy-constructed. More... | |
| VariantIterator & | operator= (const VariantIterator &)=delete |
| a VariantIterator cannot be copied. More... | |
| bool | operator!= (const VariantIterator &rhs) const |
| inequality operator (needed by for-each loop) More... | |
| Variant & | operator* () |
| dereference operator (needed by for-each loop) More... | |
| Variant & | operator++ () |
| pre-fetches the next record and tests for end of file More... | |
| bool | empty () const |
| returns whether the iterator has no additional records More... | |
Static Public Attributes | |
| static const std::vector < std::string > | all_intervals = {"."} |
Protected Member Functions | |
| void | fetch_next_record () override |
| fetches next Variant record into existing htslib memory without making a copy More... | |
Additional Inherited Members | |
Protected Attributes inherited from gamgee::VariantIterator | |
| std::shared_ptr< htsFile > | m_variant_file_ptr |
| pointer to the vcf/bcf file More... | |
| std::shared_ptr< bcf_hdr_t > | m_variant_header_ptr |
| pointer to the variant header More... | |
| std::shared_ptr< bcf1_t > | m_variant_record_ptr |
| pointer to the internal structure of the variant record. Useful to only allocate it once. More... | |
| Variant | m_variant_record |
| temporary record to hold between fetch (operator++) and serve (operator*) More... | |
| gamgee::IndexedVariantIterator::IndexedVariantIterator | ( | ) |
creates an empty iterator (used for the end() method)
| gamgee::IndexedVariantIterator::IndexedVariantIterator | ( | const std::shared_ptr< htsFile > & | file_ptr, |
| const std::shared_ptr< hts_idx_t > & | index_ptr, | ||
| const std::shared_ptr< bcf_hdr_t > & | header_ptr, | ||
| const std::vector< std::string > & | interval_list = all_intervals |
||
| ) |
initializes a new iterator based on a file, an index, a header, and a vector of intervals
| file_ptr | shared pointer to a BCF file opened via the bcf_open() macro from htslib |
| index_ptr | shared pointer to a BCF file index (CSI) created with the bcf_index_load() macro from htslib |
| header_ptr | shared pointer to a BCF file header created with the bcf_hdr_read() macro from htslib |
| interval_list | vector of intervals represented by strings |
|
delete |
an IndexedVariantIterator cannot be copied safely, as it is iterating over a stream.
|
default |
an IndexedVariantIterator can be moved
|
overrideprotectedvirtual |
fetches next Variant record into existing htslib memory without making a copy
pre-fetches the next variant record
Reimplemented from gamgee::VariantIterator.
| bool gamgee::IndexedVariantIterator::operator!= | ( | const IndexedVariantIterator & | rhs | ) |
inequality operator (needed by for-each loop)
| rhs | the other IndexedVariantIterator to compare to |
|
delete |
|
default |
|
static |
1.8.8