5 #ifndef BPP_PHYL_LIKELIHOOD_MULTIPROCESSSEQUENCEEVOLUTION_H
6 #define BPP_PHYL_LIKELIHOOD_MULTIPROCESSSEQUENCEEVOLUTION_H
41 std::shared_ptr<SubstitutionProcessCollection> processColl,
42 std::vector<size_t> nProc,
43 const std::string& prefix =
"");
47 processColl_(lik.processColl_),
53 AbstractParameterAliasable::operator=(lik);
67 std::shared_ptr<const SubstitutionProcessCollection>
getCollection()
const {
return processColl_; }
71 std::shared_ptr<SubstitutionProcessCollection>
getCollection() {
return processColl_; }
84 return processColl_->substitutionProcess(number);
89 return processColl_->getSubstitutionProcess(number);
97 ParameterList getSubstitutionProcessParameters(
bool independent)
const;
99 ParameterList getSubstitutionModelParameters(
bool independent)
const;
101 ParameterList getRateDistributionParameters(
bool independent)
const;
103 ParameterList getRootFrequenciesParameters(
bool independent)
const;
105 ParameterList getBranchLengthParameters(
bool independent)
const;
109 virtual void fireParameterChanged(
const ParameterList& parameters);
Partial implementation of multiple processes of sequences.
std::shared_ptr< SubstitutionProcessCollection > getCollection()
std::shared_ptr< const SubstitutionProcessCollection > getCollection() const
size_t getNumberOfSubstitutionProcess() const
Return the number of process used for computation.
const SubstitutionProcessInterface & substitutionProcess(size_t number) const
Return the SubstitutionProcess of a given index position (in nProc_ vector).
std::vector< size_t > nProc_
the vector of the substitution process numbers, as they are used in this order.
std::shared_ptr< SubstitutionProcessCollection > processColl_
MultiProcessSequenceEvolution(const MultiProcessSequenceEvolution &lik)
const std::vector< size_t > & getSubstitutionProcessNumbers() const
MultiProcessSequenceEvolution & operator=(const MultiProcessSequenceEvolution &lik)
const SubstitutionProcessCollection & collection() const
The collection.
SubstitutionProcessCollection & collection()
std::shared_ptr< const SubstitutionProcessInterface > getSubstitutionProcess(size_t number) const
This interface describes the evolution process of a sequence.
Collection of Substitution Process, which owns all the necessary objects: Substitution models,...
This interface describes the substitution process along the tree and sites of the alignment.
Defines the basic types of data flow nodes.