49 std::string name, seq;
52 Seq(T &&name_, T &&seq_)
53 : name(std::forward<T>(name_)), seq(std::forward<T>(seq_))
56 Seq(
const char * n,
const char * s)
60 Seq(
const Seq &seq) =
default;
64 std::string
GetName(
void)
const;
66 std::string
GetSeq(
void)
const;
68 std::string
substr(std::string::size_type beg,
69 std::string::size_type len)
const;
71 std::string
substr(std::string::size_type beg)
const;
84 typedef std::string::reference reference;
85 typedef std::string::const_reference const_reference;
86 typedef std::string::size_type size_type;
89 const_iterator
begin()
const;
90 const_iterator
end()
const;
91 const_iterator
cbegin()
const;
92 const_iterator
cend()
const;
94 void Subseq(
const unsigned &,
const unsigned &);
96 size_type
length(
void)
const;
97 size_type
size(
void)
const;
101 const_reference
operator[](
const size_type &i)
const;
104 Seq &operator=(
const Seq &rhs) =
default;
105 Seq &operator=(
Seq &&rhs) =
default;
106 operator std::string()
const;
107 const char *
c_str(
void)
const;
111 virtual std::istream &
read(std::istream &s) = 0;
115 virtual std::ostream &
print(std::ostream &s)
const = 0;
bool operator!=(const Seq &rhs) const
Abstract interface to sequence objects.
std::string::const_iterator const_iterator
void Subseq(const unsigned &, const unsigned &)
size_type size(void) const
const char * c_str(void) const
The namespace in which this library resides.
std::string GetSeq(void) const
virtual std::ostream & print(std::ostream &s) const =0
std::ostream & operator<<(std::ostream &s, const AlignStream< T > &c)
virtual std::istream & read(std::istream &s)=0
const_iterator cbegin() const
std::string substr(std::string::size_type beg, std::string::size_type len) const
size_type length(void) const
size_type UngappedLength(void) const
std::istream & operator>>(std::istream &s, AlignStream< T > &c)
bool IsGapped(void) const
const_iterator cend() const
bool operator==(const Seq &rhs) const
std::string::iterator iterator
reference operator[](const size_type &i)
std::string GetName(void) const