mirror of
https://github.com/moses-smt/mosesdecoder.git
synced 2024-09-11 11:25:40 +03:00
This change might be useful to avoid duplicating the names. The reason is that although MERT programs are standalone applications, some header files such as data.h and point.h have common guard macro names like "DATA_H" and "POINT_H", and this is not good naming conventions when you want to include external headers. Some files actually include headers in Moses and KenLM's util.
35 lines
653 B
C++
35 lines
653 B
C++
#ifndef MERT_FILE_STREAM_H_
|
|
#define MERT_FILE_STREAM_H_
|
|
|
|
#include <fstream>
|
|
#include <streambuf>
|
|
#include <string>
|
|
|
|
class inputfilestream : public std::istream
|
|
{
|
|
protected:
|
|
std::streambuf *m_streambuf;
|
|
bool is_good;
|
|
|
|
public:
|
|
explicit inputfilestream(const std::string &filePath);
|
|
~inputfilestream();
|
|
bool good() const { return is_good; }
|
|
void close();
|
|
};
|
|
|
|
class outputfilestream : public std::ostream
|
|
{
|
|
protected:
|
|
std::streambuf *m_streambuf;
|
|
bool is_good;
|
|
|
|
public:
|
|
explicit outputfilestream(const std::string &filePath);
|
|
~outputfilestream();
|
|
bool good() const { return is_good; }
|
|
void close();
|
|
};
|
|
|
|
#endif // MERT_FILE_STREAM_H_
|