Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
JKRFileCache.h
Go to the documentation of this file.
1#ifndef JKRFILECACHE_H
2#define JKRFILECACHE_H
3
5
6class JKRHeap;
7
13public:
15 public:
16 CCacheBlock(u32, u32, const void*);
18
19 public:
21 /* 0x10 */ u32 mReferenceCount;
22 /* 0x14 */ u32 mFileId;
23 /* 0x18 */ u32 mFileSize;
24 /* 0x1C */ void* mMemoryPtr;
25 };
26
27protected:
28 JKRFileCache(const char*, const char*);
29 virtual ~JKRFileCache();
30
31 CCacheBlock* findCacheBlock(const void*) const;
33 bool findFile(char*, const char*) const;
34 char* getDvdPathName(const char*) const;
35 void convStrLower(char*) const;
36
37public:
38 /* vt[04] */ virtual bool becomeCurrent(const char*); /* override */
39 /* vt[05] */ virtual void* getResource(const char*); /* override */
40 /* vt[06] */ virtual void* getResource(u32, const char*); /* override */
41 /* vt[07] */ virtual u32 readResource(void*, u32, const char*); /* override */
42 /* vt[08] */ virtual u32 readResource(void*, u32, u32, const char*); /* override */
43 /* vt[09] */ virtual void removeResourceAll(void); /* override */
44 /* vt[10] */ virtual bool removeResource(void*); /* override */
45 /* vt[11] */ virtual bool detachResource(void*); /* override */
46 /* vt[12] */ virtual u32 getResSize(const void*) const; /* override */
47 /* vt[13] */ virtual u32 countFile(const char*) const; /* override */
48 /* vt[14] */ virtual JKRFileFinder* getFirstFile(const char*) const; /* override */
49 /* vt[15] */ virtual void* getFsResource(const char*);
50 /* vt[16] */ virtual void* getNameResource(u32, const char*);
51 /* vt[17] */ virtual u32 readFsResource(void*, u32, const char*);
52 /* vt[18] */ virtual u32 readNameResource(void*, u32, u32, const char*);
53
54private:
55 /* 0x00 */ // vtable
56 /* 0x04 */ // JKRFileLoader
57 /* 0x38 */ JKRHeap* mParentHeap;
59 /* 0x48 */ char* mRootPath;
60 /* 0x4C */ char* mCurrentPath;
61 /* 0x50 */ char* mVolumePath;
62
63public:
64 static JKRFileCache* mount(const char*, JKRHeap*, const char*);
65};
66
67inline JKRFileCache* JKRMountDvdDrive(const char* path, JKRHeap* heap, const char* param_2) {
68 return JKRFileCache::mount(path, heap, param_2);
69}
70
71inline void JKRUnmountDvdDrive(JKRFileCache* filecache) {
72 filecache->unmount();
73}
74
75#endif /* JKRFILECACHE_H */
void JKRUnmountDvdDrive(JKRFileCache *filecache)
Definition JKRFileCache.h:71
JKRFileCache * JKRMountDvdDrive(const char *path, JKRHeap *heap, const char *param_2)
Definition JKRFileCache.h:67
Definition JKRFileCache.h:14
CCacheBlock(u32, u32, const void *)
Definition JKRFileCache.cpp:375
u32 mFileSize
Definition JKRFileCache.h:23
u32 mReferenceCount
Definition JKRFileCache.h:21
JSULink< CCacheBlock > mCacheBlockLink
Definition JKRFileCache.h:20
~CCacheBlock()
Definition JKRFileCache.h:17
void * mMemoryPtr
Definition JKRFileCache.h:24
u32 mFileId
Definition JKRFileCache.h:22
Definition JKRFileCache.h:12
virtual void * getFsResource(const char *)
Definition JKRFileCache.cpp:383
virtual void * getResource(const char *)
Definition JKRFileCache.cpp:113
virtual bool detachResource(void *)
Definition JKRFileCache.cpp:237
virtual u32 readResource(void *, u32, const char *)
Definition JKRFileCache.cpp:158
virtual JKRFileFinder * getFirstFile(const char *) const
Definition JKRFileCache.cpp:277
char * mCurrentPath
Definition JKRFileCache.h:60
virtual void * getNameResource(u32, const char *)
Definition JKRFileCache.cpp:387
virtual u32 countFile(const char *) const
Definition JKRFileCache.cpp:258
JKRHeap * mParentHeap
Definition JKRFileCache.h:57
virtual ~JKRFileCache()
Definition JKRFileCache.cpp:83
JSUList< CCacheBlock > mCacheBlockList
Definition JKRFileCache.h:58
static JKRFileCache * mount(const char *, JKRHeap *, const char *)
Definition JKRFileCache.cpp:12
char * mRootPath
Definition JKRFileCache.h:59
virtual void removeResourceAll(void)
Definition JKRFileCache.cpp:206
JKRFileCache(const char *, const char *)
Definition JKRFileCache.cpp:39
virtual bool becomeCurrent(const char *)
Definition JKRFileCache.cpp:95
virtual u32 getResSize(const void *) const
Definition JKRFileCache.cpp:249
char * mVolumePath
Definition JKRFileCache.h:61
virtual bool removeResource(void *)
Definition JKRFileCache.cpp:219
bool findFile(char *, const char *) const
Definition JKRFileCache.cpp:313
void convStrLower(char *) const
Definition JKRFileCache.cpp:369
virtual u32 readNameResource(void *, u32, u32, const char *)
Definition JKRFileCache.cpp:395
CCacheBlock * findCacheBlock(const void *) const
Definition JKRFileCache.cpp:291
char * getDvdPathName(const char *) const
Definition JKRFileCache.cpp:345
virtual u32 readFsResource(void *, u32, const char *)
Definition JKRFileCache.cpp:391
Definition JKRFileFinder.h:10
Definition JKRFileLoader.h:12
virtual void unmount(void)
Definition JKRFileLoader.cpp:20
Definition JKRHeap.h:20
Definition JSUList.h:96
unsigned long u32
Definition types.h:12
Definition d_a_npc_ks.cpp:47