bpp-phyl3 3.0.0
HmmEmissionProbabilities_Eigen.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_LIKELIHOOD_HMMEMISSIONPROBABILITIES_EIGEN_H
6#define BPP_PHYL_LIKELIHOOD_HMMEMISSIONPROBABILITIES_EIGEN_H
7
11
12
13// From the STL:
14#include <vector>
15
16namespace bpp
17{
30 public virtual Parametrizable
31{
32public:
34
35 virtual const HmmStateAlphabet* getHmmStateAlphabet() const = 0;
36
43 virtual void setHmmStateAlphabet(std::shared_ptr<HmmStateAlphabet> stateAlphabet) = 0;
44
55 virtual DataLik operator()(size_t pos, size_t state) const = 0;
56
67 virtual VectorLik operator()(size_t pos) const = 0;
68
72 virtual size_t getNumberOfPositions() const = 0;
73};
74} // end of namespace bpp.
75#endif // BPP_PHYL_LIKELIHOOD_HMMEMISSIONPROBABILITIES_EIGEN_H
Interface for computing emission probabilities in a Hidden Markov Model.
virtual const HmmStateAlphabet * getHmmStateAlphabet() const =0
virtual void setHmmStateAlphabet(std::shared_ptr< HmmStateAlphabet > stateAlphabet)=0
Set the new hidden state alphabet.
virtual VectorLik operator()(size_t pos) const =0
Operator access to the emission probabilities.
virtual size_t getNumberOfPositions() const =0
virtual DataLik operator()(size_t pos, size_t state) const =0
Operator access to the emission probabilities.
virtual HmmEmissionProbabilities_Eigen * clone() const =0
Defines the basic types of data flow nodes.