Files
ss/include/egg/gfx/eggAnalizeDL.h
T
2025-03-27 23:02:44 +01:00

61 lines
1.3 KiB
C++

#ifndef EGG_ANALIZE_DL_H
#define EGG_ANALIZE_DL_H
#include "nw4r/g3d/res/g3d_resshp.h"
#include "rvl/GX/GXAttr.h"
namespace EGG {
class AnalizeDL {
public:
enum Status {
STATUS_NONE,
STATUS_1,
STATUS_2,
STATUS_3,
STATUS_VTX = 4,
STATUS_5,
STATUS_END = 6,
};
struct VtxResult {
/* 0x00 */ s32 mMtxIdx;
/* 0x04 */ s32 field_0x04;
/* 0x08 */ Vec field_0x08;
};
private:
/* 0x000 */ u8 *mpData;
/* 0x004 */ u32 mBufSize;
/* 0x008 */ u32 mCursor;
/* 0x00C */ u8 field_0x00C;
/* 0x00D */ u8 field_0x00D;
/* 0x00E */ u8 field_0x00E;
/* 0x00F */ u8 field_0x00F;
/* 0x010 */ u16 field_0x010;
/* 0x014 */ GXVtxDescList mVtxDescList[22];
/* 0x0C4 */ GXVtxAttrFmtList mAttrFmtList[13];
/* 0x194 */ u8 mArrStride;
/* 0x198 */ const void *mpArr;
/* 0x19C */ Status mStatus;
/* 0x1A0 */ s16 field_0x1A0[10];
/* 0x1B4 */ s16 field_0x1B4[10];
/* 0x1C8 */ u8 field_0x1C8;
/* 0x1CA */ u16 field_0x1CA;
/* 0x1CC */ u16 field_0x1CC;
/* 0x1D0 */ VtxResult mVtxResult;
void init();
public:
AnalizeDL(nw4r::g3d::ResShp shp);
virtual ~AnalizeDL() {}
Status step();
const VtxResult &getVtxResult() const;
};
} // namespace EGG
#endif