72 bool isOpen()
const {
return file_ !=
nullptr; }
82 void seek(std::streamoff pos, std::ios::seekdir dir);
87 std::streamoff tell();
92 bool eof()
const {
return feof(file_) != 0; }
100 size_t read(
void* buffer,
size_t size,
size_t pos)
const;
107 size_t read(
void* buffer,
size_t size)
const;
139 std::string getFilePath()
const;
146 void setBorrowedFile(FILE* file);
153 void setOwnedFile(FILE* file);
159 std::vector<char>& getLineBuffer() {
return lineBuffer_; }
161 FILE* file_{
nullptr};
162 bool fileBorrowed_{
false};
163 std::vector<char> lineBuffer_;