Files
Xune/UIX.RenderApi.Skia/Microsoft/Iris/Render/Animation/AnimationTarget.cs
T

51 lines
1.6 KiB
C#
Raw Normal View History

2021-07-11 22:59:29 -05:00
// Decompiled with JetBrains decompiler
// Type: Microsoft.Iris.Render.Animation.AnimationTarget
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
using Microsoft.Iris.Render.Common;
using System.Threading;
namespace Microsoft.Iris.Render.Animation
{
2021-07-11 23:04:40 -05:00
internal class AnimationTarget : RenderObject
2021-07-11 22:59:29 -05:00
{
2021-07-11 23:04:40 -05:00
private static int s_targetIdSeed;
private int m_targetId;
private IAnimatableObject m_object;
private string m_property;
internal AnimationTarget(IAnimatableObject targetObject, string targetPropertyName)
{
int propertyType = (int)targetObject.GetPropertyType(targetPropertyName);
2021-07-11 23:07:04 -05:00
targetObject.RegisterUsage(this);
this.m_targetId = Interlocked.Increment(ref s_targetIdSeed);
2021-07-11 23:04:40 -05:00
this.m_object = targetObject;
this.m_property = targetPropertyName;
}
protected override void Dispose(bool fInDispose)
{
try
{
if (fInDispose)
2021-07-11 23:07:04 -05:00
this.m_object.UnregisterUsage(this);
this.m_object = null;
2021-07-11 23:04:40 -05:00
}
finally
{
base.Dispose(fInDispose);
}
}
internal int TargetId => this.m_targetId;
internal IAnimatableObject TargetObject => this.m_object;
internal string TargetPropertyName => this.m_property;
internal AnimationInputType TargetPropertyType => this.m_object.GetPropertyType(this.m_property);
2021-07-11 22:59:29 -05:00
}
}