summaryrefslogtreecommitdiff
path: root/src/animation/AnimBlendHierarchy.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/animation/AnimBlendHierarchy.h')
-rw-r--r--src/animation/AnimBlendHierarchy.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/animation/AnimBlendHierarchy.h b/src/animation/AnimBlendHierarchy.h
new file mode 100644
index 0000000..4838c4f
--- /dev/null
+++ b/src/animation/AnimBlendHierarchy.h
@@ -0,0 +1,36 @@
+#pragma once
+
+#include "templates.h"
+
+#ifdef MoveMemory
+#undef MoveMemory // windows shit
+#endif
+
+class CAnimBlendSequence;
+
+// A collection of sequences
+class CAnimBlendHierarchy
+{
+public:
+ char name[24];
+ CAnimBlendSequence *sequences;
+ int16 numSequences;
+ bool compressed;
+ bool keepCompressed;
+ float totalLength;
+ CLink<CAnimBlendHierarchy*> *linkPtr;
+
+ CAnimBlendHierarchy(void);
+ void Shutdown(void);
+ void SetName(char *name);
+ void CalcTotalTime(void);
+ void CalcTotalTimeCompressed(void);
+ void RemoveQuaternionFlips(void);
+ void RemoveAnimSequences(void);
+ void Uncompress(void);
+ void RemoveUncompressedData(void);
+ void MoveMemory(bool onlyone = false);
+ bool IsCompressed() { return !!compressed; };
+};
+
+VALIDATE_SIZE(CAnimBlendHierarchy, 0x28); \ No newline at end of file