X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fwriter.cpp;h=ff4f2248bee7e7d3035c3a4174e44a52251d2450;hb=HEAD;hp=bfd0edac784227efa21b8f30b7dd72e5bcdc3325;hpb=14d7dc66003ae52f8c4c25bf241b2a12264aacb2;p=libs%2Fdatafile.git diff --git a/source/writer.cpp b/source/writer.cpp index bfd0eda..bb3ff5e 100644 --- a/source/writer.cpp +++ b/source/writer.cpp @@ -1,10 +1,4 @@ -/* $Id$ - -This file is part of libmspdatafile -Copyright © 2006 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - +#include #include "binarywriter.h" #include "statement.h" #include "textwriter.h" @@ -17,8 +11,7 @@ namespace DataFile { Writer::Writer(IO::Base &o): out(o), - mode(new TextWriter(out)), - binary(false) + mode(new TextWriter(out)) { } Writer::~Writer() @@ -36,21 +29,35 @@ void Writer::set_binary(bool b) if(b==binary) return; - binary=b; + binary = b; Statement st; if(binary) - st.keyword="__bin"; + st.keyword = "__bin"; else - st.keyword="__text"; + st.keyword = "__text"; mode->write(st); delete mode; if(binary) - mode=new BinaryWriter(out); + mode = new BinaryWriter(out); else - mode=new TextWriter(out); + mode = new TextWriter(out); +} + +void Writer::set_compressed() +{ + Statement st; + st.keyword = "__z"; + mode->write(st); + + out.set_compressed(); +} + +void Writer::set_float_precision(unsigned fp) +{ + mode->set_float_precision(fp); } } // namespace DataFile