43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
/*
|
|
* This file is part of the Owl Positioning System (OwlPS) project.
|
|
* It is subject to the copyright notice and license terms in the
|
|
* COPYRIGHT.t2t file found in the top-level directory of this
|
|
* distribution and at
|
|
* http://code.lm7.fr/p/owlps/source/tree/master/COPYRIGHT.t2t
|
|
* No part of the OwlPS Project, including this file, may be copied,
|
|
* modified, propagated, or distributed except according to the terms
|
|
* contained in the COPYRIGHT.t2t file; the COPYRIGHT.t2t file must be
|
|
* distributed along with this file, either separately or by replacing
|
|
* this notice by the COPYRIGHT.t2t file's contents.
|
|
*/
|
|
|
|
|
|
#ifndef _OWLPS_POSITIONING_TEXTFILEWRITER_HH_
|
|
#define _OWLPS_POSITIONING_TEXTFILEWRITER_HH_
|
|
|
|
#include <string>
|
|
#include <fstream>
|
|
|
|
/// Writes text to a file
|
|
/**
|
|
* If the file name is a dash ('-'), the standard output is used.
|
|
*/
|
|
class TextFileWriter
|
|
{
|
|
private:
|
|
/// Name of the output file
|
|
std::string file_name ;
|
|
/// Stream associated with the file
|
|
std::ofstream file ;
|
|
/// Original rdbuf of the stream
|
|
std::streambuf *file_buf ;
|
|
|
|
public:
|
|
TextFileWriter(const std::string &_file_name) ;
|
|
virtual ~TextFileWriter(void) ;
|
|
|
|
bool write_text(const std::string &text) ;
|
|
} ;
|
|
|
|
#endif // _OWLPS_POSITIONING_TEXTFILEWRITER_HH_
|