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

// Token: 0x020000B7 RID: 183
public class LockPoint : MonoBehaviour
{
	// Token: 0x06001466 RID: 5222 RVA: 0x00058668 File Offset: 0x00056868
	[CallerCount(0)]
	public unsafe void SetLockState(bool locked)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref locked;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LockPoint.NativeMethodInfoPtr_SetLockState_Public_Void_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06001467 RID: 5223 RVA: 0x000586BC File Offset: 0x000568BC
	[CallerCount(0)]
	public unsafe bool GetLockState()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LockPoint.NativeMethodInfoPtr_GetLockState_Public_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x06001468 RID: 5224 RVA: 0x0005870C File Offset: 0x0005690C
	[CallerCount(0)]
	public unsafe void SetLockEnable(bool bEnable)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref bEnable;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LockPoint.NativeMethodInfoPtr_SetLockEnable_Public_Void_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06001469 RID: 5225 RVA: 0x00058760 File Offset: 0x00056960
	[CallerCount(0)]
	public unsafe bool GetLockEnable()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LockPoint.NativeMethodInfoPtr_GetLockEnable_Public_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x0600146A RID: 5226 RVA: 0x000587B0 File Offset: 0x000569B0
	[CallerCount(37)]
	[CachedScanResults(RefRangeStart = 231806, RefRangeEnd = 231843, XrefRangeStart = 231806, XrefRangeEnd = 231843, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe Transform GetTransform()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LockPoint.NativeMethodInfoPtr_GetTransform_Public_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		IntPtr intPtr3 = intPtr;
		return (intPtr3 != 0) ? new Transform(intPtr3) : null;
	}

	// Token: 0x0600146B RID: 5227 RVA: 0x00058808 File Offset: 0x00056A08
	[CallerCount(67)]
	[CachedScanResults(RefRangeStart = 166362, RefRangeEnd = 166429, XrefRangeStart = 166362, XrefRangeEnd = 166429, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe LockPoint()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<LockPoint>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LockPoint.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x0600146C RID: 5228 RVA: 0x00058854 File Offset: 0x00056A54
	// Note: this type is marked as 'beforefieldinit'.
	static LockPoint()
	{
		Il2CppClassPointerStore<LockPoint>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "LockPoint");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<LockPoint>.NativeClassPtr);
		LockPoint.NativeFieldInfoPtr_isLockEnabled = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, "isLockEnabled");
		LockPoint.NativeFieldInfoPtr_isLocked = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, "isLocked");
		LockPoint.NativeMethodInfoPtr_SetLockState_Public_Void_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, 100665234);
		LockPoint.NativeMethodInfoPtr_GetLockState_Public_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, 100665235);
		LockPoint.NativeMethodInfoPtr_SetLockEnable_Public_Void_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, 100665236);
		LockPoint.NativeMethodInfoPtr_GetLockEnable_Public_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, 100665237);
		LockPoint.NativeMethodInfoPtr_GetTransform_Public_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, 100665238);
		LockPoint.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LockPoint>.NativeClassPtr, 100665239);
	}

	// Token: 0x0600146D RID: 5229 RVA: 0x0000351C File Offset: 0x0000171C
	public LockPoint(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17000616 RID: 1558
	// (get) Token: 0x0600146E RID: 5230 RVA: 0x00058924 File Offset: 0x00056B24
	// (set) Token: 0x0600146F RID: 5231 RVA: 0x0005894C File Offset: 0x00056B4C
	public unsafe bool isLockEnabled
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(LockPoint.NativeFieldInfoPtr_isLockEnabled);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(LockPoint.NativeFieldInfoPtr_isLockEnabled)) = value;
		}
	}

	// Token: 0x17000617 RID: 1559
	// (get) Token: 0x06001470 RID: 5232 RVA: 0x00058970 File Offset: 0x00056B70
	// (set) Token: 0x06001471 RID: 5233 RVA: 0x00058998 File Offset: 0x00056B98
	public unsafe bool isLocked
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(LockPoint.NativeFieldInfoPtr_isLocked);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(LockPoint.NativeFieldInfoPtr_isLocked)) = value;
		}
	}

	// Token: 0x04000FF5 RID: 4085
	private static readonly IntPtr NativeFieldInfoPtr_isLockEnabled;

	// Token: 0x04000FF6 RID: 4086
	private static readonly IntPtr NativeFieldInfoPtr_isLocked;

	// Token: 0x04000FF7 RID: 4087
	private static readonly IntPtr NativeMethodInfoPtr_SetLockState_Public_Void_Boolean_0;

	// Token: 0x04000FF8 RID: 4088
	private static readonly IntPtr NativeMethodInfoPtr_GetLockState_Public_Boolean_0;

	// Token: 0x04000FF9 RID: 4089
	private static readonly IntPtr NativeMethodInfoPtr_SetLockEnable_Public_Void_Boolean_0;

	// Token: 0x04000FFA RID: 4090
	private static readonly IntPtr NativeMethodInfoPtr_GetLockEnable_Public_Boolean_0;

	// Token: 0x04000FFB RID: 4091
	private static readonly IntPtr NativeMethodInfoPtr_GetTransform_Public_Transform_0;

	// Token: 0x04000FFC RID: 4092
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
