metaforce/Runtime/Character/CPASParmInfo.hpp

29 lines
831 B
C++
Raw Normal View History

2018-10-07 03:42:33 +00:00
#pragma once
2016-04-10 04:49:02 +00:00
#include "Runtime/IOStreams.hpp"
#include "Runtime/Character/CPASAnimParm.hpp"
2016-04-10 04:49:02 +00:00
2021-04-10 08:42:06 +00:00
namespace metaforce {
2016-04-10 04:49:02 +00:00
2018-12-08 05:30:43 +00:00
class CPASParmInfo {
2016-08-21 05:47:47 +00:00
public:
2018-12-08 05:30:43 +00:00
enum class EWeightFunction { ExactMatch, PercentError, AngularPercent, NoWeight };
private:
2018-12-08 05:30:43 +00:00
CPASAnimParm::EParmType x0_type;
EWeightFunction x4_weightFunction;
float x8_weight;
CPASAnimParm::UParmValue xc_min;
CPASAnimParm::UParmValue x10_max;
2016-08-21 05:47:47 +00:00
2016-04-10 04:49:02 +00:00
public:
explicit CPASParmInfo(CInputStream& in);
2018-12-08 05:30:43 +00:00
CPASAnimParm::EParmType GetParameterType() const { return x0_type; }
EWeightFunction GetWeightFunction() const { return x4_weightFunction; }
float GetParameterWeight() const { return x8_weight; }
CPASAnimParm::UParmValue GetWeightMinValue() const { return xc_min; }
CPASAnimParm::UParmValue GetWeightMaxValue() const { return x10_max; }
2016-04-10 04:49:02 +00:00
};
2021-04-10 08:42:06 +00:00
} // namespace metaforce