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

namespace Obi
{
	// Token: 0x02000508 RID: 1288
	public class ObiShapeTracker : Il2CppSystem.Object
	{
		// Token: 0x1700326B RID: 12907
		// (get) Token: 0x060094A5 RID: 38053 RVA: 0x00262EA0 File Offset: 0x002610A0
		public unsafe IntPtr OniShape
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiShapeTracker.NativeMethodInfoPtr_get_OniShape_Public_get_IntPtr_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x060094A6 RID: 38054 RVA: 0x00262EF0 File Offset: 0x002610F0
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 639977, RefRangeEnd = 639979, XrefRangeStart = 639975, XrefRangeEnd = 639977, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe virtual void Destroy()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), ObiShapeTracker.NativeMethodInfoPtr_Destroy_Public_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060094A7 RID: 38055 RVA: 0x00262F40 File Offset: 0x00261140
		[CallerCount(0)]
		public unsafe virtual void UpdateIfNeeded()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), ObiShapeTracker.NativeMethodInfoPtr_UpdateIfNeeded_Public_Abstract_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060094A8 RID: 38056 RVA: 0x00262F90 File Offset: 0x00261190
		[CallerCount(15)]
		[CachedScanResults(RefRangeStart = 639981, RefRangeEnd = 639996, XrefRangeStart = 639979, XrefRangeEnd = 639981, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ObiShapeTracker()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiShapeTracker.NativeMethodInfoPtr__ctor_Protected_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060094A9 RID: 38057 RVA: 0x00262FDC File Offset: 0x002611DC
		// Note: this type is marked as 'beforefieldinit'.
		static ObiShapeTracker()
		{
			Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "Obi", "ObiShapeTracker");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr);
			ObiShapeTracker.NativeFieldInfoPtr_collider = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr, "collider");
			ObiShapeTracker.NativeFieldInfoPtr_adaptor = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr, "adaptor");
			ObiShapeTracker.NativeFieldInfoPtr_oniShape = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr, "oniShape");
			ObiShapeTracker.NativeMethodInfoPtr_get_OniShape_Public_get_IntPtr_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr, 100674781);
			ObiShapeTracker.NativeMethodInfoPtr_Destroy_Public_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr, 100674782);
			ObiShapeTracker.NativeMethodInfoPtr_UpdateIfNeeded_Public_Abstract_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr, 100674783);
			ObiShapeTracker.NativeMethodInfoPtr__ctor_Protected_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiShapeTracker>.NativeClassPtr, 100674784);
		}

		// Token: 0x060094AA RID: 38058 RVA: 0x0000A74C File Offset: 0x0000894C
		public ObiShapeTracker(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003268 RID: 12904
		// (get) Token: 0x060094AB RID: 38059 RVA: 0x00263098 File Offset: 0x00261298
		// (set) Token: 0x060094AC RID: 38060 RVA: 0x002630CC File Offset: 0x002612CC
		public unsafe Component collider
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiShapeTracker.NativeFieldInfoPtr_collider);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Component(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiShapeTracker.NativeFieldInfoPtr_collider), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003269 RID: 12905
		// (get) Token: 0x060094AD RID: 38061 RVA: 0x002630F4 File Offset: 0x002612F4
		// (set) Token: 0x060094AE RID: 38062 RVA: 0x0026311C File Offset: 0x0026131C
		public unsafe Oni.Shape adaptor
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiShapeTracker.NativeFieldInfoPtr_adaptor);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiShapeTracker.NativeFieldInfoPtr_adaptor)) = value;
			}
		}

		// Token: 0x1700326A RID: 12906
		// (get) Token: 0x060094AF RID: 38063 RVA: 0x00263140 File Offset: 0x00261340
		// (set) Token: 0x060094B0 RID: 38064 RVA: 0x00263168 File Offset: 0x00261368
		public unsafe IntPtr oniShape
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiShapeTracker.NativeFieldInfoPtr_oniShape);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiShapeTracker.NativeFieldInfoPtr_oniShape)) = value;
			}
		}

		// Token: 0x0400632B RID: 25387
		private static readonly IntPtr NativeFieldInfoPtr_collider;

		// Token: 0x0400632C RID: 25388
		private static readonly IntPtr NativeFieldInfoPtr_adaptor;

		// Token: 0x0400632D RID: 25389
		private static readonly IntPtr NativeFieldInfoPtr_oniShape;

		// Token: 0x0400632E RID: 25390
		private static readonly IntPtr NativeMethodInfoPtr_get_OniShape_Public_get_IntPtr_0;

		// Token: 0x0400632F RID: 25391
		private static readonly IntPtr NativeMethodInfoPtr_Destroy_Public_Virtual_New_Void_0;

		// Token: 0x04006330 RID: 25392
		private static readonly IntPtr NativeMethodInfoPtr_UpdateIfNeeded_Public_Abstract_Virtual_New_Void_0;

		// Token: 0x04006331 RID: 25393
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Protected_Void_0;
	}
}
