bpp-phyl3 3.0.0
AncestralStateReconstruction.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_ANCESTRALSTATERECONSTRUCTION_H
6#define BPP_PHYL_ANCESTRALSTATERECONSTRUCTION_H
7
8
9// From SeqLib:
10#include <Bpp/Seq/Sequence.h>
13
14// From the STL:
15#include <vector>
16#include <map>
17
18namespace bpp
19{
20class Node;
21
26{
27public:
30
31public:
44 virtual std::vector<size_t> getAncestralStatesForNode(uint nodeId) const = 0;
45
54 virtual std::map<uint, std::vector<size_t>> getAllAncestralStates() const = 0;
55
62 virtual std::unique_ptr<Sequence> getAncestralSequenceForNode(uint nodeId) const = 0;
63
69 virtual std::unique_ptr<AlignedSequenceContainer> getAncestralSequences() const = 0;
70};
71} // end of namespace bpp.
72#endif // BPP_PHYL_ANCESTRALSTATERECONSTRUCTION_H
Interface for ancestral states reconstruction methods.
virtual std::map< uint, std::vector< size_t > > getAllAncestralStates() const =0
Get all ancestral states for all nodes.
virtual std::unique_ptr< Sequence > getAncestralSequenceForNode(uint nodeId) const =0
Get the ancestral sequence for a given node.
virtual std::unique_ptr< AlignedSequenceContainer > getAncestralSequences() const =0
Get all the ancestral sequences for all nodes.
virtual std::vector< size_t > getAncestralStatesForNode(uint nodeId) const =0
Get ancestral states for a given node as a vector of int.
Defines the basic types of data flow nodes.