// // Generated By: dol2asm // Translation Unit: JASCallback // #include "JSystem/JAudio2/JASCallback.h" #include "JSystem/JAudio2/JASCriticalSection.h" // // Types: // // // Forward References: // // // External References: // // // Declarations: // /* 8028FFA8-80290030 28A8E8 0088+00 0/0 2/2 0/0 .text regist__14JASCallbackMgrFPFPv_lPv */ bool JASCallbackMgr::regist(JASCallback* function, void* argument) { JASCriticalSection criticalSection; for (int i = 0; i < 0x20; i++) { if (mCallbacks[i].mFunction == NULL) { mCallbacks[i].mFunction = function; mCallbacks[i].mArgument = argument; return true; } } return false; } /* 80290030-802900C4 28A970 0094+00 0/0 1/1 0/0 .text reject__14JASCallbackMgrFPFPv_lPv */ int JASCallbackMgr::reject(JASCallback* function, void* argument) { int rejectNum = 0; JASCriticalSection criticalSection; for (int i = 0; i < 0x20; i++) { if (mCallbacks[i].mFunction == function && mCallbacks[i].mArgument == argument) { mCallbacks[i].mFunction = NULL; mCallbacks[i].mArgument = NULL; rejectNum++; } } return rejectNum; } /* 802900C4-80290140 28AA04 007C+00 0/0 3/3 0/0 .text callback__14JASCallbackMgrFv */ void JASCallbackMgr::callback() { for (int i = 0; i < 0x20; i++) { if (mCallbacks[i].mFunction && mCallbacks[i].mFunction(mCallbacks[i].mArgument) < 0) { mCallbacks[i].mFunction = NULL; mCallbacks[i].mArgument = NULL; } } }