blob: cc3fcff1112f7407c530f98c80007f451e1fcab4 (
plain)
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
36
37
38
39
40
41
42
43
44
45
46
47
|
#include <iostream>
#include "filelib.h"
#include "decoder.h"
#include "ff_register.h"
#include "verbose.h"
#include "timing_stats.h"
#include "util/usage.hh"
using namespace std;
int main(int argc, char** argv) {
register_feature_functions();
Decoder decoder(argc, argv);
const string input = decoder.GetConf()["input"].as<string>();
const bool show_feature_dictionary = decoder.GetConf().count("show_feature_dictionary");
if (!SILENT) cerr << "Reading input from " << ((input == "-") ? "STDIN" : input.c_str()) << endl;
ReadFile in_read(input);
istream *in = in_read.stream();
assert(*in);
string buf;
#ifdef CP_TIME
clock_t time_cp(0);//, end_cp;
#endif
while(*in) {
getline(*in, buf);
if (buf.empty()) continue;
decoder.Decode(buf);
}
Timer::Summarize();
#ifdef CP_TIME
cerr << "Time required for Cube Pruning execution: "
<< CpTime::Get()
<< " seconds." << "\n\n";
#endif
if (show_feature_dictionary) {
int num = FD::NumFeats();
for (int i = 1; i < num; ++i) {
cout << FD::Convert(i) << endl;
}
}
util::PrintUsage(std::cerr);
return 0;
}
|