2023-12-17 03:29:08 -08:00
|
|
|
#pragma once
|
|
|
|
|
2023-12-17 15:00:08 -08:00
|
|
|
#include "EHS.h"
|
|
|
|
#include "Array.h"
|
2023-12-17 03:29:08 -08:00
|
|
|
#include "KeyFrame.h"
|
|
|
|
|
2023-12-17 15:56:13 -08:00
|
|
|
namespace ehs
|
2023-12-17 03:29:08 -08:00
|
|
|
{
|
|
|
|
class AnimBone
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
UInt_8 boneId;
|
|
|
|
Array<KeyFrame> keyFrames;
|
|
|
|
|
|
|
|
public:
|
|
|
|
AnimBone();
|
|
|
|
|
|
|
|
AnimBone(const UInt_8 boneId);
|
|
|
|
|
|
|
|
AnimBone(const UInt_8 boneId, const UInt_64 size);
|
|
|
|
|
|
|
|
AnimBone(const UInt_8 boneId, Array<KeyFrame> keyFrames);
|
|
|
|
|
|
|
|
AnimBone(AnimBone&& anim) noexcept;
|
|
|
|
|
|
|
|
AnimBone(const AnimBone& anim);
|
|
|
|
|
|
|
|
AnimBone& operator=(AnimBone&& anim) noexcept;
|
|
|
|
|
|
|
|
AnimBone& operator=(const AnimBone& anim);
|
|
|
|
|
|
|
|
UInt_8 GetBoneId() const;
|
|
|
|
|
|
|
|
Array<KeyFrame> GetKeyFrames() const;
|
|
|
|
|
|
|
|
Array<KeyFrame>& GetKeyFrames();
|
|
|
|
|
|
|
|
float GetPrevAndNext(KeyFrame& prev, KeyFrame& next, const float elapsed) const;
|
|
|
|
};
|
|
|
|
}
|