bpp-phyl3
3.0.0
|
#include <Bpp/Phyl/Likelihood/DataFlow/ProcessTree.h>
Public Types | |
typedef AssociationGraphObserver< N, E >::NodeIndex | NodeIndex |
typedef AssociationGraphObserver< N, E >::EdgeIndex | EdgeIndex |
typedef Graph::NodeId | NodeGraphid |
typedef Graph::EdgeId | EdgeGraphid |
typedef AssociationGraphObserver< N, E >::NodeIterator | NodeIterator |
typedef AssociationGraphObserver< N, E >::EdgeIterator | EdgeIterator |
typedef std::shared_ptr< E > | Eref |
typedef std::shared_ptr< N > | Nref |
Public Member Functions | |
ProcessTree (Context &context, const ParametrizablePhyloTree &tree) | |
Build a ProcessTree with same topology as a given ParametrizablePhyloTree, and new ConfiguredParameter BrLen. are created. More... | |
ProcessTree (const ProcessTree &tree, ValueRef< double > rate) | |
Copy a ProcessTree with all BrLen multiplied by a given rate DF double *. More... | |
ProcessTree (Context &context, const ParametrizablePhyloTree &tree, const ParameterList &parList, const std::string &suff) | |
Build a ProcessTree with same topology as a given ParametrizablePhyloTree. ConfiguredParameter objects are linked to those of a ParameterList, with names BrLen_"suff". More... | |
ProcessTree (const ProcessComputationTree &tree, ParametrizableCollection< ConfiguredModel > &modelColl, const ProcessTree &phyloTree) | |
Build a ProcessTree following a given ProcessComputationTree. So the resulting topology may be different from the given ParametrizablePhyloTree. More... | |
ProcessTree * | clone () const override |
ProcessTree (const ProcessTree &pTree) | |
ProcessTree & | operator= (const ProcessTree &pTree) |
DAGindexes | getDAGEdgesIndexes (const Speciesindex speciesIndex) const |
const ParameterList | getParameters () |
bool | matchParametersValues (ParameterList &) |
bool | isValid () const |
std::shared_ptr< E > | getEdgeToFather (const std::shared_ptr< N > nodeObject) const |
std::shared_ptr< E > | getEdgeToFather (const NodeIndex index) const |
void | rootAt (const std::shared_ptr< N > root) |
bool | isRooted () const |
std::shared_ptr< N > | getFatherOfNode (const std::shared_ptr< N > nodeObject) const |
bool | hasFather (const std::shared_ptr< N > nodeObject) const |
bool | hasFather (const NodeIndex index) const |
std::vector< std::shared_ptr< N > > | getSons (const std::shared_ptr< N > node) const |
std::vector< NodeIndex > | getSons (const NodeIndex node) const |
std::vector< std::shared_ptr< E > > | getBranches (const std::shared_ptr< N > node) const |
std::vector< EdgeIndex > | getBranches (const NodeIndex node) const |
std::shared_ptr< N > | getSon (const std::shared_ptr< E > edge) const |
NodeIndex | getSon (const EdgeIndex edge) const |
std::shared_ptr< N > | getFatherOfEdge (const std::shared_ptr< E > edge) const |
NodeIndex | getFatherOfEdge (const EdgeIndex edge) const |
size_t | getNumberOfSons (const std::shared_ptr< N > node) const |
std::vector< std::shared_ptr< N > > | getLeavesUnderNode (std::shared_ptr< N > node) const |
std::vector< NodeIndex > | getLeavesUnderNode (NodeIndex node) const |
std::vector< std::shared_ptr< N > > | removeSons (const std::shared_ptr< N > node) |
void | removeSon (const std::shared_ptr< N > node, const std::shared_ptr< N > son) |
void | setFather (const std::shared_ptr< N > nodeObject, const std::shared_ptr< N > fatherNodeObject, const std::shared_ptr< E > edgeObject=0) |
void | addSon (const std::shared_ptr< N > nodeObject, const std::shared_ptr< N > sonNodeObject, const std::shared_ptr< E > edgeObject=0) |
std::unique_ptr< typename AssociationTreeGraphObserver< N, E >::NodeIterator > | sonsIterator (std::shared_ptr< N > node) |
std::unique_ptr< typename AssociationTreeGraphObserver< N, E >::NodeIterator > | sonsIterator (std::shared_ptr< N > node) const |
std::unique_ptr< typename AssociationTreeGraphObserver< N, E >::EdgeIterator > | branchesIterator (std::shared_ptr< N > node) |
std::unique_ptr< typename AssociationTreeGraphObserver< N, E >::EdgeIterator > | branchesIterator (std::shared_ptr< N > node) const |
std::vector< std::shared_ptr< N > > | getNodePathBetweenTwoNodes (const std::shared_ptr< N > nodeA, const std::shared_ptr< N > nodeB, bool includeAncestor=true) const |
std::vector< NodeIndex > | getNodePathBetweenTwoNodes (const NodeIndex nodeA, const NodeIndex nodeB, bool includeAncestor=true) const |
std::vector< std::shared_ptr< E > > | getEdgePathBetweenTwoNodes (const std::shared_ptr< N > nodeA, const std::shared_ptr< N > nodeB) const |
std::vector< EdgeIndex > | getEdgePathBetweenTwoNodes (const NodeIndex nodeA, const NodeIndex nodeB, bool includeAncestor=true) const |
std::vector< std::shared_ptr< N > > | getSubtreeNodes (const std::shared_ptr< N > localRoot) const |
std::vector< NodeIndex > | getSubtreeNodes (const NodeIndex localRoot) const |
std::vector< std::shared_ptr< E > > | getSubtreeEdges (const std::shared_ptr< N > localRoot) const |
std::vector< EdgeIndex > | getSubtreeEdges (const NodeIndex localRoot) const |
std::shared_ptr< N > | MRCA (const std::vector< std::shared_ptr< N >> vNodeObject) const |
virtual void | createNode (std::shared_ptr< N > newNodeObject)=0 |
virtual void | createNode (std::shared_ptr< N > objectOriginNode, std::shared_ptr< N > newNodeObject, std::shared_ptr< E > newEdgeObject=00)=0 |
void | createNode (Nref nodeObject) |
void | createNode (Nref objectOriginNode, Nref newNodeObject, Eref newEdgeObject=00) |
virtual void | createNode (std::shared_ptr< N > newNodeObject)=0 |
virtual void | createNode (std::shared_ptr< N > objectOriginNode, std::shared_ptr< N > newNodeObject, std::shared_ptr< E > newEdgeObject=00)=0 |
void | createNode (Nref nodeObject) |
void | createNode (Nref objectOriginNode, Nref newNodeObject, Eref newEdgeObject=00) |
virtual void | link (std::shared_ptr< N > nodeObjectA, std::shared_ptr< N > nodeObjectB, std::shared_ptr< E > edgeObject=00)=0 |
void | link (Nref nodeObjectA, Nref nodeObjectB, Eref edgeObject=00) |
virtual void | link (std::shared_ptr< N > nodeObjectA, std::shared_ptr< N > nodeObjectB, std::shared_ptr< E > edgeObject=00)=0 |
void | link (Nref nodeObjectA, Nref nodeObjectB, Eref edgeObject=00) |
virtual void | unlink (std::shared_ptr< N > nodeObjectA, std::shared_ptr< N > nodeObjectB)=0 |
void | unlink (Nref nodeObjectA, Nref nodeObjectB) |
virtual void | unlink (std::shared_ptr< N > nodeObjectA, std::shared_ptr< N > nodeObjectB)=0 |
void | unlink (Nref nodeObjectA, Nref nodeObjectB) |
virtual void | deleteNode (std::shared_ptr< N > nodeObject)=0 |
void | deleteNode (Nref nodeObject) |
virtual void | deleteNode (std::shared_ptr< N > nodeObject)=0 |
void | deleteNode (Nref nodeObject) |
virtual void | associateNode (std::shared_ptr< N > nodeObject, NodeGraphid node)=0 |
void | associateNode (Nref nodeObject, NodeGraphid graphNode) |
virtual void | associateNode (std::shared_ptr< N > nodeObject, NodeGraphid node)=0 |
void | associateNode (Nref nodeObject, NodeGraphid graphNode) |
void | associateNode (Nref nodeObject, NodeGraphid graphNode) |
virtual void | associateEdge (std::shared_ptr< E > edgeObject, EdgeGraphid edge)=0 |
void | associateEdge (Eref edgeObject, EdgeGraphid graphEdge) |
virtual void | associateEdge (std::shared_ptr< E > edgeObject, EdgeGraphid edge)=0 |
void | associateEdge (Eref edgeObject, EdgeGraphid graphEdge) |
void | associateEdge (Eref edgeObject, EdgeGraphid graphEdge) |
virtual void | dissociateNode (std::shared_ptr< N > nodeObject)=0 |
void | dissociateNode (Nref nodeObject) |
virtual void | dissociateNode (std::shared_ptr< N > nodeObject)=0 |
void | dissociateNode (Nref nodeObject) |
virtual void | dissociateEdge (std::shared_ptr< E > edgeObject)=0 |
void | dissociateEdge (Eref edgeObject) |
virtual void | dissociateEdge (std::shared_ptr< E > edgeObject)=0 |
void | dissociateEdge (Eref edgeObject) |
virtual NodeGraphid | getNodeGraphid (const std::shared_ptr< N > nodeObject) const=0 |
NodeGraphid | getNodeGraphid (const Nref nodeObject) const |
virtual NodeGraphid | getNodeGraphid (const std::shared_ptr< N > nodeObject) const=0 |
NodeGraphid | getNodeGraphid (const Nref nodeObject) const |
virtual EdgeGraphid | getEdgeGraphid (const std::shared_ptr< E > edgeObject) const=0 |
EdgeGraphid | getEdgeGraphid (const Eref edgeObject) const |
virtual EdgeGraphid | getEdgeGraphid (const std::shared_ptr< E > edgeObject) const=0 |
EdgeGraphid | getEdgeGraphid (const Eref edgeObject) const |
virtual const std::shared_ptr< N > | getNodeFromGraphid (NodeGraphid) const=0 |
virtual std::shared_ptr< N > | getNodeFromGraphid (NodeGraphid)=0 |
Nref | getNodeFromGraphid (NodeGraphid node) |
const Nref | getNodeFromGraphid (NodeGraphid node) const |
virtual const std::shared_ptr< N > | getNodeFromGraphid (NodeGraphid) const=0 |
virtual std::shared_ptr< N > | getNodeFromGraphid (NodeGraphid)=0 |
Nref | getNodeFromGraphid (NodeGraphid node) |
const Nref | getNodeFromGraphid (NodeGraphid node) const |
Nref | getNodeFromGraphid (NodeGraphid node) |
const Nref | getNodeFromGraphid (NodeGraphid node) const |
virtual std::vector< std::shared_ptr< N > > | getNodesFromGraphid (std::vector< NodeGraphid >) const=0 |
std::vector< Nref > | getNodesFromGraphid (std::vector< NodeGraphid > nodes) const |
virtual std::vector< std::shared_ptr< N > > | getNodesFromGraphid (std::vector< NodeGraphid >) const=0 |
std::vector< Nref > | getNodesFromGraphid (std::vector< NodeGraphid > nodes) const |
std::vector< Nref > | getNodesFromGraphid (std::vector< NodeGraphid > nodes) const |
virtual std::shared_ptr< E > | getEdgeFromGraphid (EdgeGraphid)=0 |
virtual const std::shared_ptr< E > | getEdgeFromGraphid (EdgeGraphid) const=0 |
Eref | getEdgeFromGraphid (EdgeGraphid edge) |
const Eref | getEdgeFromGraphid (EdgeGraphid edge) const |
virtual std::shared_ptr< E > | getEdgeFromGraphid (EdgeGraphid)=0 |
virtual const std::shared_ptr< E > | getEdgeFromGraphid (EdgeGraphid) const=0 |
Eref | getEdgeFromGraphid (EdgeGraphid edge) |
const Eref | getEdgeFromGraphid (EdgeGraphid edge) const |
Eref | getEdgeFromGraphid (EdgeGraphid edge) |
const Eref | getEdgeFromGraphid (EdgeGraphid edge) const |
virtual std::vector< std::shared_ptr< E > > | getEdgesFromGraphid (std::vector< EdgeGraphid >) const=0 |
std::vector< Eref > | getEdgesFromGraphid (std::vector< EdgeGraphid > edges) const |
virtual std::vector< std::shared_ptr< E > > | getEdgesFromGraphid (std::vector< EdgeGraphid >) const=0 |
std::vector< Eref > | getEdgesFromGraphid (std::vector< EdgeGraphid > edges) const |
std::vector< Eref > | getEdgesFromGraphid (std::vector< EdgeGraphid > edges) const |
virtual std::shared_ptr< N > | getRoot () const=0 |
Nref | getRoot () const |
virtual std::shared_ptr< N > | getRoot () const=0 |
Nref | getRoot () const |
virtual NodeIndex | getRootIndex () const=0 |
NodeIndex | getRootIndex () const |
virtual NodeIndex | getRootIndex () const=0 |
NodeIndex | getRootIndex () const |
virtual bool | hasNodeIndex (const std::shared_ptr< N > nodeObject) const=0 |
bool | hasNodeIndex (const Nref nodeObject) const |
virtual bool | hasNodeIndex (const std::shared_ptr< N > nodeObject) const=0 |
bool | hasNodeIndex (const Nref nodeObject) const |
virtual bool | hasEdgeIndex (const std::shared_ptr< E > edgeObject) const=0 |
bool | hasEdgeIndex (const Eref edgeObject) const |
virtual bool | hasEdgeIndex (const std::shared_ptr< E > edgeObject) const=0 |
bool | hasEdgeIndex (const Eref edgeObject) const |
virtual NodeIndex | getNodeIndex (const std::shared_ptr< N > nodeObject) const=0 |
NodeIndex | getNodeIndex (const Nref nodeObject) const |
virtual NodeIndex | getNodeIndex (const std::shared_ptr< N > nodeObject) const=0 |
NodeIndex | getNodeIndex (const Nref nodeObject) const |
virtual std::vector< NodeIndex > | getNodeIndexes (std::vector< std::shared_ptr< N >> nodeObjects) const=0 |
std::vector< NodeIndex > | getNodeIndexes (std::vector< Nref > nodes) const |
virtual std::vector< NodeIndex > | getNodeIndexes (std::vector< std::shared_ptr< N >> nodeObjects) const=0 |
std::vector< NodeIndex > | getNodeIndexes (std::vector< Nref > nodes) const |
virtual EdgeIndex | getEdgeIndex (const std::shared_ptr< E > edgeObject) const=0 |
EdgeIndex | getEdgeIndex (const Eref edgeObject) const |
virtual EdgeIndex | getEdgeIndex (const std::shared_ptr< E > edgeObject) const=0 |
EdgeIndex | getEdgeIndex (const Eref edgeObject) const |
virtual std::vector< EdgeIndex > | getEdgeIndexes (std::vector< std::shared_ptr< E >> edgeObjects) const=0 |
std::vector< EdgeIndex > | getEdgeIndexes (std::vector< Eref > edges) const |
virtual std::vector< EdgeIndex > | getEdgeIndexes (std::vector< std::shared_ptr< E >> edgeObjects) const=0 |
std::vector< EdgeIndex > | getEdgeIndexes (std::vector< Eref > edges) const |
virtual NodeIndex | setNodeIndex (const std::shared_ptr< N > nodeObject, NodeIndex index)=0 |
NodeIndex | setNodeIndex (const Nref nodeObject, NodeIndex index) |
virtual NodeIndex | setNodeIndex (const std::shared_ptr< N > nodeObject, NodeIndex index)=0 |
NodeIndex | setNodeIndex (const Nref nodeObject, NodeIndex index) |
NodeIndex | setNodeIndex (const Nref nodeObject, NodeIndex index) |
virtual EdgeIndex | setEdgeIndex (const std::shared_ptr< E > edgeObject, EdgeIndex index)=0 |
EdgeIndex | setEdgeIndex (const Eref edgeObject, EdgeIndex index) |
virtual EdgeIndex | setEdgeIndex (const std::shared_ptr< E > edgeObject, EdgeIndex index)=0 |
EdgeIndex | setEdgeIndex (const Eref edgeObject, EdgeIndex index) |
EdgeIndex | setEdgeIndex (const Eref edgeObject, EdgeIndex index) |
virtual bool | hasNode (NodeIndex nodeIndex) const=0 |
bool | hasNode (NodeIndex node) const |
virtual bool | hasNode (NodeIndex nodeIndex) const=0 |
bool | hasNode (Nref nodeObject) const |
bool | hasNode (NodeIndex node) const |
bool | hasNode (NodeIndex node) const |
virtual bool | hasEdge (EdgeIndex edgeIndex) const=0 |
bool | hasEdge (EdgeIndex edge) const |
virtual bool | hasEdge (EdgeIndex edgeIndex) const=0 |
bool | hasEdge (Eref edgeObject) const |
bool | hasEdge (EdgeIndex edge) const |
bool | hasEdge (EdgeIndex edge) const |
virtual std::shared_ptr< N > | getNode (NodeIndex nodeIndex) const=0 |
Nref | getNode (NodeIndex node) const |
virtual std::shared_ptr< N > | getNode (NodeIndex nodeIndex) const=0 |
Nref | getNode (NodeIndex node) const |
Nref | getNode (NodeIndex node) const |
virtual std::shared_ptr< E > | getEdge (EdgeIndex edgeIndex) const=0 |
Eref | getEdge (EdgeIndex edge) const |
virtual std::shared_ptr< E > | getEdge (EdgeIndex edgeIndex) const=0 |
Eref | getEdge (EdgeIndex edge) const |
Eref | getEdge (EdgeIndex edge) const |
virtual std::unique_ptr< NodeIterator > | allNodesIterator ()=0 |
virtual std::unique_ptr< NodeIterator > | allNodesIterator () const=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | allNodesIterator () |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | allNodesIterator () const |
virtual std::unique_ptr< NodeIterator > | allNodesIterator ()=0 |
virtual std::unique_ptr< NodeIterator > | allNodesIterator () const=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | allNodesIterator () |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | allNodesIterator () const |
virtual std::unique_ptr< NodeIterator > | outgoingNeighborNodesIterator (std::shared_ptr< N > node)=0 |
virtual std::unique_ptr< NodeIterator > | outgoingNeighborNodesIterator (std::shared_ptr< N > node) const=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | outgoingNeighborNodesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | outgoingNeighborNodesIterator (Nref node) const |
virtual std::unique_ptr< NodeIterator > | outgoingNeighborNodesIterator (std::shared_ptr< N > node)=0 |
virtual std::unique_ptr< NodeIterator > | outgoingNeighborNodesIterator (std::shared_ptr< N > node) const=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | outgoingNeighborNodesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | outgoingNeighborNodesIterator (Nref node) const |
virtual std::unique_ptr< NodeIterator > | incomingNeighborNodesIterator (std::shared_ptr< N > node)=0 |
virtual std::unique_ptr< NodeIterator > | incomingNeighborNodesIterator (std::shared_ptr< N > node) const=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | incomingNeighborNodesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | incomingNeighborNodesIterator (Nref node) const |
virtual std::unique_ptr< NodeIterator > | incomingNeighborNodesIterator (std::shared_ptr< N > node)=0 |
virtual std::unique_ptr< NodeIterator > | incomingNeighborNodesIterator (std::shared_ptr< N > node) const=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | incomingNeighborNodesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::NodeIterator > | incomingNeighborNodesIterator (Nref node) const |
virtual std::vector< std::shared_ptr< N > > | getNeighbors (const std::shared_ptr< N > node) const=0 |
virtual std::vector< NodeIndex > | getNeighbors (NodeIndex node) const=0 |
std::vector< Nref > | getNeighbors (const Nref node) const |
std::vector< NodeIndex > | getNeighbors (NodeIndex node) const |
virtual std::vector< std::shared_ptr< N > > | getNeighbors (const std::shared_ptr< N > node) const=0 |
virtual std::vector< NodeIndex > | getNeighbors (NodeIndex node) const=0 |
std::vector< Nref > | getNeighbors (const Nref node) const |
std::vector< NodeIndex > | getNeighbors (NodeIndex node) const |
std::vector< NodeIndex > | getNeighbors (NodeIndex node) const |
virtual std::vector< std::shared_ptr< E > > | getEdges (const std::shared_ptr< N > node) const=0 |
virtual std::vector< EdgeIndex > | getEdges (NodeIndex node) const=0 |
std::vector< Eref > | getEdges (const Nref node) const |
std::vector< EdgeIndex > | getEdges (NodeIndex node) const |
virtual std::vector< std::shared_ptr< E > > | getEdges (const std::shared_ptr< N > node) const=0 |
virtual std::vector< EdgeIndex > | getEdges (NodeIndex node) const=0 |
std::vector< Eref > | getEdges (const Nref node) const |
std::vector< EdgeIndex > | getEdges (NodeIndex node) const |
std::vector< EdgeIndex > | getEdges (NodeIndex node) const |
virtual std::vector< std::shared_ptr< N > > | getOutgoingNeighbors (const std::shared_ptr< N > node) const=0 |
virtual std::vector< NodeIndex > | getOutgoingNeighbors (NodeIndex node) const=0 |
std::vector< Nref > | getOutgoingNeighbors (const Nref node) const |
std::vector< NodeIndex > | getOutgoingNeighbors (NodeIndex node) const |
virtual std::vector< std::shared_ptr< N > > | getOutgoingNeighbors (const std::shared_ptr< N > node) const=0 |
virtual std::vector< NodeIndex > | getOutgoingNeighbors (NodeIndex node) const=0 |
std::vector< Nref > | getOutgoingNeighbors (const Nref node) const |
std::vector< NodeIndex > | getOutgoingNeighbors (NodeIndex node) const |
std::vector< NodeIndex > | getOutgoingNeighbors (NodeIndex node) const |
virtual std::vector< std::shared_ptr< E > > | getOutgoingEdges (const std::shared_ptr< N > node) const=0 |
virtual std::vector< EdgeIndex > | getOutgoingEdges (NodeIndex node) const=0 |
std::vector< Eref > | getOutgoingEdges (const Nref node) const |
std::vector< EdgeIndex > | getOutgoingEdges (NodeIndex node) const |
virtual std::vector< std::shared_ptr< E > > | getOutgoingEdges (const std::shared_ptr< N > node) const=0 |
virtual std::vector< EdgeIndex > | getOutgoingEdges (NodeIndex node) const=0 |
std::vector< Eref > | getOutgoingEdges (const Nref node) const |
std::vector< EdgeIndex > | getOutgoingEdges (NodeIndex node) const |
std::vector< EdgeIndex > | getOutgoingEdges (NodeIndex node) const |
virtual std::vector< std::shared_ptr< N > > | getIncomingNeighbors (const std::shared_ptr< N > node) const=0 |
virtual std::vector< NodeIndex > | getIncomingNeighbors (NodeIndex node) const=0 |
std::vector< Nref > | getIncomingNeighbors (const Nref node) const |
std::vector< NodeIndex > | getIncomingNeighbors (NodeIndex node) const |
virtual std::vector< std::shared_ptr< N > > | getIncomingNeighbors (const std::shared_ptr< N > node) const=0 |
virtual std::vector< NodeIndex > | getIncomingNeighbors (NodeIndex node) const=0 |
std::vector< Nref > | getIncomingNeighbors (const Nref node) const |
std::vector< NodeIndex > | getIncomingNeighbors (NodeIndex node) const |
std::vector< NodeIndex > | getIncomingNeighbors (NodeIndex node) const |
virtual std::vector< std::shared_ptr< E > > | getIncomingEdges (const std::shared_ptr< N > node) const=0 |
virtual std::vector< EdgeIndex > | getIncomingEdges (NodeIndex node) const=0 |
std::vector< Eref > | getIncomingEdges (const Nref node) const |
std::vector< EdgeIndex > | getIncomingEdges (NodeIndex node) const |
virtual std::vector< std::shared_ptr< E > > | getIncomingEdges (const std::shared_ptr< N > node) const=0 |
virtual std::vector< EdgeIndex > | getIncomingEdges (NodeIndex node) const=0 |
std::vector< Eref > | getIncomingEdges (const Nref node) const |
std::vector< EdgeIndex > | getIncomingEdges (NodeIndex node) const |
std::vector< EdgeIndex > | getIncomingEdges (NodeIndex node) const |
virtual std::vector< std::shared_ptr< N > > | getLeavesFromNode (std::shared_ptr< N > node, unsigned int maxDepth) const=0 |
std::vector< Nref > | getLeavesFromNode (Nref node, unsigned int maxDepth) const |
virtual std::vector< std::shared_ptr< N > > | getLeavesFromNode (std::shared_ptr< N > node, unsigned int maxDepth) const=0 |
std::vector< Nref > | getLeavesFromNode (Nref node, unsigned int maxDepth) const |
virtual std::vector< std::shared_ptr< N > > | getAllLeaves () const=0 |
std::vector< Nref > | getAllLeaves () const |
virtual std::vector< std::shared_ptr< N > > | getAllLeaves () const=0 |
std::vector< Nref > | getAllLeaves () const |
virtual std::vector< NodeIndex > | getAllLeavesIndexes () const=0 |
std::vector< NodeIndex > | getAllLeavesIndexes () const |
virtual std::vector< NodeIndex > | getAllLeavesIndexes () const=0 |
std::vector< NodeIndex > | getAllLeavesIndexes () const |
virtual std::vector< std::shared_ptr< N > > | getAllInnerNodes () const=0 |
std::vector< Nref > | getAllInnerNodes () const |
virtual std::vector< std::shared_ptr< N > > | getAllInnerNodes () const=0 |
std::vector< Nref > | getAllInnerNodes () const |
virtual std::vector< NodeIndex > | getAllInnerNodesIndexes () const=0 |
std::vector< NodeIndex > | getAllInnerNodesIndexes () const |
virtual std::vector< NodeIndex > | getAllInnerNodesIndexes () const=0 |
std::vector< NodeIndex > | getAllInnerNodesIndexes () const |
virtual std::vector< std::shared_ptr< N > > | getAllNodes () const=0 |
std::vector< Nref > | getAllNodes () const |
virtual std::vector< std::shared_ptr< N > > | getAllNodes () const=0 |
std::vector< Nref > | getAllNodes () const |
virtual std::vector< NodeIndex > | getAllNodesIndexes () const=0 |
std::vector< NodeIndex > | getAllNodesIndexes () const |
virtual std::vector< NodeIndex > | getAllNodesIndexes () const=0 |
std::vector< NodeIndex > | getAllNodesIndexes () const |
virtual std::unique_ptr< EdgeIterator > | allEdgesIterator ()=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | allEdgesIterator () |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | allEdgesIterator () const |
virtual std::unique_ptr< EdgeIterator > | allEdgesIterator ()=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | allEdgesIterator () |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | allEdgesIterator () const |
virtual std::unique_ptr< EdgeIterator > | outgoingEdgesIterator (std::shared_ptr< N > node)=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | outgoingEdgesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | outgoingEdgesIterator (Nref node) const |
virtual std::unique_ptr< EdgeIterator > | outgoingEdgesIterator (std::shared_ptr< N > node)=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | outgoingEdgesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | outgoingEdgesIterator (Nref node) const |
virtual std::unique_ptr< EdgeIterator > | incomingEdgesIterator (std::shared_ptr< N > node)=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | incomingEdgesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | incomingEdgesIterator (Nref node) const |
virtual std::unique_ptr< EdgeIterator > | incomingEdgesIterator (std::shared_ptr< N > node)=0 |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | incomingEdgesIterator (Nref node) |
std::unique_ptr< typename AssociationGraphObserver< N, E >::EdgeIterator > | incomingEdgesIterator (Nref node) const |
virtual std::vector< std::shared_ptr< E > > | getAllEdges () const=0 |
std::vector< Eref > | getAllEdges () const |
virtual std::vector< std::shared_ptr< E > > | getAllEdges () const=0 |
std::vector< Eref > | getAllEdges () const |
virtual std::vector< EdgeIndex > | getAllEdgesIndexes () const=0 |
std::vector< EdgeIndex > | getAllEdgesIndexes () const |
virtual std::vector< EdgeIndex > | getAllEdgesIndexes () const=0 |
std::vector< EdgeIndex > | getAllEdgesIndexes () const |
virtual std::shared_ptr< E > | getEdgeLinking (std::shared_ptr< N > nodeA, std::shared_ptr< N > nodeB) const=0 |
Eref | getEdgeLinking (Nref nodeA, Nref nodeB) const |
virtual std::shared_ptr< E > | getEdgeLinking (std::shared_ptr< N > nodeA, std::shared_ptr< N > nodeB) const=0 |
Eref | getEdgeLinking (Nref nodeA, Nref nodeB) const |
virtual void | setEdgeLinking (std::shared_ptr< N > nodeA, std::shared_ptr< N > nodeB, std::shared_ptr< E > edge)=0 |
void | setEdgeLinking (Nref nodeA, Nref nodeB, Eref edge) |
virtual void | setEdgeLinking (std::shared_ptr< N > nodeA, std::shared_ptr< N > nodeB, std::shared_ptr< E > edge)=0 |
void | setEdgeLinking (Nref nodeA, Nref nodeB, Eref edge) |
virtual void | deletedEdgesUpdate (const std::vector< unsigned int > &edgesToDelete)=0 |
void | deletedEdgesUpdate (const std::vector< unsigned int > &edgesToDelete) |
virtual void | deletedEdgesUpdate (const std::vector< unsigned int > &edgesToDelete)=0 |
void | deletedEdgesUpdate (const std::vector< unsigned int > &edgesToDelete) |
virtual void | deletedNodesUpdate (const std::vector< unsigned int > &nodesToDelete)=0 |
void | deletedNodesUpdate (const std::vector< unsigned int > &nodesToDelete) |
virtual void | deletedNodesUpdate (const std::vector< unsigned int > &nodesToDelete)=0 |
void | deletedNodesUpdate (const std::vector< unsigned int > &nodesToDelete) |
NodeIndex | addNodeIndex (const Nref nodeObject) |
NodeIndex | addNodeIndex (const Nref nodeObject) |
EdgeIndex | addEdgeIndex (const Eref edgeObject) |
EdgeIndex | addEdgeIndex (const Eref edgeObject) |
void | setRoot (const Nref newRoot) |
void | setRoot (const Nref newRoot) |
void | outputToDot (const std::string &fname, const std::string &name) const |
void | outputToDot (std::ostream &out, const std::string &name) const |
void | outputToDot (const std::string &fname, const std::string &name) const |
void | outputToDot (std::ostream &out, const std::string &name) const |
bool | isLeaf (const Nref node) const |
bool | isLeaf (const NodeIndex nodeid) const |
bool | isLeaf (const Nref node) const |
bool | isLeaf (const NodeIndex nodeid) const |
bool | isLeaf (const NodeIndex nodeid) const |
std::pair< Nref, Nref > | getNodes (Eref edge) const |
std::pair< Nref, Nref > | getNodes (Eref edge) const |
size_t | getNumberOfNodes () const |
size_t | getNumberOfNodes () const |
size_t | getNumberOfEdges () const |
size_t | getNumberOfEdges () const |
size_t | getNumberOfLeaves () const |
size_t | getNumberOfLeaves () const |
size_t | getDegree (const Nref node) const |
size_t | getDegree (const Nref node) const |
const std::shared_ptr< TreeGraphImpl > | getGraph () const |
std::shared_ptr< TreeGraphImpl > | getGraph () |
std::string | nodeToString (const Nref nodeObject) const |
std::string | edgeToString (const Eref edgeObject) const |
Static Public Member Functions | |
static std::shared_ptr< ProcessTree > | makeProcessTree (Context &context, std::shared_ptr< const SubstitutionProcessInterface > process, ParameterList &parList, const std::string &suff="") |
Create a Process Tree following a Substitution Process. Tree Node parameters are got from ConfiguredParameters PREVIOUSLY built and stored in a ParameterList. More... | |
static std::shared_ptr< ProcessTree > | makeProcessTree (CollectionNodes &collection, size_t pNum) |
Create a Process Tree following a Substitution Process in a Collection. Tree Node parameters are got from ConfiguredParameters PREVIOUSLY built and stored in a ParameterList. More... | |
static B * | copy (const A &a, typename std::enable_if< !std::is_base_of< B, A >::value &&!std::is_abstract< B >::value, B * >::type *=0) |
static B * | copy (const A &a, typename std::enable_if< !std::is_base_of< B, A >::value &&std::is_abstract< B >::value, B * >::type *=0) |
static B * | copy (const A &a, typename std::enable_if< std::is_base_of< B, A >::value &&!std::is_abstract< A >::value, B * >::type *=0) |
static B * | copy (const A &a, typename std::enable_if< std::is_base_of< B, A >::value &&std::is_abstract< A >::value &&std::is_base_of< Clonable, A >::value, B * >::type *=0) |
static B * | copy (const A &a, typename std::enable_if< std::is_base_of< B, A >::value &&std::is_abstract< A >::value &&!std::is_base_of< Clonable, A >::value, B * >::type *=0) |
static B * | copy (const A &a, typename std::enable_if< std::is_base_of< B, A >::value &&std::is_abstract< A >::value &&std::is_base_of< Clonable, A >::value, B * >::type *=0) |
static B * | copy (const A &a, typename std::enable_if< std::is_base_of< B, A >::value &&std::is_abstract< A >::value &&!std::is_base_of< Clonable, A >::value, B * >::type *=0) |
Protected Attributes | |
std::shared_ptr< TreeGraphImpl > | subjectGraph_ |
Private Types | |
enum | neighborType |
Private Member Functions | |
std::vector< Nref > | getNeighbors_ (const Nref nodeObject, neighborType type) const |
std::vector< Eref > | getEdges_ (const Nref nodeObject, neighborType type) const |
Private Attributes | |
Context | context_ |
INCOMING | |
OUTGOING | |
BOTH | |
std::vector< Nref > | graphidToN_ |
std::vector< Eref > | graphidToE_ |
std::map< Nref, NodeGraphid > | NToGraphid_ |
std::map< Eref, EdgeGraphid > | EToGraphid_ |
std::vector< Nref > | indexToN_ |
std::vector< Eref > | indexToE_ |
std::map< Nref, NodeIndex > | NToIndex_ |
std::map< Eref, EdgeIndex > | EToIndex_ |
Definition at line 150 of file ProcessTree.h.
ProcessTree::ProcessTree | ( | Context & | context, |
const ParametrizablePhyloTree & | tree | ||
) |
Build a ProcessTree with same topology as a given ParametrizablePhyloTree, and new ConfiguredParameter BrLen. are created.
Definition at line 20 of file ProcessTree.cpp.
References bpp::AssociationTreeGraphImplObserver< class, class, class >::associateEdge(), bpp::AssociationTreeGraphImplObserver< class, class, class >::associateNode(), bpp::ConfiguredParameter::create(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getAllEdges(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getAllNodes(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdgeGraphid(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdgeIndex(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getNodeGraphid(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getNodeIndex(), bpp::AssociationTreeGraphImplObserver< class, class, class >::setEdgeIndex(), and bpp::AssociationTreeGraphImplObserver< class, class, class >::setNodeIndex().
ProcessTree::ProcessTree | ( | const ProcessTree & | tree, |
ValueRef< double > | rate | ||
) |
Copy a ProcessTree with all BrLen multiplied by a given rate DF double *.
Definition at line 53 of file ProcessTree.cpp.
References bpp::AssociationTreeGraphImplObserver< class, class, class >::allEdgesIterator(), and context_.
ProcessTree::ProcessTree | ( | Context & | context, |
const ParametrizablePhyloTree & | tree, | ||
const ParameterList & | parList, | ||
const std::string & | suff | ||
) |
Build a ProcessTree with same topology as a given ParametrizablePhyloTree. ConfiguredParameter objects are linked to those of a ParameterList, with names BrLen_"suff".
Definition at line 74 of file ProcessTree.cpp.
References bpp::AssociationTreeGraphImplObserver< class, class, class >::associateEdge(), bpp::AssociationTreeGraphImplObserver< class, class, class >::associateNode(), bpp::ConfiguredParameter::create(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getAllEdges(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getAllNodes(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdgeGraphid(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdgeIndex(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getNodeGraphid(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getNodeIndex(), bpp::ParameterList::getParameter(), bpp::ParameterList::hasParameter(), bpp::AssociationTreeGraphImplObserver< class, class, class >::setEdgeIndex(), and bpp::AssociationTreeGraphImplObserver< class, class, class >::setNodeIndex().
ProcessTree::ProcessTree | ( | const ProcessComputationTree & | tree, |
ParametrizableCollection< ConfiguredModel > & | modelColl, | ||
const ProcessTree & | phyloTree | ||
) |
Build a ProcessTree following a given ProcessComputationTree. So the resulting topology may be different from the given ParametrizablePhyloTree.
ConfiguredModels are in a ParametrizableCollection, and BrLen Parameters are in a ProcessTree with same topology as in the SubstitutionProcess.
Definition at line 123 of file ProcessTree.cpp.
References bpp::AssociationTreeGraphImplObserver< class, class, class >::associateEdge(), bpp::AssociationTreeGraphImplObserver< class, class, class >::associateNode(), context_, bpp::NumericConstant< T >::create(), bpp::ProbabilityFromMixedModel::create(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getAllEdges(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getAllNodes(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdge(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdgeGraphid(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdgeIndex(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getNodeGraphid(), bpp::AssociationTreeGraphImplObserver< class, class, class >::getNodeIndex(), bpp::AssociationTreeGraphImplObserver< class, class, class >::hasEdge(), bpp::ParametrizableCollection< class >::hasObject(), bpp::AssociationTreeGraphImplObserver< class, class, class >::setEdgeIndex(), bpp::AssociationTreeGraphImplObserver< class, class, class >::setNodeIndex(), and bpp::TextTools::toString().
|
inline |
Definition at line 200 of file ProcessTree.h.
|
inlineoverridevirtual |
Reimplemented from bpp::AssociationTreeGraphImplObserver< class, class, class >.
Definition at line 195 of file ProcessTree.h.
DAGindexes ProcessTree::getDAGEdgesIndexes | ( | const Speciesindex | speciesIndex | ) | const |
Definition at line 236 of file ProcessTree.cpp.
References bpp::AssociationTreeGraphImplObserver< class, class, class >::getAllEdges(), and bpp::AssociationTreeGraphImplObserver< class, class, class >::getEdgeIndex().
|
inline |
Definition at line 224 of file ProcessTree.h.
|
static |
Create a Process Tree following a Substitution Process in a Collection. Tree Node parameters are got from ConfiguredParameters PREVIOUSLY built and stored in a ParameterList.
Definition at line 201 of file ProcessTree.cpp.
References bpp::CollectionNodes::collection(), bpp::CollectionNodes::getModelCollection(), bpp::CollectionNodes::getProcessTree(), and bpp::SubstitutionProcessCollection::getSubstitutionProcess().
|
static |
Create a Process Tree following a Substitution Process. Tree Node parameters are got from ConfiguredParameters PREVIOUSLY built and stored in a ParameterList.
Definition at line 214 of file ProcessTree.cpp.
References bpp::makeConfiguredModelCollection().
Referenced by bpp::LikelihoodCalculationSingleProcess::makeProcessNodes_().
|
inline |
Definition at line 226 of file ProcessTree.h.
|
inline |
Definition at line 206 of file ProcessTree.h.
|
private |
Definition at line 152 of file ProcessTree.h.
Referenced by ProcessTree().