00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef PANDAIOSTREAM_H
00016 #define PANDAIOSTREAM_H
00017
00018 #include "config_assimp.h"
00019
00020 #include "IOStream.h"
00021
00022 class PandaIOSystem;
00023
00024
00025
00026
00027
00028
00029
00030 class PandaIOStream : public Assimp::IOStream {
00031 public:
00032 PandaIOStream(istream &stream);
00033 virtual ~PandaIOStream() {};
00034
00035 size_t FileSize() const;
00036 void Flush();
00037 size_t Read(void *pvBuffer, size_t pSize, size_t pCount);
00038 aiReturn Seek(size_t pOffset, aiOrigin pOrigin);
00039 size_t Tell() const;
00040 size_t Write(const void *buffer, size_t size, size_t count);
00041
00042 private:
00043 istream &_istream;
00044
00045 friend class PandaIOSystem;
00046 };
00047
00048 #endif