40 #ifndef _NNITOPOLOGYSEARCH_H_ 41 #define _NNITOPOLOGYSEARCH_H_ 65 const static std::string
FAST;
78 const std::string& algorithm =
FAST,
79 unsigned int verbose = 2) :
109 for (std::vector <TopologyListener*>::iterator it =
topoListeners_.begin();
116 void search() throw (Exception);
171 #endif //_NNITOPOLOGYSEARCH_H_ void notifyAllTested(const TopologyChangeEvent &event)
Process a TopologyChangeEvent to all listeners.
NNISearchable * searchableTree_
static const std::string FAST
void search()
Performs the search.
void notifyAllPerformed(const TopologyChangeEvent &event)
Process a TopologyChangeEvent to all listeners.
NNITopologySearch(NNISearchable &tree, const std::string &algorithm=FAST, unsigned int verbose=2)
Interface for Nearest Neighbor Interchanges algorithms.
std::vector< TopologyListener * > topoListeners_
Interface for phylogenetic tree objects.
Interface for topology search methods.
NNITopologySearch(const NNITopologySearch &ts)
const Tree & getTopology() const
Retrieve the tree.
const NNISearchable * getSearchableObject() const
void addTopologyListener(TopologyListener *listener)
Add a listener to the list.
NNITopologySearch & operator=(const NNITopologySearch &ts)
Class for notifying new toplogy change events.
NNISearchable * getSearchableObject()
static const std::string BETTER
static const std::string PHYML
Implement this interface to be notified when the topology of a tree has changed during topology searc...
void notifyAllSuccessful(const TopologyChangeEvent &event)
Process a TopologyChangeEvent to all listeners.
NNI topology search method.
virtual const Tree & getTopology() const =0
Get the tree associated to this NNISearchable object.
virtual ~NNITopologySearch()