1 #ifndef __gamgee__variant__
2 #define __gamgee__variant__
6 #include "htslib/sam.h"
19 explicit Variant(
const std::shared_ptr<bcf_hdr_t>&
header,
const std::shared_ptr<bcf1_t>& body) noexcept;
27 uint32_t
chromosome()
const {
return uint32_t(m_body->rid);}
29 uint32_t
qual()
const {
return uint32_t(m_body->qual);}
30 uint32_t
n_samples()
const {
return uint32_t(m_body->n_sample);}
31 uint32_t
n_alleles()
const {
return uint32_t(m_body->n_allele);}
36 std::shared_ptr<bcf_hdr_t> m_header;
37 std::shared_ptr<bcf1_t> m_body;
Variant & operator=(const Variant &other)
deep copy assignment of a Variant and it's header. Shared pointers maintain state to all other associ...
Definition: variant.cpp:40
VariantHeader header() const
Definition: variant.h:25
uint32_t n_samples() const
returns the number of samples in this Variant record
Definition: variant.h:30
uint32_t alignment_start() const
returns a 1-based alignment start position (as you would see in a VCF file).
Definition: variant.h:28
uint32_t qual() const
returns the Phred scaled site qual (probability that the site is not reference). See VCF spec...
Definition: variant.h:29
utility class to write out a SAM/BAM/CRAM file to any stream
Definition: variant_writer.h:16
uint32_t n_alleles() const
returns the number of alleles in this Variant record
Definition: variant.h:31
Utility class to manipulate a Variant record.
Definition: variant.h:16
Variant()=default
initializes a null Variant
uint32_t chromosome() const
returns the integer representation of the chromosome. Notice that chromosomes are listed in index ord...
Definition: variant.h:27
std::vector< uint8_t > genotype_quals() const
returns a vector with a copy of all the GQ values for all samples contiguously in memory...
Definition: variant.cpp:59