using System;
using Cpp2IlInjected;
using UnityEngine;

namespace RootMotion.FinalIK
{
	// Token: 0x02000458 RID: 1112
	[Token(Token = "0x2000458")]
	public class GenericPoser : Poser
	{
		// Token: 0x06002815 RID: 10261 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002815")]
		[Address(RVA = "0x54E450", Offset = "0x54D250", VA = "0x18054E450", Slot = "7")]
		[ContextMenu("Auto-Mapping")]
		public override void AutoMapping()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002816 RID: 10262 RVA: 0x00058BC8 File Offset: 0x00056DC8
		[Token(Token = "0x6002816")]
		[Address(RVA = "0x54E8A0", Offset = "0x54D6A0", VA = "0x18054E8A0", Slot = "8")]
		protected override void InitiatePoser()
		{
			this.StoreDefaultState();
		}

		// Token: 0x06002817 RID: 10263 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002817")]
		[Address(RVA = "0x54E930", Offset = "0x54D730", VA = "0x18054E930", Slot = "9")]
		protected override void UpdatePoser()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002818 RID: 10264 RVA: 0x00058BDC File Offset: 0x00056DDC
		[Token(Token = "0x6002818")]
		[Address(RVA = "0x54E770", Offset = "0x54D570", VA = "0x18054E770", Slot = "10")]
		protected override void FixPoserTransforms()
		{
			GenericPoser.Map[] array = this.maps;
			int num = 0;
			if (num < array.Length)
			{
				array[num].FixTransform();
				GenericPoser.Map[] array2 = this.maps;
				num++;
			}
		}

		// Token: 0x06002819 RID: 10265 RVA: 0x00058C18 File Offset: 0x00056E18
		[Token(Token = "0x6002819")]
		[Address(RVA = "0x54E8B0", Offset = "0x54D6B0", VA = "0x18054E8B0")]
		private void StoreDefaultState()
		{
			GenericPoser.Map[] array = this.maps;
			int num = 0;
			if (num < array.Length)
			{
				array[num].StoreDefaultState();
				GenericPoser.Map[] array2 = this.maps;
				num++;
			}
		}

		// Token: 0x0600281A RID: 10266 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x600281A")]
		[Address(RVA = "0x54E7F0", Offset = "0x54D5F0", VA = "0x18054E7F0")]
		private Transform GetTargetNamed(string tName, Transform[] array)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x0600281B RID: 10267 RVA: 0x00058C54 File Offset: 0x00056E54
		[Token(Token = "0x600281B")]
		[Address(RVA = "0x54EA40", Offset = "0x54D840", VA = "0x18054EA40")]
		public GenericPoser()
		{
		}

		// Token: 0x0400317B RID: 12667
		[FieldOffset(Offset = "0x50")]
		[Token(Token = "0x400317B")]
		public GenericPoser.Map[] maps;

		// Token: 0x02000459 RID: 1113
		[Token(Token = "0x2000459")]
		[Serializable]
		public class Map
		{
			// Token: 0x0600281C RID: 10268 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x600281C")]
			[Address(RVA = "0x5FCCE0", Offset = "0x5FBAE0", VA = "0x1805FCCE0")]
			public Map(Transform bone, Transform target)
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x0600281D RID: 10269 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x600281D")]
			[Address(RVA = "0x5FCAF0", Offset = "0x5FB8F0", VA = "0x1805FCAF0")]
			public void StoreDefaultState()
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x0600281E RID: 10270 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x600281E")]
			[Address(RVA = "0x5FCA90", Offset = "0x5FB890", VA = "0x1805FCA90")]
			public void FixTransform()
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x0600281F RID: 10271 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x600281F")]
			[Address(RVA = "0x5FCB50", Offset = "0x5FB950", VA = "0x1805FCB50")]
			public void Update(float localRotationWeight, float localPositionWeight)
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x0400317C RID: 12668
			[FieldOffset(Offset = "0x10")]
			[Token(Token = "0x400317C")]
			public Transform bone;

			// Token: 0x0400317D RID: 12669
			[FieldOffset(Offset = "0x18")]
			[Token(Token = "0x400317D")]
			public Transform target;

			// Token: 0x0400317E RID: 12670
			[FieldOffset(Offset = "0x20")]
			[Token(Token = "0x400317E")]
			private Vector3 defaultLocalPosition;

			// Token: 0x0400317F RID: 12671
			[FieldOffset(Offset = "0x2C")]
			[Token(Token = "0x400317F")]
			private Quaternion defaultLocalRotation;
		}
	}
}
