5 #ifndef BPP_PHYL_TREE_PHYLONODE_H
6 #define BPP_PHYL_TREE_PHYLONODE_H
251 namespace bpp {
class PhyloNode; }
std::string toString() const
bool isSpeciation() const
static const NodeEvent speciationEvent
static const NodeEvent mixtureEvent
NodeEvent * clone() const
General exception thrown when something is wrong with a particular node.
General exception thrown if a property could not be found.
void setName(const std::string &name)
Give a name or update the name associated to the node.
bool hasName() const
Tell is this node has a name.
Clonable * removeProperty(const std::string &name)
PhyloNode()
Build a new void Node object.
void deleteProperty(const std::string &name)
Clonable * getProperty(const std::string &name)
void deleteProperties()
Delete all node properties.
void deleteName()
Delete the name associated to this node (do nothing if there is no name).
void setProperty(const std::string &name, const Clonable &property)
Set/add a node property.
PhyloNode * clone() const
std::string getName() const
Get the name associated to this node, if there is one, otherwise throw a NodeException.
std::map< std::string, Clonable * > properties_
PhyloNode(const std::string &name)
Build a new Node with specified name.
PhyloNode & operator=(const PhyloNode &node)
Assignation operator.
bool hasProperty(const std::string &name) const
const Clonable * getProperty(const std::string &name) const
virtual ~PhyloNode()
destructor.
void removeProperties()
Remove all node properties.
std::vector< std::string > getPropertyNames() const
Defines the basic types of data flow nodes.