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

namespace Obi.CrossPlatformInput
{
	// Token: 0x0200055D RID: 1373
	public class AxisTouchButton : MonoBehaviour
	{
		// Token: 0x06009A61 RID: 39521 RVA: 0x0027C0FC File Offset: 0x0027A2FC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 645988, XrefRangeEnd = 646006, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnEnable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTouchButton.NativeMethodInfoPtr_OnEnable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A62 RID: 39522 RVA: 0x0027C140 File Offset: 0x0027A340
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 646025, RefRangeEnd = 646027, XrefRangeStart = 646006, XrefRangeEnd = 646025, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void FindPairedButton()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTouchButton.NativeMethodInfoPtr_FindPairedButton_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A63 RID: 39523 RVA: 0x0027C184 File Offset: 0x0027A384
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 646027, XrefRangeEnd = 646029, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTouchButton.NativeMethodInfoPtr_OnDisable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A64 RID: 39524 RVA: 0x0027C1C8 File Offset: 0x0027A3C8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 646029, XrefRangeEnd = 646036, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe virtual void OnPointerDown(PointerEventData data)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(data);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTouchButton.NativeMethodInfoPtr_OnPointerDown_Public_Virtual_Final_New_Void_PointerEventData_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009A65 RID: 39525 RVA: 0x0027C224 File Offset: 0x0027A424
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 646036, XrefRangeEnd = 646038, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe virtual void OnPointerUp(PointerEventData data)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(data);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTouchButton.NativeMethodInfoPtr_OnPointerUp_Public_Virtual_Final_New_Void_PointerEventData_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009A66 RID: 39526 RVA: 0x0027C280 File Offset: 0x0027A480
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 646038, XrefRangeEnd = 646042, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe AxisTouchButton()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(AxisTouchButton.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A67 RID: 39527 RVA: 0x0027C2CC File Offset: 0x0027A4CC
		// Note: this type is marked as 'beforefieldinit'.
		static AxisTouchButton()
		{
			Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "Obi.CrossPlatformInput", "AxisTouchButton");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr);
			AxisTouchButton.NativeFieldInfoPtr_axisName = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, "axisName");
			AxisTouchButton.NativeFieldInfoPtr_axisValue = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, "axisValue");
			AxisTouchButton.NativeFieldInfoPtr_responseSpeed = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, "responseSpeed");
			AxisTouchButton.NativeFieldInfoPtr_returnToCentreSpeed = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, "returnToCentreSpeed");
			AxisTouchButton.NativeFieldInfoPtr_m_PairedWith = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, "m_PairedWith");
			AxisTouchButton.NativeFieldInfoPtr_m_Axis = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, "m_Axis");
			AxisTouchButton.NativeMethodInfoPtr_OnEnable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, 100675348);
			AxisTouchButton.NativeMethodInfoPtr_FindPairedButton_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, 100675349);
			AxisTouchButton.NativeMethodInfoPtr_OnDisable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, 100675350);
			AxisTouchButton.NativeMethodInfoPtr_OnPointerDown_Public_Virtual_Final_New_Void_PointerEventData_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, 100675351);
			AxisTouchButton.NativeMethodInfoPtr_OnPointerUp_Public_Virtual_Final_New_Void_PointerEventData_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, 100675352);
			AxisTouchButton.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<AxisTouchButton>.NativeClassPtr, 100675353);
		}

		// Token: 0x06009A68 RID: 39528 RVA: 0x0000351C File Offset: 0x0000171C
		public AxisTouchButton(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x1700341B RID: 13339
		// (get) Token: 0x06009A69 RID: 39529 RVA: 0x0027C3EC File Offset: 0x0027A5EC
		// (set) Token: 0x06009A6A RID: 39530 RVA: 0x0027C415 File Offset: 0x0027A615
		public unsafe string axisName
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_axisName);
				return IL2CPP.Il2CppStringToManaged(*intPtr);
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_axisName), IL2CPP.ManagedStringToIl2Cpp(value));
			}
		}

		// Token: 0x1700341C RID: 13340
		// (get) Token: 0x06009A6B RID: 39531 RVA: 0x0027C43C File Offset: 0x0027A63C
		// (set) Token: 0x06009A6C RID: 39532 RVA: 0x0027C464 File Offset: 0x0027A664
		public unsafe float axisValue
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_axisValue);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_axisValue)) = value;
			}
		}

		// Token: 0x1700341D RID: 13341
		// (get) Token: 0x06009A6D RID: 39533 RVA: 0x0027C488 File Offset: 0x0027A688
		// (set) Token: 0x06009A6E RID: 39534 RVA: 0x0027C4B0 File Offset: 0x0027A6B0
		public unsafe float responseSpeed
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_responseSpeed);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_responseSpeed)) = value;
			}
		}

		// Token: 0x1700341E RID: 13342
		// (get) Token: 0x06009A6F RID: 39535 RVA: 0x0027C4D4 File Offset: 0x0027A6D4
		// (set) Token: 0x06009A70 RID: 39536 RVA: 0x0027C4FC File Offset: 0x0027A6FC
		public unsafe float returnToCentreSpeed
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_returnToCentreSpeed);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_returnToCentreSpeed)) = value;
			}
		}

		// Token: 0x1700341F RID: 13343
		// (get) Token: 0x06009A71 RID: 39537 RVA: 0x0027C520 File Offset: 0x0027A720
		// (set) Token: 0x06009A72 RID: 39538 RVA: 0x0027C554 File Offset: 0x0027A754
		public unsafe AxisTouchButton m_PairedWith
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_m_PairedWith);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new AxisTouchButton(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_m_PairedWith), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003420 RID: 13344
		// (get) Token: 0x06009A73 RID: 39539 RVA: 0x0027C57C File Offset: 0x0027A77C
		// (set) Token: 0x06009A74 RID: 39540 RVA: 0x0027C5B0 File Offset: 0x0027A7B0
		public unsafe CrossPlatformInputManager.VirtualAxis m_Axis
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_m_Axis);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new CrossPlatformInputManager.VirtualAxis(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(AxisTouchButton.NativeFieldInfoPtr_m_Axis), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x04006702 RID: 26370
		private static readonly IntPtr NativeFieldInfoPtr_axisName;

		// Token: 0x04006703 RID: 26371
		private static readonly IntPtr NativeFieldInfoPtr_axisValue;

		// Token: 0x04006704 RID: 26372
		private static readonly IntPtr NativeFieldInfoPtr_responseSpeed;

		// Token: 0x04006705 RID: 26373
		private static readonly IntPtr NativeFieldInfoPtr_returnToCentreSpeed;

		// Token: 0x04006706 RID: 26374
		private static readonly IntPtr NativeFieldInfoPtr_m_PairedWith;

		// Token: 0x04006707 RID: 26375
		private static readonly IntPtr NativeFieldInfoPtr_m_Axis;

		// Token: 0x04006708 RID: 26376
		private static readonly IntPtr NativeMethodInfoPtr_OnEnable_Private_Void_0;

		// Token: 0x04006709 RID: 26377
		private static readonly IntPtr NativeMethodInfoPtr_FindPairedButton_Private_Void_0;

		// Token: 0x0400670A RID: 26378
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Private_Void_0;

		// Token: 0x0400670B RID: 26379
		private static readonly IntPtr NativeMethodInfoPtr_OnPointerDown_Public_Virtual_Final_New_Void_PointerEventData_0;

		// Token: 0x0400670C RID: 26380
		private static readonly IntPtr NativeMethodInfoPtr_OnPointerUp_Public_Virtual_Final_New_Void_PointerEventData_0;

		// Token: 0x0400670D RID: 26381
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
