Files
tp/include/JSystem/JAudio2/JASResArcLoader.h
T

48 lines
1.2 KiB
C++
Raw Normal View History

2021-03-28 22:49:05 +02:00
#ifndef JASRESARCLOADER_H
#define JASRESARCLOADER_H
2023-08-10 03:57:49 -06:00
#include "JSystem/JKernel/JKRArchive.h"
#include <dolphin/os.h>
namespace JASResArcLoader {
2025-11-30 14:23:42 -08:00
size_t getResSize(JKRArchive const*, u16);
size_t getResMaxSize(JKRArchive const*);
static void loadResourceCallback(void*);
int loadResourceAsync(JKRArchive*, u16, u8*, u32, void (*)(u32, u32), u32);
2025-12-23 10:23:09 -08:00
// from pikmin2
typedef void (*LoadCallback)(u32, u32);
struct TLoadResInfo {
inline TLoadResInfo(JKRArchive* archive, u16 id, void* buf, u32 size)
: mArchive(archive)
, mID(id)
, mBuffer(buf)
, mBufferSize(size)
, mCallback(0)
, mCallbackArg(0)
, mQueue(0)
{
}
JKRArchive* mArchive; // _00
u16 mID; // _04
void* mBuffer; // _08
u32 mBufferSize; // _0C
LoadCallback mCallback; // _10
u32 mCallbackArg; // _14, arg to pass to mCallback along with readResource result
OSMessageQueue* mQueue; // _18
};
};
2023-08-10 03:57:49 -06:00
class JKRArchive;
enum ResArcMessage {
RESARCMSG_Error = -1,
RESARCMSG_Success = 0,
};
2021-03-28 22:49:05 +02:00
#endif /* JASRESARCLOADER_H */