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

namespace RootMotion.FinalIK
{
	// Token: 0x02000405 RID: 1029
	[Serializable]
	public class ConstraintRotationOffset : Constraint
	{
		// Token: 0x06007BAB RID: 31659 RVA: 0x001F7B9C File Offset: 0x001F5D9C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 594173, XrefRangeEnd = 594187, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void UpdateConstraint()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), ConstraintRotationOffset.NativeMethodInfoPtr_UpdateConstraint_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007BAC RID: 31660 RVA: 0x001F7BEC File Offset: 0x001F5DEC
		[CallerCount(1642)]
		[CachedScanResults(RefRangeStart = 7417, RefRangeEnd = 9059, XrefRangeStart = 7417, XrefRangeEnd = 9059, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ConstraintRotationOffset()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ConstraintRotationOffset.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007BAD RID: 31661 RVA: 0x001F7C38 File Offset: 0x001F5E38
		[CallerCount(124)]
		[CachedScanResults(RefRangeStart = 17067, RefRangeEnd = 17191, XrefRangeStart = 17067, XrefRangeEnd = 17191, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ConstraintRotationOffset(Transform transform)
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr))
		{
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(transform);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ConstraintRotationOffset.NativeMethodInfoPtr__ctor_Public_Void_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x17002A40 RID: 10816
		// (get) Token: 0x06007BAE RID: 31662 RVA: 0x001F7C9C File Offset: 0x001F5E9C
		public unsafe bool rotationChanged
		{
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 594187, XrefRangeEnd = 594189, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ConstraintRotationOffset.NativeMethodInfoPtr_get_rotationChanged_Private_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06007BAF RID: 31663 RVA: 0x001F7CEC File Offset: 0x001F5EEC
		// Note: this type is marked as 'beforefieldinit'.
		static ConstraintRotationOffset()
		{
			Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "RootMotion.FinalIK", "ConstraintRotationOffset");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr);
			ConstraintRotationOffset.NativeFieldInfoPtr_offset = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, "offset");
			ConstraintRotationOffset.NativeFieldInfoPtr_defaultRotation = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, "defaultRotation");
			ConstraintRotationOffset.NativeFieldInfoPtr_defaultLocalRotation = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, "defaultLocalRotation");
			ConstraintRotationOffset.NativeFieldInfoPtr_lastLocalRotation = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, "lastLocalRotation");
			ConstraintRotationOffset.NativeFieldInfoPtr_defaultTargetLocalRotation = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, "defaultTargetLocalRotation");
			ConstraintRotationOffset.NativeFieldInfoPtr_initiated = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, "initiated");
			ConstraintRotationOffset.NativeMethodInfoPtr_UpdateConstraint_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, 100672585);
			ConstraintRotationOffset.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, 100672586);
			ConstraintRotationOffset.NativeMethodInfoPtr__ctor_Public_Void_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, 100672587);
			ConstraintRotationOffset.NativeMethodInfoPtr_get_rotationChanged_Private_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ConstraintRotationOffset>.NativeClassPtr, 100672588);
		}

		// Token: 0x06007BB0 RID: 31664 RVA: 0x001F7628 File Offset: 0x001F5828
		public ConstraintRotationOffset(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17002A3A RID: 10810
		// (get) Token: 0x06007BB1 RID: 31665 RVA: 0x001F7DE4 File Offset: 0x001F5FE4
		// (set) Token: 0x06007BB2 RID: 31666 RVA: 0x001F7E0C File Offset: 0x001F600C
		public unsafe Quaternion offset
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_offset);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_offset)) = value;
			}
		}

		// Token: 0x17002A3B RID: 10811
		// (get) Token: 0x06007BB3 RID: 31667 RVA: 0x001F7E30 File Offset: 0x001F6030
		// (set) Token: 0x06007BB4 RID: 31668 RVA: 0x001F7E58 File Offset: 0x001F6058
		public unsafe Quaternion defaultRotation
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_defaultRotation);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_defaultRotation)) = value;
			}
		}

		// Token: 0x17002A3C RID: 10812
		// (get) Token: 0x06007BB5 RID: 31669 RVA: 0x001F7E7C File Offset: 0x001F607C
		// (set) Token: 0x06007BB6 RID: 31670 RVA: 0x001F7EA4 File Offset: 0x001F60A4
		public unsafe Quaternion defaultLocalRotation
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_defaultLocalRotation);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_defaultLocalRotation)) = value;
			}
		}

		// Token: 0x17002A3D RID: 10813
		// (get) Token: 0x06007BB7 RID: 31671 RVA: 0x001F7EC8 File Offset: 0x001F60C8
		// (set) Token: 0x06007BB8 RID: 31672 RVA: 0x001F7EF0 File Offset: 0x001F60F0
		public unsafe Quaternion lastLocalRotation
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_lastLocalRotation);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_lastLocalRotation)) = value;
			}
		}

		// Token: 0x17002A3E RID: 10814
		// (get) Token: 0x06007BB9 RID: 31673 RVA: 0x001F7F14 File Offset: 0x001F6114
		// (set) Token: 0x06007BBA RID: 31674 RVA: 0x001F7F3C File Offset: 0x001F613C
		public unsafe Quaternion defaultTargetLocalRotation
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_defaultTargetLocalRotation);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_defaultTargetLocalRotation)) = value;
			}
		}

		// Token: 0x17002A3F RID: 10815
		// (get) Token: 0x06007BBB RID: 31675 RVA: 0x001F7F60 File Offset: 0x001F6160
		// (set) Token: 0x06007BBC RID: 31676 RVA: 0x001F7F88 File Offset: 0x001F6188
		public unsafe bool initiated
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_initiated);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ConstraintRotationOffset.NativeFieldInfoPtr_initiated)) = value;
			}
		}

		// Token: 0x040052A7 RID: 21159
		private static readonly IntPtr NativeFieldInfoPtr_offset;

		// Token: 0x040052A8 RID: 21160
		private static readonly IntPtr NativeFieldInfoPtr_defaultRotation;

		// Token: 0x040052A9 RID: 21161
		private static readonly IntPtr NativeFieldInfoPtr_defaultLocalRotation;

		// Token: 0x040052AA RID: 21162
		private static readonly IntPtr NativeFieldInfoPtr_lastLocalRotation;

		// Token: 0x040052AB RID: 21163
		private static readonly IntPtr NativeFieldInfoPtr_defaultTargetLocalRotation;

		// Token: 0x040052AC RID: 21164
		private static readonly IntPtr NativeFieldInfoPtr_initiated;

		// Token: 0x040052AD RID: 21165
		private static readonly IntPtr NativeMethodInfoPtr_UpdateConstraint_Public_Virtual_Void_0;

		// Token: 0x040052AE RID: 21166
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x040052AF RID: 21167
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Transform_0;

		// Token: 0x040052B0 RID: 21168
		private static readonly IntPtr NativeMethodInfoPtr_get_rotationChanged_Private_get_Boolean_0;
	}
}
