class EE::System::IOStreamPak¶
Overview¶
An implementation for a zip file steam. More…
#include <iostreampak.hpp> class IOStreamPak: public EE::System::IOStream { public: // construction IOStreamPak(Pak* pack, const std::string& path, bool writeMode = false); virtual ~IOStreamPak(); // methods static IOStreamPak* New(Pak* pack, const std::string& path, bool writeMode = false); virtual ios_size read(char* data, ios_size size); virtual ios_size write(const char* data, ios_size size); virtual ios_size seek(ios_size position); virtual ios_size tell(); virtual ios_size getSize(); virtual bool isOpen(); };
Inherited Members¶
public: // methods virtual ios_size read(char* data, ios_size size) = 0; virtual ios_size write(const char* data, ios_size size) = 0; virtual ios_size seek(ios_size position) = 0; virtual ios_size tell() = 0; virtual ios_size getSize() = 0; virtual bool isOpen() = 0;
Detailed Documentation¶
An implementation for a zip file steam.
Construction¶
IOStreamPak(Pak* pack, const std::string& path, bool writeMode = false)
Open a file from a zip file.
Parameters:
pack |
Pack to open from path |
path |
Path of the file in the pack file |
writeMode |
Set true if the PAK is in write mode |
Methods¶
virtual ios_size read(char* data, ios_size size)
Read data from the stream.
Parameters:
data |
Buffer where to copy the read data |
size |
Desired number of bytes to read |
Returns:
The number of bytes actually read
virtual ios_size write(const char* data, ios_size size)
Write data to the virtual file.
Parameters:
data |
Data to write in the file |
size |
Size of the data that needs to be writed |
virtual ios_size seek(ios_size position)
Change the current reading position.
Parameters:
position |
The position to seek to, from the beginning |
Returns:
The position actually sought to.
virtual ios_size tell()
Get the current reading position in the stream.
Returns:
The current position, or -1 on error.
virtual ios_size getSize()
Return the size of the stream.
Returns:
The total number of bytes available in the stream
virtual bool isOpen()
Returns:
If the virtual stream file is open