Model model(0);
bool detectModel = true;
+ //Parse command line arguments
int opt;
while ((opt = getopt(argc, argv, "m:n:h")) != -1) {
switch (opt) {
}
}
+ //Open file, or stdin
istream* in;
ifstream file;
if (optind == argc || *argv[optind] == '-'){
}
in = &file;
}
- //TODO: Parse
+
+ //Parse the gene order permutation
vector<Gene> g;
copy(istream_iterator<int>(*in), istream_iterator<int>(),
- back_inserter(g));
+ back_inserter(g));
GeneOrder go(g.begin(),g.end());
- //TODO: Identify
+ //Identify the model
ModelIdentifier mi(ann);
priority_queue<pair<double,Model> > pq = mi.identify(go);
if (detectModel){
//copy(go.begin(), go.end(), ostream_iterator<int>(cout, " "));
//cout << endl;
- //TODO: Chose a sorter
+ //Sort
GeneSorter so;
- //TODO: Sort
GeneSorter::ActionList al = so.sort(go,model);
+ //Print the result
double score = 0;
for (GeneSorter::ActionList::iterator sa = al.begin(); sa != al.end(); ++sa){
cout << "Action: " << sa->toString() << " model score: " << model.score(*sa,go) << endl;
score += model.score(*sa,go);
}
cout << "Avg score: " << score / al.size() << endl;
- //TODO: Print result
+
return EXIT_SUCCESS;
}