Ymir  .9
Fast\C++toolforcomputationofassemblingprobabilities,statisticalinferenceofassemblingstatisticalmodelandgenerationofartificialsequencesofT-cellreceptorsdata.
codon_table.h
1 //
2 // Created by Vadim N. on 24/03/2016.
3 //
4 
5 #ifndef YMIR_CODON_TABLE_H
6 #define YMIR_CODON_TABLE_H
7 
8 
9 #include <unordered_map>
10 
11 
12 namespace ymir {
13 
14  class CodonTable;
15 
16 
17  class CodonTable {
18  public:
19 
20  typedef std::unordered_multimap<> aa_to_codon_storage_t;
21 
22 
23  typedef std::unordered_map<> codon_to_aa_storage_t;
24 
25 
26  CodonTable()
27  {
28  }
29 
30 
31  CodonTable(CodonTable const&) = delete;
32 
33  void operator=(CodonTable const&) = delete;
34 
35 
36  static CodonTable& table() {
37  static CodonTable table;
38  return table;
39  }
40 
41 
42  std::string translate(const std::string &nuc_seq) const {
43  if (nuc_seq.size() % 3 == 0 && !nuc_seq.empty()) {
44  std::string res;
45  // for
46  return res;
47  }
48  return "";
49  }
50 
51 
52 
53 
54 
55 
56  private:
57 
58  aa_to_codon_storage_t _aa2codon;
59  codon_to_aa_storage_t _codon2aa;
60 
61  };
62 
63 }
64 
65 #endif //YMIR_CODON_TABLE_H
Definition: aligner.h:37
A struct for representing nucleotide codons for amino acids.
Definition: codon_table.h:17