tp/include/JSystem/J3DGraphLoader/J3DAnmLoader.h

78 lines
2.7 KiB
C++

#ifndef J3DANMLOADER_H
#define J3DANMLOADER_H
#include "JSystem/J3DGraphAnimator/J3DAnimation.h"
enum J3DAnmLoaderDataBaseFlag {
J3DLOADER_UNK_FLAG0,
J3DLOADER_UNK_FLAG1,
};
class J3DAnmBase;
/**
* @ingroup jsystem-j3d
*
*/
struct J3DAnmLoaderDataBase {
static J3DAnmBase* load(void const*, J3DAnmLoaderDataBaseFlag);
static void setResource(J3DAnmBase*, void const*);
static J3DAnmBase* load(void const* param_0) { return load(param_0, J3DLOADER_UNK_FLAG0); }
};
class J3DAnmLoader {
public:
virtual J3DAnmBase* load(const void*) = 0;
virtual void setResource(J3DAnmBase*, const void*) = 0;
virtual ~J3DAnmLoader() {}
};
class J3DAnmKeyLoader_v15 : public J3DAnmLoader {
public:
J3DAnmKeyLoader_v15();
void readAnmTransform(J3DAnmTransformKeyData const*);
void setAnmTransform(J3DAnmTransformKey*, J3DAnmTransformKeyData const*);
void readAnmTextureSRT(J3DAnmTextureSRTKeyData const*);
void setAnmTextureSRT(J3DAnmTextureSRTKey*, J3DAnmTextureSRTKeyData const*);
void readAnmColor(J3DAnmColorKeyData const*);
void setAnmColor(J3DAnmColorKey*, J3DAnmColorKeyData const*);
void readAnmCluster(J3DAnmClusterKeyData const*);
void setAnmCluster(J3DAnmClusterKey*, J3DAnmClusterKeyData const*);
void readAnmTevReg(J3DAnmTevRegKeyData const*);
void setAnmTevReg(J3DAnmTevRegKey*, J3DAnmTevRegKeyData const*);
void readAnmVtxColor(J3DAnmVtxColorKeyData const*);
void setAnmVtxColor(J3DAnmVtxColorKey*, J3DAnmVtxColorKeyData const*);
virtual J3DAnmBase* load(void const*);
virtual void setResource(J3DAnmBase*, void const*);
virtual ~J3DAnmKeyLoader_v15();
/* 0x4 */ J3DAnmBase* mAnm;
};
class J3DAnmFullLoader_v15 : public J3DAnmLoader {
public:
J3DAnmFullLoader_v15();
void readAnmTransform(J3DAnmTransformFullData const*);
void setAnmTransform(J3DAnmTransformFull*, J3DAnmTransformFullData const*);
void readAnmColor(J3DAnmColorFullData const*);
void setAnmColor(J3DAnmColorFull*, J3DAnmColorFullData const*);
void readAnmTexPattern(J3DAnmTexPatternFullData const*);
void setAnmTexPattern(J3DAnmTexPattern*, J3DAnmTexPatternFullData const*);
void readAnmVisibility(J3DAnmVisibilityFullData const*);
void setAnmVisibility(J3DAnmVisibilityFull*, J3DAnmVisibilityFullData const*);
void readAnmCluster(J3DAnmClusterFullData const*);
void setAnmCluster(J3DAnmClusterFull*, J3DAnmClusterFullData const*);
void readAnmVtxColor(J3DAnmVtxColorFullData const*);
void setAnmVtxColor(J3DAnmVtxColorFull*, J3DAnmVtxColorFullData const*);
virtual J3DAnmBase* load(void const*);
virtual void setResource(J3DAnmBase*, void const*);
virtual ~J3DAnmFullLoader_v15();
/* 0x4 */ J3DAnmBase* mAnm;
};
#endif /* J3DANMLOADER_H */