using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;

namespace RootMotion.FinalIK
{
	// Token: 0x02000472 RID: 1138
	public class IK : SolverManager
	{
		// Token: 0x06008620 RID: 34336 RVA: 0x00223A14 File Offset: 0x00221C14
		[CallerCount(0)]
		public unsafe virtual IKSolver GetIKSolver()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IK.NativeMethodInfoPtr_GetIKSolver_Public_Abstract_Virtual_New_IKSolver_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			IntPtr intPtr3 = intPtr;
			return (intPtr3 != 0) ? new IKSolver(intPtr3) : null;
		}

		// Token: 0x06008621 RID: 34337 RVA: 0x00223A78 File Offset: 0x00221C78
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 627860, XrefRangeEnd = 627863, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void UpdateSolver()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IK.NativeMethodInfoPtr_UpdateSolver_Protected_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008622 RID: 34338 RVA: 0x00223AC8 File Offset: 0x00221CC8
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 627865, RefRangeEnd = 627866, XrefRangeStart = 627863, XrefRangeEnd = 627865, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void InitiateSolver()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IK.NativeMethodInfoPtr_InitiateSolver_Protected_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008623 RID: 34339 RVA: 0x00223B18 File Offset: 0x00221D18
		[CallerCount(0)]
		public unsafe override void FixTransforms()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IK.NativeMethodInfoPtr_FixTransforms_Protected_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008624 RID: 34340 RVA: 0x00223B68 File Offset: 0x00221D68
		[CallerCount(0)]
		public unsafe virtual void OpenUserManual()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IK.NativeMethodInfoPtr_OpenUserManual_Protected_Abstract_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008625 RID: 34341 RVA: 0x00223BB8 File Offset: 0x00221DB8
		[CallerCount(0)]
		public unsafe virtual void OpenScriptReference()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IK.NativeMethodInfoPtr_OpenScriptReference_Protected_Abstract_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008626 RID: 34342 RVA: 0x00223C08 File Offset: 0x00221E08
		[CallerCount(10)]
		[CachedScanResults(RefRangeStart = 627867, RefRangeEnd = 627877, XrefRangeStart = 627866, XrefRangeEnd = 627867, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe IK()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<IK>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IK.NativeMethodInfoPtr__ctor_Protected_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008627 RID: 34343 RVA: 0x00223C54 File Offset: 0x00221E54
		// Note: this type is marked as 'beforefieldinit'.
		static IK()
		{
			Il2CppClassPointerStore<IK>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.FinalIK", "IK");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<IK>.NativeClassPtr);
			IK.NativeMethodInfoPtr_GetIKSolver_Public_Abstract_Virtual_New_IKSolver_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IK>.NativeClassPtr, 100673500);
			IK.NativeMethodInfoPtr_UpdateSolver_Protected_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IK>.NativeClassPtr, 100673501);
			IK.NativeMethodInfoPtr_InitiateSolver_Protected_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IK>.NativeClassPtr, 100673502);
			IK.NativeMethodInfoPtr_FixTransforms_Protected_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IK>.NativeClassPtr, 100673503);
			IK.NativeMethodInfoPtr_OpenUserManual_Protected_Abstract_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IK>.NativeClassPtr, 100673504);
			IK.NativeMethodInfoPtr_OpenScriptReference_Protected_Abstract_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IK>.NativeClassPtr, 100673505);
			IK.NativeMethodInfoPtr__ctor_Protected_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IK>.NativeClassPtr, 100673506);
		}

		// Token: 0x06008628 RID: 34344 RVA: 0x002198C0 File Offset: 0x00217AC0
		public IK(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x040059B4 RID: 22964
		private static readonly IntPtr NativeMethodInfoPtr_GetIKSolver_Public_Abstract_Virtual_New_IKSolver_0;

		// Token: 0x040059B5 RID: 22965
		private static readonly IntPtr NativeMethodInfoPtr_UpdateSolver_Protected_Virtual_Void_0;

		// Token: 0x040059B6 RID: 22966
		private static readonly IntPtr NativeMethodInfoPtr_InitiateSolver_Protected_Virtual_Void_0;

		// Token: 0x040059B7 RID: 22967
		private static readonly IntPtr NativeMethodInfoPtr_FixTransforms_Protected_Virtual_Void_0;

		// Token: 0x040059B8 RID: 22968
		private static readonly IntPtr NativeMethodInfoPtr_OpenUserManual_Protected_Abstract_Virtual_New_Void_0;

		// Token: 0x040059B9 RID: 22969
		private static readonly IntPtr NativeMethodInfoPtr_OpenScriptReference_Protected_Abstract_Virtual_New_Void_0;

		// Token: 0x040059BA RID: 22970
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Protected_Void_0;
	}
}
