3 #include <msp/core/application.h>
4 #include <msp/core/getopt.h>
5 #include <msp/io/buffered.h>
6 #include <msp/io/console.h>
7 #include <msp/io/file.h>
8 #include "source/parser.h"
9 #include "source/statement.h"
10 #include "source/writer.h"
15 class DataTool: public Application
22 DataTool(int argc, char **argv);
25 static Application::RegApp<DataTool> reg;
29 DataTool::DataTool(int argc, char **argv):
34 getopt.add_option('o', "output", out_fn, GetOpt::REQUIRED_ARG);
35 getopt.add_option('b', "binary", binary, GetOpt::NO_ARG);
38 const vector<string> &args=getopt.get_args();
49 in=new IO::File(in_fn);
55 out=new IO::File(out_fn, IO::M_WRITE);
58 IO::Buffered in_buf(*in);
59 DataFile::Parser parser(in_buf, in_fn);
60 IO::Buffered out_buf(*out);
61 DataFile::Writer writer(out_buf);
63 writer.set_binary(true);
67 DataFile::Statement st=parser.parse();
84 Application::RegApp<DataTool> DataTool::reg;