Fission FSN
Loading...
Searching...
No Matches
fsI3dModelData.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsI3dModelData.h
4*
5* Purpose: 3d model data interface
6*
7*********************************************************************/
8
9#ifndef fsI3dModelDatahdr
10#define fsI3dModelDatahdr
11#include <functional>
12
13#include <fsCore/fsBaseTypes.h>
14
15#include <fsCore/fsVec3d.h>
16
17class fsI3dAnimation;
18class fsStr;
19
21{
22 friend class fsC3dModelManager;
23public:
24
25 static fsStr modelFilenameGet(const fsStr& pFilename);
26
27 void update(fsF32 pDeltaMS);
28 void offsetSet(fsVec3d const& pPos);
29 void scaleSet(fsF32 pScale);
30
31 void alignToTrack(fsI3dModelData* pTrack);
32
33 void animationSet(fsI3dAnimation* pAnimation, std::function<void()> pCallBack);
34
35 virtual ~fsI3dModelData();
36
37protected:
38
39 virtual void updateDo(fsF32 pDeltaMS) {}
40 virtual void offsetSetDo(fsVec3d const& pPos) {}
41 virtual void scaleSetDo(fsF32 pScale) {}
42
43 virtual void animationSetDo(fsI3dAnimation* pAnimation, std::function<void()> pCallBack) = 0;
44
45 virtual void alignToTrackDo(fsI3dModelData* const pTrack) {};
46
48
49private:
50};
51
52
53#endif
Definition fsI3dAnimation.h:22
virtual void alignToTrackDo(fsI3dModelData *const pTrack)
Definition fsI3dModelData.h:45
static fsStr modelFilenameGet(const fsStr &pFilename)
Definition fsI3dModelData.cpp:38
friend class fsC3dModelManager
Definition fsI3dModelData.h:22
void scaleSet(fsF32 pScale)
Definition fsI3dModelData.cpp:28
void animationSet(fsI3dAnimation *pAnimation, std::function< void()> pCallBack)
Definition fsI3dModelData.cpp:43
void update(fsF32 pDeltaMS)
Definition fsI3dModelData.cpp:18
virtual void scaleSetDo(fsF32 pScale)
Definition fsI3dModelData.h:41
virtual void updateDo(fsF32 pDeltaMS)
Definition fsI3dModelData.h:39
void offsetSet(fsVec3d const &pPos)
Definition fsI3dModelData.cpp:23
virtual void animationSetDo(fsI3dAnimation *pAnimation, std::function< void()> pCallBack)=0
fsI3dModelData()
Definition fsI3dModelData.cpp:48
virtual void offsetSetDo(fsVec3d const &pPos)
Definition fsI3dModelData.h:40
void alignToTrack(fsI3dModelData *pTrack)
Definition fsI3dModelData.cpp:33
virtual ~fsI3dModelData()
Definition fsI3dModelData.cpp:52
Definition fsStr.h:23
float fsF32
Definition fsBaseTypes.h:28
Definition fsVec3d.h:16