MyGUI  3.4.1
MyGUI_DataMemoryStream.h
Go to the documentation of this file.
1 /*
2  * This source file is part of MyGUI. For the latest info, see http://mygui.info/
3  * Distributed under the MIT License
4  * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
5  */
6 
7 #ifndef MYGUI_DATA_MEMORY_STREAM_H_
8 #define MYGUI_DATA_MEMORY_STREAM_H_
9 
10 #include "MyGUI_Prerequest.h"
11 #include "MyGUI_IDataStream.h"
12 
13 namespace MyGUI
14 {
15 
17  public IDataStream
18  {
19  public:
21  DataMemoryStream(unsigned char* _data, size_t _size);
22  ~DataMemoryStream() override;
23 
24  bool eof() override;
25  size_t size() override;
26  void readline(std::string& _source, Char _delim) override;
27  size_t read(void* _buf, size_t _count) override;
28 
29  private:
30  void prepareStream();
31 
32  protected:
33  unsigned char* mData;
34  size_t mSize;
35  std::stringstream* mStream;
36  };
37 
38 } // namespace MyGUI
39 
40 #endif // MYGUI_DATA_MEMORY_STREAM_H_
#define MYGUI_EXPORT
unsigned int Char
Definition: MyGUI_Types.h:49