Loading...
Searching...
No Matches
sam_flag.hpp
Go to the documentation of this file.
// SPDX-FileCopyrightText: 2006-2025 Knut Reinert & Freie Universität Berlin
// SPDX-FileCopyrightText: 2016-2025 Knut Reinert & MPI für molekulare Genetik
// SPDX-License-Identifier: BSD-3-Clause
#pragma once
#include <seqan3/core/add_enum_bitwise_operators.hpp>
#include <seqan3/core/debug_stream/debug_stream_type.hpp>
namespace seqan3
{
struct ref_info_not_given
{};
enum class sam_flag : uint16_t
{
none = 0,
paired = 0x1,
proper_pair = 0x2,
unmapped = 0x4,
mate_unmapped = 0x8,
on_reverse_strand = 0x10,
mate_on_reverse_strand = 0x20,
first_in_pair = 0x40,
second_in_pair = 0x80,
secondary_alignment = 0x100,
failed_filter = 0x200,
duplicate = 0x400,
supplementary_alignment = 0x800
};
template <>
inline constexpr bool add_enum_bitwise_operators<sam_flag> = true;
template <>
struct sam_flag_printer<sam_flag>
{
template <typename stream_t>
constexpr void operator()(stream_t & stream, sam_flag const arg) const
{
stream << static_cast<int16_t>(arg);
}
};
} // namespace seqan3
add_enum_bitwise_operators.hpp
Provides seqan3::add_enum_bitwise_operators.
debug_stream_type.hpp
Provides seqan3::debug_stream and related types.
seqan3::fmtflags2::none
@ none
No flag is set.
Definition debug_stream_type.hpp:33
seqan3::sam_flag
sam_flag
An enum flag that describes the properties of an aligned read (given as a SAM record).
Definition sam_flag.hpp:73
seqan3::sam_flag::mate_on_reverse_strand
@ mate_on_reverse_strand
The mate sequence has been reverse complemented before being mapped (aligned).
Definition sam_flag.hpp:80
seqan3::sam_flag::mate_unmapped
@ mate_unmapped
The mate of this read is not mapped to a reference (unaligned).
Definition sam_flag.hpp:78
seqan3::sam_flag::secondary_alignment
@ secondary_alignment
This read alignment is an alternative (possibly suboptimal) to the primary.
Definition sam_flag.hpp:83
seqan3::sam_flag::duplicate
@ duplicate
The read is marked as a PCR duplicate or optical duplicate.
Definition sam_flag.hpp:85
seqan3::sam_flag::on_reverse_strand
@ on_reverse_strand
The read sequence has been reverse complemented before being mapped (aligned).
Definition sam_flag.hpp:79
seqan3::sam_flag::failed_filter
@ failed_filter
The read alignment failed a filter, e.g. quality controls.
Definition sam_flag.hpp:84
seqan3::sam_flag::second_in_pair
@ second_in_pair
Indicates the ordering (see details in the seqan3::sam_flag description).
Definition sam_flag.hpp:82
seqan3::sam_flag::first_in_pair
@ first_in_pair
Indicates the ordering (see details in the seqan3::sam_flag description).
Definition sam_flag.hpp:81
seqan3::sam_flag::unmapped
@ unmapped
The read is not mapped to a reference (unaligned).
Definition sam_flag.hpp:77
seqan3::sam_flag::supplementary_alignment
@ supplementary_alignment
This sequence is part of a split alignment and is not the primary alignment.
Definition sam_flag.hpp:86
seqan3::sam_flag::paired
@ paired
The aligned read is paired (paired-end sequencing).
Definition sam_flag.hpp:75
seqan3::sam_flag::proper_pair
@ proper_pair
The two aligned reads in a pair have a proper distance between each other.
Definition sam_flag.hpp:76
seqan3
The main SeqAn3 namespace.
Definition aligned_sequence_concept.hpp:26
seqan3::ref_info_not_given
Type tag which indicates that no reference information has been passed to the SAM file on constructio...
Definition sam_flag.hpp:21
seqan3::sam_flag_printer< sam_flag >::operator()
constexpr void operator()(stream_t &stream, sam_flag const arg) const
Prints the sam flag.
Definition sam_flag.hpp:109
seqan3::sam_flag_printer
Definition default_printer.hpp:41
Hide me