4 #include <msp/core/application.h>
5 #include <msp/core/getopt.h>
6 #include "source/parser.h"
7 #include "source/statement.h"
8 #include "source/writer.h"
13 class DataTool: public Application
20 DataTool(int argc, char **argv);
23 static Application::RegApp<DataTool> reg;
27 DataTool::DataTool(int argc, char **argv):
31 getopt.add_option('o', "output", out_fn, GetOpt::REQUIRED_ARG);
32 getopt.add_option('b', "binary", binary, GetOpt::NO_ARG);
35 const vector<string> &args=getopt.get_args();
37 throw UsageError("Must give input filename");
44 ifstream in(in_fn.c_str());
47 cerr<<"Couldn't open input file\n";
55 out=new ofstream(out_fn.c_str());
57 DataFile::Parser parser(in, in_fn);
58 DataFile::Writer writer(*out);
60 writer.set_binary(true);
64 DataFile::Statement st=parser.parse();
75 Application::RegApp<DataTool> DataTool::reg;