41 #ifndef BPP_NUMERIC_HMM_HMMEMISSIONPROBABILITIES_H
42 #define BPP_NUMERIC_HMM_HMMEMISSIONPROBABILITIES_H
45 #include "../Parametrizable.h"
90 virtual double operator()(
size_t pos,
size_t state)
const = 0;
99 throw (
NotImplementedException(
"HmmEmissionProbabilities::computeD2EmissionProbabilities is not overdefined."));
121 virtual const std::vector<double>&
operator()(
size_t pos)
const = 0;
Interface for computing emission probabilities in a Hidden Markov Model.
virtual size_t getNumberOfPositions() const =0
virtual const std::vector< double > & operator()(size_t pos) const =0
Operator access to the emission probabilities.
virtual HmmEmissionProbabilities * clone() const =0
Create a copy of this object and send a pointer to it.
virtual void setHmmStateAlphabet(const HmmStateAlphabet *stateAlphabet)=0
Set the new hidden state alphabet.
virtual void computeD2EmissionProbabilities(std::string &variable) const
virtual void computeDEmissionProbabilities(std::string &variable) const
virtual const std::vector< double > & getDEmissionProbabilities(size_t pos) const
virtual const HmmStateAlphabet * getHmmStateAlphabet() const =0
virtual double operator()(size_t pos, size_t state) const =0
Operator access to the emission probabilities.
virtual const std::vector< double > & getD2EmissionProbabilities(size_t pos) const
This exception is sent when a given method is not implemented.
This is the interface for all objects that imply parameters.