mirror of
https://github.com/yuzu-emu/yuzu-android.git
synced 2025-06-13 03:28:02 -05:00
FS.Archive: Clean up treatment of archives and their handles
- Refactor FS::Archive internals to make Archive creation and lifetime management clearer. - Remove the "Archive as a File" hack. - Implement 64-bit Archive handles.
This commit is contained in:
@ -220,36 +220,6 @@ public:
|
||||
* @return Opened directory, or nullptr
|
||||
*/
|
||||
virtual std::unique_ptr<DirectoryBackend> OpenDirectory(const Path& path) const = 0;
|
||||
|
||||
/**
|
||||
* Read data from the archive
|
||||
* @param offset Offset in bytes to start reading data from
|
||||
* @param length Length in bytes of data to read from archive
|
||||
* @param buffer Buffer to read data into
|
||||
* @return Number of bytes read
|
||||
*/
|
||||
virtual size_t Read(const u64 offset, const u32 length, u8* buffer) const = 0;
|
||||
|
||||
/**
|
||||
* Write data to the archive
|
||||
* @param offset Offset in bytes to start writing data to
|
||||
* @param length Length in bytes of data to write to archive
|
||||
* @param buffer Buffer to write data from
|
||||
* @param flush The flush parameters (0 == do not flush)
|
||||
* @return Number of bytes written
|
||||
*/
|
||||
virtual size_t Write(const u64 offset, const u32 length, const u32 flush, u8* buffer) = 0;
|
||||
|
||||
/**
|
||||
* Get the size of the archive in bytes
|
||||
* @return Size of the archive in bytes
|
||||
*/
|
||||
virtual size_t GetSize() const = 0;
|
||||
|
||||
/**
|
||||
* Set the size of the archive in bytes
|
||||
*/
|
||||
virtual void SetSize(const u64 size) = 0;
|
||||
};
|
||||
|
||||
} // namespace FileSys
|
||||
|
Reference in New Issue
Block a user