blob: 793cc848d3a8d8392efc782048715337d840424e [file] [log] [blame]
#include "rive/artboard.hpp"
#include "rive/animation/blend_state_transition.hpp"
#include "rive/animation/blend_state_instance.hpp"
#include "rive/animation/blend_state_1d.hpp"
#include "rive/animation/blend_state_direct.hpp"
#include "rive/animation/blend_state_1d_instance.hpp"
#include "rive/animation/blend_state_direct_instance.hpp"
using namespace rive;
const LinearAnimationInstance*
BlendStateTransition::exitTimeAnimationInstance(const StateInstance* from) const {
if (from != nullptr) {
switch (from->state()->coreType()) {
case BlendState1D::typeKey:
return static_cast<const BlendState1DInstance*>(from)->animationInstance(
m_ExitBlendAnimation);
case BlendStateDirect::typeKey:
return static_cast<const BlendStateDirectInstance*>(from)->animationInstance(
m_ExitBlendAnimation);
}
}
return nullptr;
}
const LinearAnimation* BlendStateTransition::exitTimeAnimation(const LayerState* from) const {
if (m_ExitBlendAnimation != nullptr) {
return m_ExitBlendAnimation->animation();
}
return nullptr;
}