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

namespace RootMotion
{
	// Token: 0x020003F7 RID: 1015
	public class AxisTools : Il2CppSystem.Object
	{
		// Token: 0x06007D10 RID: 32016 RVA: 0x001FE6E0 File Offset: 0x001FC8E0
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 620819, RefRangeEnd = 620821, XrefRangeStart = 620814, XrefRangeEnd = 620819, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe static Vector3 ToVector3(Axis axis)
		{
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref axis;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTools.NativeMethodInfoPtr_ToVector3_Public_Static_Vector3_Axis_0, 0, (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06007D11 RID: 32017 RVA: 0x001FE734 File Offset: 0x001FC934
		[CallerCount(0)]
		public unsafe static Axis ToAxis(Vector3 v)
		{
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref v;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTools.NativeMethodInfoPtr_ToAxis_Public_Static_Axis_Vector3_0, 0, (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06007D12 RID: 32018 RVA: 0x001FE788 File Offset: 0x001FC988
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620821, XrefRangeEnd = 620827, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe static Axis GetAxisToPoint(Transform t, Vector3 worldPosition)
		{
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(t);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref worldPosition;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTools.NativeMethodInfoPtr_GetAxisToPoint_Public_Static_Axis_Transform_Vector3_0, 0, (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x06007D13 RID: 32019 RVA: 0x001FE7F4 File Offset: 0x001FC9F4
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 620832, RefRangeEnd = 620834, XrefRangeStart = 620827, XrefRangeEnd = 620832, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe static Axis GetAxisToDirection(Transform t, Vector3 direction)
		{
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(t);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref direction;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTools.NativeMethodInfoPtr_GetAxisToDirection_Public_Static_Axis_Transform_Vector3_0, 0, (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x06007D14 RID: 32020 RVA: 0x001FE860 File Offset: 0x001FCA60
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620834, XrefRangeEnd = 620836, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe static Vector3 GetAxisVectorToPoint(Transform t, Vector3 worldPosition)
		{
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(t);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref worldPosition;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTools.NativeMethodInfoPtr_GetAxisVectorToPoint_Public_Static_Vector3_Transform_Vector3_0, 0, (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x06007D15 RID: 32021 RVA: 0x001FE8CC File Offset: 0x001FCACC
		[CallerCount(3)]
		[CachedScanResults(RefRangeStart = 620846, RefRangeEnd = 620849, XrefRangeStart = 620836, XrefRangeEnd = 620846, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe static Vector3 GetAxisVectorToDirection(Transform t, Vector3 direction)
		{
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(t);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref direction;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTools.NativeMethodInfoPtr_GetAxisVectorToDirection_Public_Static_Vector3_Transform_Vector3_0, 0, (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x06007D16 RID: 32022 RVA: 0x001FE938 File Offset: 0x001FCB38
		[CallerCount(1664)]
		[CachedScanResults(RefRangeStart = 7711, RefRangeEnd = 9375, XrefRangeStart = 7711, XrefRangeEnd = 9375, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe AxisTools()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<AxisTools>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTools.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007D17 RID: 32023 RVA: 0x001FE984 File Offset: 0x001FCB84
		// Note: this type is marked as 'beforefieldinit'.
		static AxisTools()
		{
			Il2CppClassPointerStore<AxisTools>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion", "AxisTools");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<AxisTools>.NativeClassPtr);
			AxisTools.NativeMethodInfoPtr_ToVector3_Public_Static_Vector3_Axis_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTools>.NativeClassPtr, 100672792);
			AxisTools.NativeMethodInfoPtr_ToAxis_Public_Static_Axis_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTools>.NativeClassPtr, 100672793);
			AxisTools.NativeMethodInfoPtr_GetAxisToPoint_Public_Static_Axis_Transform_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTools>.NativeClassPtr, 100672794);
			AxisTools.NativeMethodInfoPtr_GetAxisToDirection_Public_Static_Axis_Transform_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTools>.NativeClassPtr, 100672795);
			AxisTools.NativeMethodInfoPtr_GetAxisVectorToPoint_Public_Static_Vector3_Transform_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTools>.NativeClassPtr, 100672796);
			AxisTools.NativeMethodInfoPtr_GetAxisVectorToDirection_Public_Static_Vector3_Transform_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTools>.NativeClassPtr, 100672797);
			AxisTools.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTools>.NativeClassPtr, 100672798);
		}

		// Token: 0x06007D18 RID: 32024 RVA: 0x0000A74C File Offset: 0x0000894C
		public AxisTools(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x040053F8 RID: 21496
		private static readonly IntPtr NativeMethodInfoPtr_ToVector3_Public_Static_Vector3_Axis_0;

		// Token: 0x040053F9 RID: 21497
		private static readonly IntPtr NativeMethodInfoPtr_ToAxis_Public_Static_Axis_Vector3_0;

		// Token: 0x040053FA RID: 21498
		private static readonly IntPtr NativeMethodInfoPtr_GetAxisToPoint_Public_Static_Axis_Transform_Vector3_0;

		// Token: 0x040053FB RID: 21499
		private static readonly IntPtr NativeMethodInfoPtr_GetAxisToDirection_Public_Static_Axis_Transform_Vector3_0;

		// Token: 0x040053FC RID: 21500
		private static readonly IntPtr NativeMethodInfoPtr_GetAxisVectorToPoint_Public_Static_Vector3_Transform_Vector3_0;

		// Token: 0x040053FD RID: 21501
		private static readonly IntPtr NativeMethodInfoPtr_GetAxisVectorToDirection_Public_Static_Vector3_Transform_Vector3_0;

		// Token: 0x040053FE RID: 21502
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
