Improve d_particle destructors

This commit is contained in:
LagoLunatic
2023-10-03 15:27:53 -04:00
parent 7824fb54c0
commit 3ce4a6f388
7 changed files with 243 additions and 110 deletions
+2
View File
@@ -11,6 +11,8 @@ class JPAExtraShapeArc;
class JPASweepShapeArc;
class JPAExTexShapeArc;
class JPATextureResource;
class JPABaseEmitter;
class JPABaseParticle;
class JPADraw;
class JPADrawExecEmitterVisitor;
+12 -1
View File
@@ -36,6 +36,17 @@ public:
virtual void draw(JPABaseEmitter*);
};
template<typename T, typename U>
class JPACallBackBase2 {
public:
JPACallBackBase2() {}
virtual ~JPACallBackBase2() {}
virtual void init(JPABaseEmitter*, JPABaseParticle*);
virtual void execute(JPABaseEmitter*, JPABaseParticle*);
virtual void draw(JPABaseEmitter*, JPABaseParticle*);
};
class JPABaseEmitter {
public:
typedef void (JPABaseEmitter::*VolumeFunc)();
@@ -128,7 +139,7 @@ public:
/* 0x194 */ JSUPtrList* mpPtclVacList;
/* 0x198 */ JPADataBlockLinkInfo* mpDataLinkInfo;
/* 0x19C */ JPACallBackBase<JPABaseEmitter>* mpEmitterCallBack;
/* 0x1A0 */ JPACallBackBase2* mpParticleCallBack;
/* 0x1A0 */ JPACallBackBase2<JPABaseEmitter,JPABaseParticle>* mpParticleCallBack;
/* 0x1A4 */ JMath::TRandom_fast_ mRandomSeed;
/* 0x1A8 */ Mtx mGlobalRotation;
/* 0x1D8 */ JGeometry::TVec3<f32> mGlobalScale;
+2 -2
View File
@@ -2,6 +2,7 @@
#define JPAPARTICLE_H
#include "JSystem/JSupport/JSUList.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "SSystem/SComponent/c_xyz.h"
#include "dolphin/gx/GXStruct.h"
@@ -13,7 +14,6 @@ class JPAEmitterManager;
class JPAParticleCallBack;
class JPAResourceManager;
struct JPAEmitterWorkData;
struct JPACallBackBase2;
class JPABaseParticle {
public:
@@ -58,7 +58,7 @@ public:
/* 0xC2 */ s16 mRotateSpeed;
/* 0xC4 */ u8 field_0xC4[0xC6 - 0xC4];
/* 0xC6 */ u16 mTexIdx;
/* 0xC8 */ JPACallBackBase2* mpCallBack2;
/* 0xC8 */ JPACallBackBase2<JPABaseEmitter,JPABaseParticle>* mpCallBack2;
/* 0xCC */ u32 mFlags;
};
-5
View File
@@ -97,11 +97,6 @@ public:
/* 0x0 */ u8 field_0x0[0x28];
};
class dPa_cutTurnEcallBack_c {
public:
/* 0x0 */ u8 field_0x0[0x10];
};
class daPy_waterDropEcallBack_c {
public:
void execute(JPABaseEmitter*);
+136 -12
View File
@@ -2,10 +2,12 @@
#define D_PARTICLE
#include "JSystem/J3DGraphBase/J3DVertex.h"
#include "JSystem/J3DGraphAnimator/J3DAnimation.h"
#include "JSystem/JGeometry.h"
#include "JSystem/JParticle/JPAParticle.h"
#include "JSystem/JParticle/JPAEmitter.h"
#include "f_pc/f_pc_node.h"
#include "m_Do/m_Do_ext.h"
class mDoDvdThd_toMainRam_c;
class dPa_levelEcallBack;
@@ -20,8 +22,8 @@ struct csXyz;
class dPa_simpleData_c {
public:
~dPa_simpleData_c();
dPa_simpleData_c();
~dPa_simpleData_c() {}
/* 0x00 */ Vec mPos;
/* 0x0C */ GXColor mPrmColor;
@@ -32,12 +34,13 @@ public:
class dPa_levelEcallBack : public JPACallBackBase<JPABaseEmitter*> {
public:
virtual ~dPa_levelEcallBack() {}
virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8) {}
};
class dPa_followEcallBack : public dPa_levelEcallBack {
public:
dPa_followEcallBack(u8=0, u8=0);
virtual ~dPa_followEcallBack();
virtual ~dPa_followEcallBack() {}
virtual void execute(JPABaseEmitter*);
virtual void draw(JPABaseEmitter*);
@@ -60,8 +63,14 @@ STATIC_ASSERT(sizeof(dPa_followEcallBack) == 0x14);
class dPa_smokeEcallBack : public dPa_followEcallBack {
public:
dPa_smokeEcallBack(u8=1);
dPa_smokeEcallBack(u8, u8, u8, u8);
dPa_smokeEcallBack(const _GXColor&, dKy_tevstr_c*, u8);
virtual ~dPa_smokeEcallBack() {}
virtual void draw(JPABaseEmitter*);
virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
virtual void end();
/* 0x14 */ s8 field_0x14;
/* 0x15 */ u8 field_0x15;
/* 0x16 */ _GXColor field_0x16;
@@ -71,10 +80,10 @@ public:
STATIC_ASSERT(sizeof(dPa_smokeEcallBack) == 0x20);
class dPa_simpleEcallBack {
class dPa_simpleEcallBack : public JPACallBackBase<JPABaseEmitter*> {
public:
dPa_simpleEcallBack();
~dPa_simpleEcallBack();
virtual ~dPa_simpleEcallBack() {}
void executeAfter(JPABaseEmitter*);
void draw(JPABaseEmitter*);
@@ -82,7 +91,6 @@ public:
void createEmitter(JPAEmitterManager*);
void set(cXyz const*, u8, GXColor const&, GXColor const&, int);
/* 0x000 */ void* vtbl;
/* 0x004 */ JPABaseEmitter* mpBaseEmitter;
/* 0x008 */ u16 mResID;
/* 0x00A */ u8 mGrpID;
@@ -99,7 +107,7 @@ public:
void executeAfter(JPABaseEmitter*);
void draw(JPABaseEmitter*);
~dPa_waveEcallBack();
virtual ~dPa_waveEcallBack() {}
/* 0x04 */ s16 mState;
/* 0x06 */ s16 mFadeTimer;
@@ -111,7 +119,7 @@ public:
/* 0x1C */ cXyz mCollapsePos[2];
/* 0x34 */ cXyz* mpPos;
/* 0x38 */ csXyz* mpRot;
/* 0x3C */ cXyz mRotMtx[3];
// /* 0x3C */ cXyz mRotMtx[3];
/* 0x60 */ JPABaseEmitter* mpBaseEmitter;
};
@@ -121,7 +129,7 @@ public:
void remove();
void execute(JPABaseEmitter*);
~dPa_splashEcallBack();
virtual ~dPa_splashEcallBack() {}
/* 0x04 */ s16 mState;
/* 0x08 */ f32 mScaleTimer;
@@ -139,12 +147,12 @@ public:
void execute(JPABaseEmitter*);
void draw(JPABaseEmitter*);
~dPa_trackEcallBack();
virtual ~dPa_trackEcallBack() {}
/* 0x04 */ s16 mState;
/* 0x08 */ f32 mBaseY;
/* 0x0C */ f32 mMinY;
/* 0x10 */ cXyz mPos[3];
// /* 0x10 */ cXyz mPos[3];
/* 0x34 */ cXyz* mpPos;
/* 0x38 */ csXyz* mpRot;
/* 0x3C */ f32 mExTransY;
@@ -157,7 +165,7 @@ public:
class dPa_rippleEcallBack : public dPa_levelEcallBack {
public:
dPa_rippleEcallBack() { mpBaseEmitter = NULL; }
~dPa_rippleEcallBack();
virtual ~dPa_rippleEcallBack() {}
void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
void end();
@@ -170,6 +178,122 @@ public:
/* 0x10 */ f32 mRate;
};
class dPa_modelEmitter_c {
public:
u8 temp[0xC];
dPa_modelEmitter_c();
virtual ~dPa_modelEmitter_c() {}
};
class JKRSolidHeap;
class dPa_J3DmodelEmitter_c : public dPa_modelEmitter_c {
public:
u8 temp2[4];
JKRSolidHeap* mpHeap;
dPa_J3DmodelEmitter_c(JPABaseEmitter*, J3DModelData*, dKy_tevstr_c&, J3DAnmTexPattern*, unsigned short, int);
virtual ~dPa_J3DmodelEmitter_c();
virtual void draw();
};
class dPa_J3Dmodel_c {
public:
dPa_J3Dmodel_c();
};
class dPa_smokePcallBack : public JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*> {
public:
dPa_smokePcallBack();
virtual ~dPa_smokePcallBack() {}
virtual void execute(JPABaseEmitter*, JPABaseParticle*);
virtual void draw(JPABaseEmitter*, JPABaseParticle*);
};
class dPa_selectTexEcallBack : public dPa_levelEcallBack {
public:
dPa_selectTexEcallBack();
virtual ~dPa_selectTexEcallBack() {}
virtual void draw(JPABaseEmitter*);
virtual void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
};
class dPa_windPcallBack : JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*> {
public:
dPa_windPcallBack();
virtual ~dPa_windPcallBack() {}
virtual void execute(JPABaseEmitter*, JPABaseParticle*);
};
class dPa_singleRippleEcallBack : public dPa_levelEcallBack {
public:
dPa_singleRippleEcallBack();
virtual ~dPa_singleRippleEcallBack() {}
virtual void execute(JPABaseEmitter*);
virtual void draw(JPABaseEmitter*);
virtual void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
};
class dPa_ripplePcallBack : JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*> {
public:
dPa_ripplePcallBack();
virtual ~dPa_ripplePcallBack() {}
virtual void execute(JPABaseEmitter*, JPABaseParticle*);
virtual void draw(JPABaseEmitter*, JPABaseParticle*);
};
class dPa_cutTurnEcallBack_c : public dPa_levelEcallBack {
public:
dPa_cutTurnEcallBack_c();
virtual ~dPa_cutTurnEcallBack_c() {}
virtual void executeAfter(JPABaseEmitter*);
virtual void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
void end();
};
class dPa_stripesEcallBack : public dPa_levelEcallBack {
public:
dPa_stripesEcallBack();
virtual ~dPa_stripesEcallBack() {}
virtual void draw(JPABaseEmitter*);
virtual void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
};
class dPa_kageroEcallBack : public JPACallBackBase<JPABaseEmitter*> {
public:
dPa_kageroEcallBack();
virtual ~dPa_kageroEcallBack() {}
virtual void draw(JPABaseEmitter*);
};
class dPa_bombSmokeEcallBack : public dPa_levelEcallBack {
public:
dPa_bombSmokeEcallBack();
virtual ~dPa_bombSmokeEcallBack() {}
virtual void execute(JPABaseEmitter*);
virtual void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
};
class dPa_setColorEcallBack : public dPa_levelEcallBack {
public:
dPa_setColorEcallBack();
virtual ~dPa_setColorEcallBack() {}
virtual void draw(JPABaseEmitter*);
virtual void setup(JPABaseEmitter*, const cXyz*, const csXyz*, s8);
};
class dPa_modelControl_c {
public:
dPa_modelControl_c(J3DModelData*);
@@ -209,7 +333,7 @@ public:
/* 0x78 */ void* field_0x78;
/* 0x7C */ void* field_0x7c;
/* 0x80 */ void* field_0x80;
/* 0x84 */ J3DVertexData mVertexData;
// /* 0x84 */ J3DVertexData mVertexData;
};
class dPa_control_c {
-3
View File
@@ -1304,6 +1304,3 @@ extern actor_process_profile_definition g_profile_ARROW = {
/* Group */ fopAc_ACTOR_e,
/* CullType */ fopAc_CULLBOX_CUSTOM_e,
};
// Needed for the .data section to match.
static u8 dummy3[0x3C] = {};
+91 -87
View File
@@ -3,7 +3,7 @@
// Translation Unit: d_particle.cpp
//
#include "d_particle.h"
#include "d/d_particle.h"
#include "dolphin/types.h"
/* 8007A4D8-8007A514 .text __ct__18dPa_modelEmitter_cFv */
@@ -16,14 +16,16 @@ dPa_J3DmodelEmitter_c::dPa_J3DmodelEmitter_c(JPABaseEmitter*, J3DModelData*, dKy
/* Nonmatching */
}
/* 8007A804-8007A84C .text __dt__18dPa_modelEmitter_cFv */
dPa_modelEmitter_c::~dPa_modelEmitter_c() {
/* Nonmatching */
}
// /* 8007A804-8007A84C .text __dt__18dPa_modelEmitter_cFv */
// dPa_modelEmitter_c::~dPa_modelEmitter_c() {
// /* Nonmatching */
// }
/* 8007A84C-8007A8C8 .text __dt__21dPa_J3DmodelEmitter_cFv */
dPa_J3DmodelEmitter_c::~dPa_J3DmodelEmitter_c() {
/* Nonmatching */
dPa_J3DmodelEmitter_c::~dPa_J3DmodelEmitter_c() {
if (mpHeap) {
mDoExt_destroySolidHeap(mpHeap);
}
}
/* 8007A8C8-8007ADC4 .text draw__21dPa_J3DmodelEmitter_cFv */
@@ -43,7 +45,13 @@ dPa_J3Dmodel_c::dPa_J3Dmodel_c() {
/* 8007AED8-8007AF64 .text __dt__18dPa_modelControl_cFv */
dPa_modelControl_c::~dPa_modelControl_c() {
/* Nonmatching */
node_class* node = parent.mpHead;
while (node) {
node_class* nextNode = node->mpNextNode;
cLs_SingleCut(node);
// delete node;
node = nextNode;
}
}
/* 8007AF64-8007B074 .text newModel__18dPa_modelControl_cFP12J3DModelData */
@@ -86,10 +94,10 @@ dPa_smokeEcallBack::dPa_smokeEcallBack(unsigned char) {
/* Nonmatching */
}
/* 8007B444-8007B4B0 .text __dt__19dPa_followEcallBackFv */
dPa_followEcallBack::~dPa_followEcallBack() {
/* Nonmatching */
}
// /* 8007B444-8007B4B0 .text __dt__19dPa_followEcallBackFv */
// dPa_followEcallBack::~dPa_followEcallBack() {
// /* Nonmatching */
// }
/* 8007B4B0-8007B558 .text __ct__18dPa_smokeEcallBackFUcUcUcUc */
dPa_smokeEcallBack::dPa_smokeEcallBack(unsigned char, unsigned char, unsigned char, unsigned char) {
@@ -106,15 +114,15 @@ void dPa_smokeEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signe
/* Nonmatching */
}
/* 8007B698-8007B6F4 .text __dt__18dPa_smokePcallBackFv */
dPa_smokePcallBack::~dPa_smokePcallBack() {
/* Nonmatching */
}
// /* 8007B698-8007B6F4 .text __dt__18dPa_smokePcallBackFv */
// dPa_smokePcallBack::~dPa_smokePcallBack() {
// /* Nonmatching */
// }
/* 8007B6F4-8007B73C .text __dt__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>Fv */
JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::~JPACallBackBase2() {
/* Nonmatching */
}
// /* 8007B6F4-8007B73C .text __dt__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>Fv */
// JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::~JPACallBackBase2() {
// /* Nonmatching */
// }
/* 8007B73C-8007B804 .text initiateLighting__FR11_GXColorS10R8_GXColorR8_GXColor */
void initiateLighting(_GXColorS10&, _GXColor&, _GXColor&) {
@@ -158,13 +166,14 @@ void dPa_selectTexEcallBack::draw(JPABaseEmitter*) {
/* 8007C3B0-8007C420 .text __ct__19dPa_simpleEcallBackFv */
dPa_simpleEcallBack::dPa_simpleEcallBack() {
/* Nonmatching */
mpBaseEmitter = NULL;
mCount = 0;
}
/* 8007C420-8007C45C .text __dt__16dPa_simpleData_cFv */
dPa_simpleData_c::~dPa_simpleData_c() {
/* Nonmatching */
}
// /* 8007C420-8007C45C .text __dt__16dPa_simpleData_cFv */
// dPa_simpleData_c::~dPa_simpleData_c() {
// /* Nonmatching */
// }
/* 8007C45C-8007C460 .text __ct__16dPa_simpleData_cFv */
dPa_simpleData_c::dPa_simpleData_c() {
@@ -176,10 +185,10 @@ void dPa_simpleEcallBack::executeAfter(JPABaseEmitter*) {
/* Nonmatching */
}
/* 8007C618-8007C674 .text __dt__17dPa_windPcallBackFv */
dPa_windPcallBack::~dPa_windPcallBack() {
/* Nonmatching */
}
// /* 8007C618-8007C674 .text __dt__17dPa_windPcallBackFv */
// dPa_windPcallBack::~dPa_windPcallBack() {
// /* Nonmatching */
// }
/* 8007C674-8007C6EC .text draw__19dPa_simpleEcallBackFP14JPABaseEmitter */
void dPa_simpleEcallBack::draw(JPABaseEmitter*) {
@@ -211,10 +220,10 @@ dPa_control_c::dPa_control_c() {
/* Nonmatching */
}
/* 8007C9A4-8007CA28 .text __dt__19dPa_simpleEcallBackFv */
dPa_simpleEcallBack::~dPa_simpleEcallBack() {
/* Nonmatching */
}
// /* 8007C9A4-8007CA28 .text __dt__19dPa_simpleEcallBackFv */
// dPa_simpleEcallBack::~dPa_simpleEcallBack() {
// /* Nonmatching */
// }
/* 8007CA28-8007CA30 .text getRM_ID__13dPa_control_cFUs */
void dPa_control_c::getRM_ID(unsigned short) {
@@ -277,7 +286,7 @@ void dPa_control_c::draw(JPADrawInfo*, unsigned char) {
}
/* 8007D1DC-8007D378 .text set__13dPa_control_cFUcUsPC4cXyzPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyz */
void dPa_control_c::set(unsigned char, unsigned short, const cXyz*, const csXyz*, const cXyz*, unsigned char, dPa_levelEcallBack*, signed char, const _GXColor*, const _GXColor*, const cXyz*) {
JPABaseEmitter* dPa_control_c::set(unsigned char, unsigned short, const cXyz*, const csXyz*, const cXyz*, unsigned char, dPa_levelEcallBack*, signed char, const _GXColor*, const _GXColor*, const cXyz*) {
/* Nonmatching */
}
@@ -456,80 +465,80 @@ void dPa_trackEcallBack::draw(JPABaseEmitter*) {
/* Nonmatching */
}
/* 8007F62C-8007F698 .text __dt__18dPa_trackEcallBackFv */
dPa_trackEcallBack::~dPa_trackEcallBack() {
/* Nonmatching */
}
// /* 8007F62C-8007F698 .text __dt__18dPa_trackEcallBackFv */
// dPa_trackEcallBack::~dPa_trackEcallBack() {
// /* Nonmatching */
// }
/* 8007F698-8007F704 .text __dt__22dPa_bombSmokeEcallBackFv */
dPa_bombSmokeEcallBack::~dPa_bombSmokeEcallBack() {
/* Nonmatching */
}
// /* 8007F698-8007F704 .text __dt__22dPa_bombSmokeEcallBackFv */
// dPa_bombSmokeEcallBack::~dPa_bombSmokeEcallBack() {
// /* Nonmatching */
// }
/* 8007F704-8007F708 .text setup__22dPa_bombSmokeEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */
void dPa_bombSmokeEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
/* Nonmatching */
}
/* 8007F708-8007F764 .text __dt__19dPa_kageroEcallBackFv */
dPa_kageroEcallBack::~dPa_kageroEcallBack() {
/* Nonmatching */
}
// /* 8007F708-8007F764 .text __dt__19dPa_kageroEcallBackFv */
// dPa_kageroEcallBack::~dPa_kageroEcallBack() {
// /* Nonmatching */
// }
/* 8007F764-8007F7D0 .text __dt__20dPa_stripesEcallBackFv */
dPa_stripesEcallBack::~dPa_stripesEcallBack() {
/* Nonmatching */
}
// /* 8007F764-8007F7D0 .text __dt__20dPa_stripesEcallBackFv */
// dPa_stripesEcallBack::~dPa_stripesEcallBack() {
// /* Nonmatching */
// }
/* 8007F7D0-8007F7D4 .text setup__20dPa_stripesEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */
void dPa_stripesEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
/* Nonmatching */
}
/* 8007F7D4-8007F840 .text __dt__22dPa_cutTurnEcallBack_cFv */
dPa_cutTurnEcallBack_c::~dPa_cutTurnEcallBack_c() {
/* Nonmatching */
}
// /* 8007F7D4-8007F840 .text __dt__22dPa_cutTurnEcallBack_cFv */
// dPa_cutTurnEcallBack_c::~dPa_cutTurnEcallBack_c() {
// /* Nonmatching */
// }
/* 8007F840-8007F8AC .text __dt__19dPa_splashEcallBackFv */
dPa_splashEcallBack::~dPa_splashEcallBack() {
/* Nonmatching */
}
// /* 8007F840-8007F8AC .text __dt__19dPa_splashEcallBackFv */
// dPa_splashEcallBack::~dPa_splashEcallBack() {
// /* Nonmatching */
// }
/* 8007F8AC-8007F940 .text __dt__17dPa_waveEcallBackFv */
dPa_waveEcallBack::~dPa_waveEcallBack() {
/* Nonmatching */
}
// /* 8007F8AC-8007F940 .text __dt__17dPa_waveEcallBackFv */
// dPa_waveEcallBack::~dPa_waveEcallBack() {
// /* Nonmatching */
// }
/* 8007F940-8007F99C .text __dt__19dPa_ripplePcallBackFv */
dPa_ripplePcallBack::~dPa_ripplePcallBack() {
/* Nonmatching */
}
// /* 8007F940-8007F99C .text __dt__19dPa_ripplePcallBackFv */
// dPa_ripplePcallBack::~dPa_ripplePcallBack() {
// /* Nonmatching */
// }
/* 8007F99C-8007F9A0 .text init__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>FP14JPABaseEmitterP15JPABaseParticle */
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::init(JPABaseEmitter*, JPABaseParticle*) {
/* Nonmatching */
}
/* 8007F9A0-8007FA0C .text __dt__25dPa_singleRippleEcallBackFv */
dPa_singleRippleEcallBack::~dPa_singleRippleEcallBack() {
/* Nonmatching */
}
// /* 8007F9A0-8007FA0C .text __dt__25dPa_singleRippleEcallBackFv */
// dPa_singleRippleEcallBack::~dPa_singleRippleEcallBack() {
// /* Nonmatching */
// }
/* 8007FA0C-8007FA78 .text __dt__19dPa_rippleEcallBackFv */
dPa_rippleEcallBack::~dPa_rippleEcallBack() {
/* Nonmatching */
}
// /* 8007FA0C-8007FA78 .text __dt__19dPa_rippleEcallBackFv */
// dPa_rippleEcallBack::~dPa_rippleEcallBack() {
// /* Nonmatching */
// }
/* 8007FA78-8007FA7C .text draw__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>FP14JPABaseEmitterP15JPABaseParticle */
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::draw(JPABaseEmitter*, JPABaseParticle*) {
/* Nonmatching */
}
/* 8007FA7C-8007FAE8 .text __dt__22dPa_selectTexEcallBackFv */
dPa_selectTexEcallBack::~dPa_selectTexEcallBack() {
/* Nonmatching */
}
// /* 8007FA7C-8007FAE8 .text __dt__22dPa_selectTexEcallBackFv */
// dPa_selectTexEcallBack::~dPa_selectTexEcallBack() {
// /* Nonmatching */
// }
/* 8007FAE8-8007FAEC .text setup__22dPa_selectTexEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */
void dPa_selectTexEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
@@ -541,11 +550,6 @@ void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::execute(JPABaseEmitter
/* Nonmatching */
}
/* 8007FAF0-8007FB0C .text cLib_calcTimer<Ul>__FPUl */
void cLib_calcTimer<unsigned long>(unsigned long*) {
/* Nonmatching */
}
/* 8007FF78-8007FFA8 .text draw__21dPa_setColorEcallBackFP14JPABaseEmitter */
void dPa_setColorEcallBack::draw(JPABaseEmitter*) {
/* Nonmatching */
@@ -556,8 +560,8 @@ void dPa_setColorEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, si
/* Nonmatching */
}
/* 8007FFAC-80080018 .text __dt__21dPa_setColorEcallBackFv */
dPa_setColorEcallBack::~dPa_setColorEcallBack() {
/* Nonmatching */
}
// /* 8007FFAC-80080018 .text __dt__21dPa_setColorEcallBackFv */
// dPa_setColorEcallBack::~dPa_setColorEcallBack() {
// /* Nonmatching */
// }