22PandaIOStream(std::istream &stream) : _istream(stream) {
31 std::streampos cur = _istream.tellg();
32 _istream.seekg(0, ios::end);
33 std::streampos end = _istream.tellg();
50Read(
void *buffer,
size_t size,
size_t count) {
51 _istream.read((
char *)buffer, size * count);
55 _istream.clear(ios::eofbit);
58 return _istream.gcount() / size;
65Seek(
size_t offset, aiOrigin origin) {
68 _istream.seekg(offset, ios::beg);
72 _istream.seekg(offset, ios::cur);
76 _istream.seekg(offset, ios::end);
81 nassertr(
false, AI_FAILURE);
85 if (_istream.good()) {
97 return _istream.tellg();
104Write(
const void *buffer,
size_t size,
size_t count) {
size_t FileSize() const
Returns the size of this file.
size_t Tell() const
See ftell.
size_t Read(void *pvBuffer, size_t pSize, size_t pCount)
See fread.
aiReturn Seek(size_t pOffset, aiOrigin pOrigin)
See fseek.
size_t Write(const void *buffer, size_t size, size_t count)
See fwrite.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.