|
A library for working with phylogenetic and population genetic data.
v0.32.0
|
|
Go to the documentation of this file. 1 #ifndef GENESIS_POPULATION_FORMAT_VCF_INPUT_STREAM_H_
2 #define GENESIS_POPULATION_FORMAT_VCF_INPUT_STREAM_H_
48 namespace population {
109 bool expect_ordered =
true
126 std::vector<std::string>
const& sample_names,
127 bool inverse_sample_names =
false,
128 bool expect_ordered =
true
131 , expect_ordered_( expect_ordered )
133 , header_( std::make_shared<
VcfHeader>( *file_ ))
134 , record_( std::make_shared<
VcfRecord>( *header_ ))
137 if( ! sample_names.empty() ) {
138 header_->set_samples( sample_names, inverse_sample_names );
160 explicit operator bool()
const
162 return static_cast<bool>( file_ );
167 return static_cast<bool>( file_ );
265 return file_ == other.file_;
270 return !(*
this == other);
287 std::string filename_;
288 bool expect_ordered_ =
true;
291 std::shared_ptr<HtsFile> file_;
292 std::shared_ptr<VcfHeader> header_;
293 std::shared_ptr<VcfRecord> record_;
300 #endif // htslib guard
301 #endif // include guard
Container namespace for all symbols of genesis in order to keep them separate when used as a library.
Capture the information of a single SNP/variant line in a VCF/BCF file.
Wrap an ::htsFile struct.