SeqAn3  3.0.0
The Modern C++ library for sequence analysis.
seqan3::sequence_file_input_default_traits_dna Struct Reference

The default traits for seqan3::sequence_file_input. More...

#include <seqan3/io/sequence_file/input.hpp>

+ Inheritance diagram for seqan3::sequence_file_input_default_traits_dna:

Public Types

Member types

Definitions to satisfy seqan3::SequenceFileInputTraits.

using sequence_alphabet = dna5
 The sequence alphabet is seqan3::dna5.
 
using sequence_legal_alphabet = dna15
 The legal sequence alphabet for parsing is seqan3::dna15.
 
template<typename _sequence_alphabet >
using sequence_container = std::vector< _sequence_alphabet >
 The type of a DNA sequence is std::vector.
 
template<typename _sequence_container >
using sequence_container_container = concatenated_sequences< _sequence_container >
 The container for sequences is seqan3::concatenated_sequences.
 
using id_alphabet = char
 The alphabet for an identifier string is char.
 
template<typename _id_alphabet >
using id_container = std::basic_string< _id_alphabet >
 The string type for an identifier is std::basic_string.
 
template<typename _id_container >
using id_container_container = concatenated_sequences< _id_container >
 The container for identifier strings is seqan3::concatenated_sequences.
 
using quality_alphabet = phred42
 The alphabet for a quality annotation is seqan3::phred42.
 
template<typename _quality_alphabet >
using quality_container = std::vector< _quality_alphabet >
 The string type for a quality annotation is std::vector.
 
template<typename _quality_container >
using quality_container_container = concatenated_sequences< _quality_container >
 The container for quality annotation strings is seqan3::concatenated_sequences.
 

Detailed Description

The default traits for seqan3::sequence_file_input.

If you wish to change a single or a few types from the default, just inherit from this class and "overwrite" the respective type definitions.

This example will make the file read into a smaller alphabet and a compressed container:

struct my_traits : sequence_file_input_default_traits_dna
{
using sequence_alphabet = dna4; // instead of dna5
template <typename alph>
using sequence_container = std::vector<alph>; // must be defined as a template!
};
// [...] main
sequence_file_input<my_traits> fin{tmp_dir/"my.fasta"};
// [...]

The documentation for this struct was generated from the following file: