// // Generated By: dol2asm // Translation Unit: JPAResourceManager // #include "JSystem/JParticle/JPAResourceManager.h" #include "JSystem/JParticle/JPADynamicsBlock.h" #include "JSystem/JParticle/JPAResource.h" #include "MSL_C.PPCEABI.bare.H/MSL_Common/Src/string.h" #include "dol2asm.h" #include "dolphin/types.h" struct JPAResourceLoader { /* 8027D8A0 */ JPAResourceLoader(u8 const*, JPAResourceManager*); }; /* 80273E10-80273E68 26E750 0058+00 0/0 2/2 0/0 .text __ct__18JPAResourceManagerFPCvP7JKRHeap */ JPAResourceManager::JPAResourceManager(void const* pData, JKRHeap* pHeap) { mpResArr = NULL; mpTexArr = NULL; mResMax = 0; mResNum = 0; mTexMax = 0; mTexNum = 0; mpHeap = pHeap; JPAResourceLoader loader((u8 const*)pData, this); } /* 80273E68-80273EA8 26E7A8 0040+00 1/1 1/1 0/0 .text getResource__18JPAResourceManagerCFUs */ JPAResource* JPAResourceManager::getResource(u16 usrIdx) const { for (u16 i = 0; i < mResNum; i++) if (mpResArr[i]->getUsrIdx() == usrIdx) return mpResArr[i]; return NULL; } /* 80273EA8-80273EEC 26E7E8 0044+00 0/0 2/2 0/0 .text * checkUserIndexDuplication__18JPAResourceManagerCFUs */ bool JPAResourceManager::checkUserIndexDuplication(u16 usrIdx) const { for (s32 i = 0; i < mResNum; i++) if (mpResArr[i]->getUsrIdx() == usrIdx) return true; return false; } /* 80273EEC-80273F8C 26E82C 00A0+00 0/0 2/2 0/0 .text * swapTexture__18JPAResourceManagerFPC7ResTIMGPCc */ const ResTIMG* JPAResourceManager::swapTexture(ResTIMG const* img, char const* swapName) { const ResTIMG* ret = NULL; for (s32 i = 0; i < mTexNum; i++) { if (strcmp(swapName, mpTexArr[i]->getName()) == 0) { JUTTexture* tex = mpTexArr[i]->getJUTTexture(); ret = tex->getTexInfo(); tex->storeTIMG(img, (u8)0); break; } } return ret; } /* 80273F8C-80273FAC 26E8CC 0020+00 0/0 1/1 0/0 .text * registRes__18JPAResourceManagerFP11JPAResource */ void JPAResourceManager::registRes(JPAResource* res) { mpResArr[mResNum] = res; mResNum++; } /* 80273FAC-80273FCC 26E8EC 0020+00 0/0 1/1 0/0 .text * registTex__18JPAResourceManagerFP10JPATexture */ void JPAResourceManager::registTex(JPATexture* tex) { mpTexArr[mTexNum] = tex; mTexNum++; } /* 80273FCC-80274010 26E90C 0044+00 0/0 6/6 0/0 .text getResUserWork__18JPAResourceManagerCFUs */ u32 JPAResourceManager::getResUserWork(u16 usrIdx) const { u32 ret = 0; JPAResource* res = getResource(usrIdx); if (res != NULL) ret = res->getDyn()->getResUserWork(); return ret; }