using System;
using Cpp2IlInjected;
using UnityEngine;

namespace RootMotion.FinalIK
{
	// Token: 0x020004B0 RID: 1200
	[Token(Token = "0x20004B0")]
	public class GenericPoser : Poser
	{
		// Token: 0x06002ADE RID: 10974 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002ADE")]
		[Address(RVA = "0xA2F560", Offset = "0xA2E560", VA = "0x180A2F560", Slot = "7")]
		[ContextMenu("Auto-Mapping")]
		public override void AutoMapping()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002ADF RID: 10975 RVA: 0x0005FF6C File Offset: 0x0005E16C
		[Token(Token = "0x6002ADF")]
		[Address(RVA = "0xA2F9B0", Offset = "0xA2E9B0", VA = "0x180A2F9B0", Slot = "8")]
		protected override void InitiatePoser()
		{
			this.StoreDefaultState();
		}

		// Token: 0x06002AE0 RID: 10976 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002AE0")]
		[Address(RVA = "0xA2FA40", Offset = "0xA2EA40", VA = "0x180A2FA40", Slot = "9")]
		protected override void UpdatePoser()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002AE1 RID: 10977 RVA: 0x0005FF80 File Offset: 0x0005E180
		[Token(Token = "0x6002AE1")]
		[Address(RVA = "0xA2F880", Offset = "0xA2E880", VA = "0x180A2F880", 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: 0x06002AE2 RID: 10978 RVA: 0x0005FFBC File Offset: 0x0005E1BC
		[Token(Token = "0x6002AE2")]
		[Address(RVA = "0xA2F9C0", Offset = "0xA2E9C0", VA = "0x180A2F9C0")]
		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: 0x06002AE3 RID: 10979 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002AE3")]
		[Address(RVA = "0xA2F900", Offset = "0xA2E900", VA = "0x180A2F900")]
		private Transform GetTargetNamed(string tName, Transform[] array)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002AE4 RID: 10980 RVA: 0x0005FFF8 File Offset: 0x0005E1F8
		[Token(Token = "0x6002AE4")]
		[Address(RVA = "0xA2FB50", Offset = "0xA2EB50", VA = "0x180A2FB50")]
		public GenericPoser()
		{
		}

		// Token: 0x04003465 RID: 13413
		[FieldOffset(Offset = "0x50")]
		[Token(Token = "0x4003465")]
		public GenericPoser.Map[] maps;

		// Token: 0x020004B1 RID: 1201
		[Token(Token = "0x20004B1")]
		[Serializable]
		public class Map
		{
			// Token: 0x06002AE5 RID: 10981 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x6002AE5")]
			[Address(RVA = "0x16AC6A0", Offset = "0x16AB6A0", VA = "0x1816AC6A0")]
			public Map(Transform bone, Transform target)
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x06002AE6 RID: 10982 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x6002AE6")]
			[Address(RVA = "0x16A0FA0", Offset = "0x169FFA0", VA = "0x1816A0FA0")]
			public void StoreDefaultState()
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x06002AE7 RID: 10983 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x6002AE7")]
			[Address(RVA = "0x16AC4B0", Offset = "0x16AB4B0", VA = "0x1816AC4B0")]
			public void FixTransform()
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x06002AE8 RID: 10984 RVA: 0x000020D3 File Offset: 0x000002D3
			[Token(Token = "0x6002AE8")]
			[Address(RVA = "0x16AC510", Offset = "0x16AB510", VA = "0x1816AC510")]
			public void Update(float localRotationWeight, float localPositionWeight)
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}

			// Token: 0x04003466 RID: 13414
			[FieldOffset(Offset = "0x10")]
			[Token(Token = "0x4003466")]
			public Transform bone;

			// Token: 0x04003467 RID: 13415
			[FieldOffset(Offset = "0x18")]
			[Token(Token = "0x4003467")]
			public Transform target;

			// Token: 0x04003468 RID: 13416
			[FieldOffset(Offset = "0x20")]
			[Token(Token = "0x4003468")]
			private Vector3 defaultLocalPosition;

			// Token: 0x04003469 RID: 13417
			[FieldOffset(Offset = "0x2C")]
			[Token(Token = "0x4003469")]
			private Quaternion defaultLocalRotation;
		}
	}
}
