bpp-phyl3 3.0.0
CodonSubstitutionModel.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: The Bio++ Development Group
2//
3// SPDX-License-Identifier: CECILL-2.1
4
5#ifndef BPP_PHYL_MODEL_CODON_CODONSUBSTITUTIONMODEL_H
6#define BPP_PHYL_MODEL_CODON_CODONSUBSTITUTIONMODEL_H
7
8
9// From bpp-seq:
11#include "../SubstitutionModel.h"
12#include "../FrequencySet/CodonFrequencySet.h"
13
14namespace bpp
15{
23 public virtual ParameterAliasable
24{
25public:
28
29 virtual CoreCodonSubstitutionModelInterface* clone() const override = 0;
30
31public:
38 virtual double getCodonsMulRate(size_t, size_t) const = 0;
39
41
42 virtual bool hasCodonFrequencySet() const = 0;
43
44 virtual void setFreq(std::map<int, double>& frequencies) = 0;
45};
46
47
50 public virtual SubstitutionModelInterface
51{
52public:
55
56 virtual CodonSubstitutionModelInterface* clone() const override = 0;
57
58 virtual std::shared_ptr<const GeneticCode> getGeneticCode() const = 0;
59};
60
61
69{
70public:
73
74 virtual CodonReversibleSubstitutionModelInterface* clone() const override = 0;
75};
76} // end of namespace bpp.
77#endif // BPP_PHYL_MODEL_CODON_CODONSUBSTITUTIONMODEL_H
Parametrize a set of state frequencies for codons.
Interface for reversible codon models.
virtual CodonReversibleSubstitutionModelInterface * clone() const override=0
virtual std::shared_ptr< const GeneticCode > getGeneticCode() const =0
virtual CodonSubstitutionModelInterface * clone() const override=0
virtual void setFreq(std::map< int, double > &frequencies)=0
virtual const CodonFrequencySetInterface & codonFrequencySet() const =0
virtual CoreCodonSubstitutionModelInterface * clone() const override=0
virtual double getCodonsMulRate(size_t, size_t) const =0
Returns the multiplicative rate specific to two codons specified by their number. The respective gene...
virtual bool hasCodonFrequencySet() const =0
Interface for reversible substitution models.
Interface for all substitution models.
Defines the basic types of data flow nodes.