Files
tp/libs/JSystem/JAudio2/JASCallback.cpp
T

64 lines
1.4 KiB
C++
Raw Normal View History

2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
// Generated By: dol2asm
// Translation Unit: JASCallback
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
2021-04-01 02:07:58 +02:00
#include "JSystem/JAudio2/JASCallback.h"
#include "JSystem/JAudio2/JASCriticalSection.h"
2021-03-28 22:49:05 +02:00
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
// Types:
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
// Forward References:
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
// External References:
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
// Declarations:
2021-04-01 02:07:58 +02:00
//
2021-03-28 22:49:05 +02:00
2021-04-06 18:00:35 +02:00
/* 8028FFA8-80290030 28A8E8 0088+00 0/0 2/2 0/0 .text regist__14JASCallbackMgrFPFPv_lPv
*/
2023-08-01 10:17:21 +03:00
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;
2021-03-28 22:49:05 +02:00
}
2021-04-06 18:00:35 +02:00
/* 80290030-802900C4 28A970 0094+00 0/0 1/1 0/0 .text reject__14JASCallbackMgrFPFPv_lPv
*/
2023-08-01 10:17:21 +03:00
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;
2021-03-28 22:49:05 +02:00
}
2021-04-06 18:00:35 +02:00
/* 802900C4-80290140 28AA04 007C+00 0/0 3/3 0/0 .text callback__14JASCallbackMgrFv */
2023-08-01 10:17:21 +03:00
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;
}
}
2021-03-28 22:49:05 +02:00
}