blob: 3a44be37569710906efdd612e8849448c09e2280 [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;
}