mirror of
https://github.com/OpenMW/openmw.git
synced 2025-03-03 14:09:39 +00:00
check ValueTs
This commit is contained in:
parent
d8897c4509
commit
94c89e6d5e
1 changed files with 14 additions and 21 deletions
|
@ -60,11 +60,20 @@ namespace NifOsg
|
||||||
|
|
||||||
ValueInterpolator() = default;
|
ValueInterpolator() = default;
|
||||||
|
|
||||||
template<class T = MapT>
|
template<
|
||||||
ValueInterpolator(typename std::enable_if_t<
|
class T,
|
||||||
std::is_same<T, Nif::FloatKeyMap>::value,
|
typename = std::enable_if_t<
|
||||||
const Nif::NiFloatInterpolator
|
std::conjunction_v<
|
||||||
> * interpolator) : mDefaultVal(interpolator->defaultVal)
|
std::disjunction<
|
||||||
|
std::is_same<ValueT, float>,
|
||||||
|
std::is_same<ValueT, osg::Vec3f>
|
||||||
|
>,
|
||||||
|
std::is_same<decltype(T::defaultVal), ValueT>
|
||||||
|
>,
|
||||||
|
T
|
||||||
|
>
|
||||||
|
>
|
||||||
|
ValueInterpolator(const T* interpolator) : mDefaultVal(interpolator->defaultVal)
|
||||||
{
|
{
|
||||||
if (interpolator->data.empty())
|
if (interpolator->data.empty())
|
||||||
return;
|
return;
|
||||||
|
@ -76,22 +85,6 @@ namespace NifOsg
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
template<class T = MapT>
|
|
||||||
ValueInterpolator(typename std::enable_if_t<
|
|
||||||
std::is_same<T, Nif::Vector3KeyMap>::value,
|
|
||||||
const Nif::NiPoint3Interpolator
|
|
||||||
> * interpolator) : mDefaultVal(interpolator->defaultVal)
|
|
||||||
{
|
|
||||||
if (interpolator->data.empty())
|
|
||||||
return;
|
|
||||||
mKeys = interpolator->data->mKeyList;
|
|
||||||
if (mKeys)
|
|
||||||
{
|
|
||||||
mLastLowKey = mKeys->mKeys.end();
|
|
||||||
mLastHighKey = mKeys->mKeys.end();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ValueInterpolator(std::shared_ptr<const MapT> keys, ValueT defaultVal = ValueT())
|
ValueInterpolator(std::shared_ptr<const MapT> keys, ValueT defaultVal = ValueT())
|
||||||
: mKeys(keys)
|
: mKeys(keys)
|
||||||
, mDefaultVal(defaultVal)
|
, mDefaultVal(defaultVal)
|
||||||
|
|
Loading…
Reference in a new issue