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 _LEGACY_ANCESTRAL_STATES_RECONSTRUCTION_H_
6#define _LEGACY_ANCESTRAL_STATES_RECONSTRUCTION_H_
7
8// From SeqLib:
9#include <Bpp/Seq/Sequence.h>
11
12// From the STL:
13#include <vector>
14#include <map>
15
16namespace bpp
17{
18class Node;
19
24{
25public:
28
29public:
42 virtual std::vector<size_t> getAncestralStatesForNode(int nodeId) const = 0;
43
52 virtual std::map<int, std::vector<size_t>> getAllAncestralStates() const = 0;
53
60 virtual std::unique_ptr<Sequence> getAncestralSequenceForNode(int nodeId) const = 0;
61
67 virtual std::unique_ptr<SiteContainerInterface> getAncestralSequences() const = 0;
68};
69} // end of namespace bpp.
70
71#endif // _LEGACY_ANCESTRAL_STATES_RECONSTRUCTION_H_
Interface for ancestral states reconstruction methods.
virtual std::vector< size_t > getAncestralStatesForNode(int nodeId) const =0
Get ancestral states for a given node as a vector of int.
virtual std::unique_ptr< SiteContainerInterface > getAncestralSequences() const =0
Get all the ancestral sequences for all nodes.
virtual std::unique_ptr< Sequence > getAncestralSequenceForNode(int nodeId) const =0
Get the ancestral sequence for a given node.
virtual std::map< int, std::vector< size_t > > getAllAncestralStates() const =0
Get all ancestral states for all nodes.
Defines the basic types of data flow nodes.