@@ -11,63 +11,62 @@ static char GetOsSeparator ()
1111#endif
1212}
1313
14-
15- FileIOStreamAdapter::FileIOStreamAdapter (const File& file) :
16- file (file),
14+ BufferIOStreamAdapter::BufferIOStreamAdapter (const Buffer& buffer) :
15+ buffer (buffer),
1716 position (0 )
1817{
1918}
2019
21- FileIOStreamAdapter ::~FileIOStreamAdapter ()
20+ BufferIOStreamAdapter ::~BufferIOStreamAdapter ()
2221{
2322}
2423
25- size_t FileIOStreamAdapter ::Read (void * pvBuffer, size_t pSize, size_t pCount)
24+ size_t BufferIOStreamAdapter ::Read (void * pvBuffer, size_t pSize, size_t pCount)
2625{
2726 size_t remainingElemCount = (size_t ) (std::floor ((FileSize () - position) / pSize));
2827 size_t readableElemCount = std::min (remainingElemCount, pCount);
2928 if (readableElemCount == 0 ) {
3029 return 0 ;
3130 }
32- memcpy (pvBuffer, &file. content [position], readableElemCount * pSize);
31+ memcpy (pvBuffer, &buffer [position], readableElemCount * pSize);
3332 position += readableElemCount * pSize;
3433 return readableElemCount;
3534}
3635
37- size_t FileIOStreamAdapter ::Write (const void * pvBuffer, size_t pSize, size_t pCount)
36+ size_t BufferIOStreamAdapter ::Write (const void * pvBuffer, size_t pSize, size_t pCount)
3837{
3938 throw std::logic_error (" not implemented" );
4039}
4140
42- aiReturn FileIOStreamAdapter ::Seek (size_t pOffset, aiOrigin pOrigin)
41+ aiReturn BufferIOStreamAdapter ::Seek (size_t pOffset, aiOrigin pOrigin)
4342{
4443 switch (pOrigin) {
45- case aiOrigin_SET:
46- position = pOffset;
47- break ;
48- case aiOrigin_CUR:
49- position += pOffset;
50- break ;
51- case aiOrigin_END:
52- position = file. content .size () - pOffset;
53- break ;
54- default :
55- break ;
44+ case aiOrigin_SET:
45+ position = pOffset;
46+ break ;
47+ case aiOrigin_CUR:
48+ position += pOffset;
49+ break ;
50+ case aiOrigin_END:
51+ position = buffer .size () - pOffset;
52+ break ;
53+ default :
54+ break ;
5655 }
5756 return aiReturn::aiReturn_SUCCESS;
5857}
5958
60- size_t FileIOStreamAdapter ::Tell () const
59+ size_t BufferIOStreamAdapter ::Tell () const
6160{
6261 return position;
6362}
6463
65- size_t FileIOStreamAdapter ::FileSize () const
64+ size_t BufferIOStreamAdapter ::FileSize () const
6665{
67- return file. content .size ();
66+ return buffer .size ();
6867}
6968
70- void FileIOStreamAdapter ::Flush ()
69+ void BufferIOStreamAdapter ::Flush ()
7170{
7271
7372}
@@ -93,7 +92,7 @@ Assimp::IOStream* FileListIOSystemAdapter::Open (const char* pFile, const char*
9392 if (foundFile == nullptr ) {
9493 return nullptr ;
9594 }
96- return new FileIOStreamAdapter (* foundFile);
95+ return new BufferIOStreamAdapter ( foundFile-> content );
9796}
9897
9998void FileListIOSystemAdapter::Close (Assimp::IOStream* pFile)
0 commit comments