Struct rust_htslib::bcf::record::Record
[−]
[src]
pub struct Record {
pub inner: *mut bcf1_t,
// some fields omitted
}A BCF record.
New records can be created by the empty_record methods of bcf::Reader and bcf::Writer.
Fields
inner: *mut bcf1_t
Methods
impl Record[src]
pub fn header(&self) -> &HeaderView[src]
Return associated header.
pub fn inner(&self) -> &bcf1_t[src]
Return reference to the inner C struct.
Remarks
Note that this function is only required as long as Rust-Htslib does not provide full access to all aspects of Htslib.
pub fn inner_mut(&mut self) -> &mut bcf1_t[src]
Return mutable reference to inner C struct.
Remarks
Note that this function is only required as long as Rust-Htslib does not provide full access to all aspects of Htslib.
pub fn rid(&self) -> Option<u32>[src]
Get the reference id of the record.
To look up the contig name, use bcf::header::HeaderView::rid2name.
Returns
Some(rid)if the internalridis set to a value that is not-1Noneif the internalridis set to-1
pub fn set_rid(&mut self, rid: &Option<u32>)[src]
pub fn pos(&self) -> u32[src]
pub fn set_pos(&mut self, pos: i32)[src]
Set 0-based position.
pub fn id(&self) -> Vec<u8>[src]
Return the value of the ID column.
When empty, returns b".".to_vec().
pub fn set_id(&mut self, id: &[u8]) -> Result<(), IdWriteError>[src]
Update the ID string to the given value.
pub fn clear_id(&mut self) -> Result<(), IdWriteError>[src]
Clear the ID column (set it to ".").
pub fn push_id(&mut self, id: &[u8]) -> Result<(), IdWriteError>[src]
Add the ID string (the ID field is semicolon-separated), checking for duplicates.
ⓘImportant traits for Filters<'a>pub fn filters(&self) -> Filters[src]
Return Filters iterator for enumerating all filters that have been set.
A record having the PASS filter will return an empty Filter here.
pub fn has_filter(&self, flt_id: &Id) -> bool[src]
Query whether the filter with the given ID has been set.
Arguments
flt_id- The filter ID to query for.
pub fn set_filters(&mut self, flt_ids: &[Id])[src]
Set the given filters IDs to the FILTER column.
Setting an empty slice removes all filters.
Arguments
flt_ids- The identifiers of the filter values to set.
pub fn push_filter(&mut self, flt_id: Id)[src]
Add the given filter to the FILTER column.
If val corresponds to "PASS" then all existing filters are removed first. If other than
"PASS", then existing "PASS" is removed.
Arguments
flt_id- The corresponding filter ID value to add.
pub fn remove_filter(&mut self, flt_id: Id, pass_on_empty: bool)[src]
Remove the given filter from the FILTER column.
Arguments
val- The corresponding filter ID to remove.pass_on_empty- Set to "PASS" when removing the last value.
pub fn alleles(&self) -> Vec<&[u8]>[src]
Get alleles strings.
The first allele is the reference allele.
pub fn set_alleles(&mut self, alleles: &[&[u8]]) -> Result<(), AlleleWriteError>[src]
Set alleles.
pub fn qual(&self) -> f32[src]
Get variant quality.
pub fn set_qual(&mut self, qual: f32)[src]
Set variant quality.
pub fn info<'a>(&'a mut self, tag: &'a [u8]) -> Info[src]
Get the value of the given info tag.
pub fn sample_count(&self) -> u32[src]
Get the number of samples.
pub fn allele_count(&self) -> u32[src]
Get the number of alleles, including reference allele.
pub fn genotypes(&mut self) -> Result<Genotypes, FormatReadError>[src]
Get genotypes as vector of one Genotype per sample.
pub fn format<'a>(&'a mut self, tag: &'a [u8]) -> Format[src]
Get the value of the given format tag for each sample.
pub fn push_format_integer(
&mut self,
tag: &[u8],
data: &[i32]
) -> Result<(), TagWriteError>[src]
&mut self,
tag: &[u8],
data: &[i32]
) -> Result<(), TagWriteError>
Add an integer-typed FORMAT tag.
Arguments
tag- The tag's string.data- a flattened, two-dimensional array, the first dimension contains one array for each sample.
Errors
Returns error if tag is not present in header.
pub fn push_format_float(
&mut self,
tag: &[u8],
data: &[f32]
) -> Result<(), TagWriteError>[src]
&mut self,
tag: &[u8],
data: &[f32]
) -> Result<(), TagWriteError>
Add a float-typed FORMAT tag.
Arguments
tag- The tag's string.data- a flattened, two-dimensional array, the first dimension contains one array for each sample.
Errors
Returns error if tag is not present in header.
pub fn push_format_char(
&mut self,
tag: &[u8],
data: &[u8]
) -> Result<(), TagWriteError>[src]
&mut self,
tag: &[u8],
data: &[u8]
) -> Result<(), TagWriteError>
Add a char-typed FORMAT tag.
Arguments
tag- The tag's string.data- a flattened, two-dimensional array, the first dimension contains one array for each sample.
Errors
Returns error if tag is not present in header.
pub fn push_format_string(
&mut self,
tag: &[u8],
data: &[&[u8]]
) -> Result<(), TagWriteError>[src]
&mut self,
tag: &[u8],
data: &[&[u8]]
) -> Result<(), TagWriteError>
Add a string-typed FORMAT tag.
Arguments
tag- The tag's string.data- a flattened, two-dimensional array, the first dimension contains one array for each sample.
Errors
Returns error if tag is not present in header.
pub fn push_info_integer(
&mut self,
tag: &[u8],
data: &[i32]
) -> Result<(), TagWriteError>[src]
&mut self,
tag: &[u8],
data: &[i32]
) -> Result<(), TagWriteError>
Add an integer-typed INFO entry.
pub fn clear_info_integer(&mut self, tag: &[u8]) -> Result<(), TagWriteError>[src]
Remove the integer-typed INFO entry.
pub fn push_info_float(
&mut self,
tag: &[u8],
data: &[f32]
) -> Result<(), TagWriteError>[src]
&mut self,
tag: &[u8],
data: &[f32]
) -> Result<(), TagWriteError>
Add a float-typed INFO entry.
pub fn clear_info_float(&mut self, tag: &[u8]) -> Result<(), TagWriteError>[src]
Remove the float-typed INFO entry.
pub fn push_info_flag(&mut self, tag: &[u8]) -> Result<(), TagWriteError>[src]
Set flag into the INFO column.
pub fn clear_info_flag(&mut self, tag: &[u8]) -> Result<(), TagWriteError>[src]
Remove the flag from the INFO column.
pub fn push_info_string(
&mut self,
tag: &[u8],
data: &[&[u8]]
) -> Result<(), TagWriteError>[src]
&mut self,
tag: &[u8],
data: &[&[u8]]
) -> Result<(), TagWriteError>
Add a string-typed INFO entry.
pub fn clear_info_string(&mut self, tag: &[u8]) -> Result<(), TagWriteError>[src]
Remove the string field from the INFO column.
pub fn trim_alleles(&mut self) -> Result<(), TrimAllelesError>[src]
Remove unused alleles.