mirror of
https://github.com/izzy2lost/ppsspp.git
synced 2026-03-10 12:43:04 -07:00
Add uncached flag for file loader reads.
This allows us to indicate that a read need not be cached.
This commit is contained in:
@@ -25,25 +25,25 @@
|
||||
class CachingFileLoader : public FileLoader {
|
||||
public:
|
||||
CachingFileLoader(FileLoader *backend);
|
||||
virtual ~CachingFileLoader() override;
|
||||
~CachingFileLoader() override;
|
||||
|
||||
virtual bool Exists() override;
|
||||
virtual bool ExistsFast() override;
|
||||
virtual bool IsDirectory() override;
|
||||
virtual s64 FileSize() override;
|
||||
virtual std::string Path() const override;
|
||||
bool Exists() override;
|
||||
bool ExistsFast() override;
|
||||
bool IsDirectory() override;
|
||||
s64 FileSize() override;
|
||||
std::string Path() const override;
|
||||
|
||||
virtual void Seek(s64 absolutePos) override;
|
||||
virtual size_t Read(size_t bytes, size_t count, void *data) override {
|
||||
return ReadAt(filepos_, bytes, count, data);
|
||||
void Seek(s64 absolutePos) override;
|
||||
size_t Read(size_t bytes, size_t count, void *data, Flags flags = Flags::NONE) override {
|
||||
return ReadAt(filepos_, bytes, count, data, flags);
|
||||
}
|
||||
virtual size_t Read(size_t bytes, void *data) override {
|
||||
return ReadAt(filepos_, bytes, data);
|
||||
size_t Read(size_t bytes, void *data, Flags flags = Flags::NONE) override {
|
||||
return ReadAt(filepos_, bytes, data, flags);
|
||||
}
|
||||
virtual size_t ReadAt(s64 absolutePos, size_t bytes, size_t count, void *data) override {
|
||||
return ReadAt(absolutePos, bytes * count, data) / bytes;
|
||||
size_t ReadAt(s64 absolutePos, size_t bytes, size_t count, void *data, Flags flags = Flags::NONE) override {
|
||||
return ReadAt(absolutePos, bytes * count, data, flags) / bytes;
|
||||
}
|
||||
virtual size_t ReadAt(s64 absolutePos, size_t bytes, void *data) override;
|
||||
size_t ReadAt(s64 absolutePos, size_t bytes, void *data, Flags flags = Flags::NONE) override;
|
||||
|
||||
private:
|
||||
void Prepare();
|
||||
@@ -51,7 +51,7 @@ private:
|
||||
void ShutdownCache();
|
||||
size_t ReadFromCache(s64 pos, size_t bytes, void *data);
|
||||
// Guaranteed to read at least one block into the cache.
|
||||
void SaveIntoCache(s64 pos, size_t bytes, bool readingAhead = false);
|
||||
void SaveIntoCache(s64 pos, size_t bytes, Flags flags, bool readingAhead = false);
|
||||
bool MakeCacheSpaceFor(size_t blocks, bool readingAhead);
|
||||
void StartReadAhead(s64 pos);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user