19#ifndef OST_CONOP_AMINO_ACIDS_HH
20#define OST_CONOP_AMINO_ACIDS_HH
31namespace ost {
namespace conop {
62 using iterator_category = std::forward_iterator_tag;
64 using difference_type = std::ptrdiff_t;
70 bits_(bits), curr_(start)
86 return curr_==rhs.curr_;
96 while (curr_<=
XXX && !(bits_ & (1 << curr_))) { ++curr_; }
151 template <
typename DS>
void Remove(AminoAcid amino_acid)
void Add(AminoAcid amino_acid)
add another amino acid
static AminoAcidSet CreateSet(AminoAcid aa)
static AminoAcidSet CreatePolarSet()
static std::vector< AminoAcidSet > CreateCompleteSet()
static std::vector< AminoAcidSet > CreatePseudoSet()
static AminoAcidSet CreateApolarSet()
bool operator!=(const AminoAcidSet &rhs) const
AminoAcidSetIterator Iterator
Iterator End() const
iterator pointing to the end of the amino acids.
bool Empty() const
whether the set is empty
Iterator Begin() const
iterator pointing to the beginning of the amino acid set
static std::vector< AminoAcidSet > CreateThreeStateSet()
bool operator==(const AminoAcidSet &rhs) const
bool Contains(AminoAcid amino_acid) const
whether the set contains a given amino acid
static AminoAcidSet CreateAromaticSet()
bool operator!=(const AminoAcidSetIterator &rhs) const
bool operator==(const AminoAcidSetIterator &rhs) const
AminoAcidSetIterator & operator++()
AminoAcidSetIterator(unsigned int bits, int start)
AminoAcid operator*() const
#define DLLEXPORT_OST_CONOP
std::vector< AminoAcidSet > AminoAcidAlphabet
DLLEXPORT_OST_CONOP String OneLetterCodeToResidueName(char olc)
DLLEXPORT_OST_CONOP AminoAcid OneLetterCodeToAminoAcid(char olc)
DLLEXPORT_OST_CONOP std::ostream & operator<<(std::ostream &os, const AminoAcidSet &aa_set)
DLLEXPORT_OST_CONOP String AminoAcidToResidueName(AminoAcid aa)
char DLLEXPORT_OST_CONOP ResidueNameToOneLetterCode(String rn)
DLLEXPORT_OST_CONOP AminoAcid ResidueToAminoAcid(const mol::ResidueHandle &r)
from residue name to amino acid.
AminoAcid DLLEXPORT_OST_CONOP ResidueNameToAminoAcid(String rn)