1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
/*
* meaPath.hh
*
* License: Artistic License, see file LICENSE.TXT or
* https://opensource.org/licenses/artistic-license-1.0
*/
#ifndef _MEAPATH_HH
#define _MEAPATH_HH
/**
*
* @author Lizzy Gerischer
*/
class MEApath{
public:
MEApath(AugustusGraph *g):graph(g){}
~MEApath(){}
void findMEApath();
void getTopologicalOrdering();
void dfs(Node *n);
void relax();
void backtracking();
inline list<Node*> getPath(){
return meaPath;
}
private:
AugustusGraph *graph;
vector<Node*> topSort; // reverse topological ordering of nodelist starting with tail
map<string,Node*> processed;
list<Node*> meaPath;
};
#endif
|