6 ///////////////////////////////////////////////////////////////////////////////
8 ///////////////////////////////////////////////////////////////////////////////
9 FileReader::FileReader(const char *path)
10 : io_(path, std::ios::binary), pos_(0), eof_(false)
14 FileReader::~FileReader()
18 unsigned int FileReader::read(char *buf, unsigned int size)
32 unsigned int FileReader::getPos()const
37 bool FileReader::isEnd()const
42 ///////////////////////////////////////////////////////////////////////////////
44 ///////////////////////////////////////////////////////////////////////////////
45 MemoryReader::MemoryReader(const char *buf, unsigned int size)
46 : buf_(buf), size_(size), pos_(0)
50 MemoryReader::~MemoryReader()
54 unsigned int MemoryReader::read(char *buf, unsigned int size)
59 std::copy(&buf_[pos_], &buf_[pos_+size], buf);
64 unsigned int MemoryReader::getPos()const
69 bool MemoryReader::isEnd()const
74 ///////////////////////////////////////////////////////////////////////////////
75 void readAll(const char *path, std::vector<char> &buf)
77 std::ifstream io(path, std::ios::binary);
81 io.seekg(0, std::fstream::end);
82 unsigned int eofPos = io.tellg();
84 io.seekg(0, std::fstream::beg);
85 unsigned int begPos = io.tellg();
86 unsigned int size = eofPos - begPos;
88 io.read(&buf[0], buf.size());