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

namespace UnityEngine.PostProcessing
{
	// Token: 0x02000554 RID: 1364
	[Serializable]
	public class BuiltinDebugViewsModel : PostProcessingModel
	{
		// Token: 0x170032CA RID: 13002
		// (get) Token: 0x06009603 RID: 38403 RVA: 0x00268050 File Offset: 0x00266250
		// (set) Token: 0x06009604 RID: 38404 RVA: 0x002680A0 File Offset: 0x002662A0
		public unsafe BuiltinDebugViewsModel.Settings settings
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.NativeMethodInfoPtr_get_settings_Public_get_Settings_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
			[CallerCount(0)]
			set
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref value;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.NativeMethodInfoPtr_set_settings_Public_set_Void_Settings_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}
		}

		// Token: 0x170032CB RID: 13003
		// (get) Token: 0x06009605 RID: 38405 RVA: 0x002680F4 File Offset: 0x002662F4
		public unsafe bool willInterrupt
		{
			[CallerCount(2)]
			[CachedScanResults(RefRangeStart = 616406, RefRangeEnd = 616408, XrefRangeStart = 616406, XrefRangeEnd = 616406, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.NativeMethodInfoPtr_get_willInterrupt_Public_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06009606 RID: 38406 RVA: 0x00268144 File Offset: 0x00266344
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 616408, XrefRangeEnd = 616409, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void Reset()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), BuiltinDebugViewsModel.NativeMethodInfoPtr_Reset_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009607 RID: 38407 RVA: 0x00268194 File Offset: 0x00266394
		[CallerCount(6)]
		[CachedScanResults(RefRangeStart = 616409, RefRangeEnd = 616415, XrefRangeStart = 616409, XrefRangeEnd = 616409, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe bool IsModeActive(BuiltinDebugViewsModel.Mode mode)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref mode;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.NativeMethodInfoPtr_IsModeActive_Public_Boolean_Mode_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06009608 RID: 38408 RVA: 0x002681F8 File Offset: 0x002663F8
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 616417, RefRangeEnd = 616418, XrefRangeStart = 616415, XrefRangeEnd = 616417, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe BuiltinDebugViewsModel()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009609 RID: 38409 RVA: 0x00268244 File Offset: 0x00266444
		// Note: this type is marked as 'beforefieldinit'.
		static BuiltinDebugViewsModel()
		{
			Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityEngine.PostProcessing", "BuiltinDebugViewsModel");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr);
			BuiltinDebugViewsModel.NativeFieldInfoPtr_m_Settings = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, "m_Settings");
			BuiltinDebugViewsModel.NativeMethodInfoPtr_get_settings_Public_get_Settings_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100674966);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_set_settings_Public_set_Void_Settings_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100674967);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_get_willInterrupt_Public_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100674968);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_Reset_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100674969);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_IsModeActive_Public_Boolean_Mode_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100674970);
			BuiltinDebugViewsModel.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100674971);
		}

		// Token: 0x0600960A RID: 38410 RVA: 0x002671A0 File Offset: 0x002653A0
		public BuiltinDebugViewsModel(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x170032C9 RID: 13001
		// (get) Token: 0x0600960B RID: 38411 RVA: 0x00268300 File Offset: 0x00266500
		// (set) Token: 0x0600960C RID: 38412 RVA: 0x00268328 File Offset: 0x00266528
		public unsafe BuiltinDebugViewsModel.Settings m_Settings
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BuiltinDebugViewsModel.NativeFieldInfoPtr_m_Settings);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(BuiltinDebugViewsModel.NativeFieldInfoPtr_m_Settings)) = value;
			}
		}

		// Token: 0x04006425 RID: 25637
		private static readonly IntPtr NativeFieldInfoPtr_m_Settings;

		// Token: 0x04006426 RID: 25638
		private static readonly IntPtr NativeMethodInfoPtr_get_settings_Public_get_Settings_0;

		// Token: 0x04006427 RID: 25639
		private static readonly IntPtr NativeMethodInfoPtr_set_settings_Public_set_Void_Settings_0;

		// Token: 0x04006428 RID: 25640
		private static readonly IntPtr NativeMethodInfoPtr_get_willInterrupt_Public_get_Boolean_0;

		// Token: 0x04006429 RID: 25641
		private static readonly IntPtr NativeMethodInfoPtr_Reset_Public_Virtual_Void_0;

		// Token: 0x0400642A RID: 25642
		private static readonly IntPtr NativeMethodInfoPtr_IsModeActive_Public_Boolean_Mode_0;

		// Token: 0x0400642B RID: 25643
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x02000555 RID: 1365
		[Serializable]
		[StructLayout(LayoutKind.Explicit)]
		public struct DepthSettings
		{
			// Token: 0x170032CC RID: 13004
			// (get) Token: 0x0600960D RID: 38413 RVA: 0x0026834C File Offset: 0x0026654C
			public unsafe static BuiltinDebugViewsModel.DepthSettings defaultSettings
			{
				[CallerCount(0)]
				get
				{
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.DepthSettings.NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_DepthSettings_0, 0, (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x0600960E RID: 38414 RVA: 0x00268390 File Offset: 0x00266590
			// Note: this type is marked as 'beforefieldinit'.
			static DepthSettings()
			{
				Il2CppClassPointerStore<BuiltinDebugViewsModel.DepthSettings>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, "DepthSettings");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<BuiltinDebugViewsModel.DepthSettings>.NativeClassPtr);
				BuiltinDebugViewsModel.DepthSettings.NativeFieldInfoPtr_scale = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.DepthSettings>.NativeClassPtr, "scale");
				BuiltinDebugViewsModel.DepthSettings.NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_DepthSettings_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel.DepthSettings>.NativeClassPtr, 100674972);
			}

			// Token: 0x0600960F RID: 38415 RVA: 0x002683E3 File Offset: 0x002665E3
			public Object BoxIl2CppObject()
			{
				return new Object(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<BuiltinDebugViewsModel.DepthSettings>.NativeClassPtr, ref this));
			}

			// Token: 0x0400642C RID: 25644
			private static readonly IntPtr NativeFieldInfoPtr_scale;

			// Token: 0x0400642D RID: 25645
			private static readonly IntPtr NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_DepthSettings_0;

			// Token: 0x0400642E RID: 25646
			[FieldOffset(0)]
			public float scale;
		}

		// Token: 0x02000556 RID: 1366
		[Serializable]
		[StructLayout(LayoutKind.Explicit)]
		public struct MotionVectorsSettings
		{
			// Token: 0x170032CD RID: 13005
			// (get) Token: 0x06009610 RID: 38416 RVA: 0x002683F8 File Offset: 0x002665F8
			public unsafe static BuiltinDebugViewsModel.MotionVectorsSettings defaultSettings
			{
				[CallerCount(0)]
				get
				{
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.MotionVectorsSettings.NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_MotionVectorsSettings_0, 0, (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06009611 RID: 38417 RVA: 0x0026843C File Offset: 0x0026663C
			// Note: this type is marked as 'beforefieldinit'.
			static MotionVectorsSettings()
			{
				Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, "MotionVectorsSettings");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr);
				BuiltinDebugViewsModel.MotionVectorsSettings.NativeFieldInfoPtr_sourceOpacity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, "sourceOpacity");
				BuiltinDebugViewsModel.MotionVectorsSettings.NativeFieldInfoPtr_motionImageOpacity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, "motionImageOpacity");
				BuiltinDebugViewsModel.MotionVectorsSettings.NativeFieldInfoPtr_motionImageAmplitude = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, "motionImageAmplitude");
				BuiltinDebugViewsModel.MotionVectorsSettings.NativeFieldInfoPtr_motionVectorsOpacity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, "motionVectorsOpacity");
				BuiltinDebugViewsModel.MotionVectorsSettings.NativeFieldInfoPtr_motionVectorsResolution = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, "motionVectorsResolution");
				BuiltinDebugViewsModel.MotionVectorsSettings.NativeFieldInfoPtr_motionVectorsAmplitude = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, "motionVectorsAmplitude");
				BuiltinDebugViewsModel.MotionVectorsSettings.NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_MotionVectorsSettings_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, 100674973);
			}

			// Token: 0x06009612 RID: 38418 RVA: 0x002684F3 File Offset: 0x002666F3
			public Object BoxIl2CppObject()
			{
				return new Object(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, ref this));
			}

			// Token: 0x0400642F RID: 25647
			private static readonly IntPtr NativeFieldInfoPtr_sourceOpacity;

			// Token: 0x04006430 RID: 25648
			private static readonly IntPtr NativeFieldInfoPtr_motionImageOpacity;

			// Token: 0x04006431 RID: 25649
			private static readonly IntPtr NativeFieldInfoPtr_motionImageAmplitude;

			// Token: 0x04006432 RID: 25650
			private static readonly IntPtr NativeFieldInfoPtr_motionVectorsOpacity;

			// Token: 0x04006433 RID: 25651
			private static readonly IntPtr NativeFieldInfoPtr_motionVectorsResolution;

			// Token: 0x04006434 RID: 25652
			private static readonly IntPtr NativeFieldInfoPtr_motionVectorsAmplitude;

			// Token: 0x04006435 RID: 25653
			private static readonly IntPtr NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_MotionVectorsSettings_0;

			// Token: 0x04006436 RID: 25654
			[FieldOffset(0)]
			public float sourceOpacity;

			// Token: 0x04006437 RID: 25655
			[FieldOffset(4)]
			public float motionImageOpacity;

			// Token: 0x04006438 RID: 25656
			[FieldOffset(8)]
			public float motionImageAmplitude;

			// Token: 0x04006439 RID: 25657
			[FieldOffset(12)]
			public float motionVectorsOpacity;

			// Token: 0x0400643A RID: 25658
			[FieldOffset(16)]
			public int motionVectorsResolution;

			// Token: 0x0400643B RID: 25659
			[FieldOffset(20)]
			public float motionVectorsAmplitude;
		}

		// Token: 0x02000557 RID: 1367
		public enum Mode
		{
			// Token: 0x0400643D RID: 25661
			None,
			// Token: 0x0400643E RID: 25662
			Depth,
			// Token: 0x0400643F RID: 25663
			Normals,
			// Token: 0x04006440 RID: 25664
			MotionVectors,
			// Token: 0x04006441 RID: 25665
			AmbientOcclusion,
			// Token: 0x04006442 RID: 25666
			EyeAdaptation,
			// Token: 0x04006443 RID: 25667
			FocusPlane,
			// Token: 0x04006444 RID: 25668
			PreGradingLog,
			// Token: 0x04006445 RID: 25669
			LogLut,
			// Token: 0x04006446 RID: 25670
			UserLut
		}

		// Token: 0x02000558 RID: 1368
		[Serializable]
		[StructLayout(LayoutKind.Explicit)]
		public struct Settings
		{
			// Token: 0x170032CE RID: 13006
			// (get) Token: 0x06009613 RID: 38419 RVA: 0x00268508 File Offset: 0x00266708
			public unsafe static BuiltinDebugViewsModel.Settings defaultSettings
			{
				[CallerCount(2)]
				[CachedScanResults(RefRangeStart = 616404, RefRangeEnd = 616406, XrefRangeStart = 616404, XrefRangeEnd = 616404, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(BuiltinDebugViewsModel.Settings.NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_Settings_0, 0, (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06009614 RID: 38420 RVA: 0x0026854C File Offset: 0x0026674C
			// Note: this type is marked as 'beforefieldinit'.
			static Settings()
			{
				Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, "Settings");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr);
				BuiltinDebugViewsModel.Settings.NativeFieldInfoPtr_mode = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr, "mode");
				BuiltinDebugViewsModel.Settings.NativeFieldInfoPtr_depth = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr, "depth");
				BuiltinDebugViewsModel.Settings.NativeFieldInfoPtr_motionVectors = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr, "motionVectors");
				BuiltinDebugViewsModel.Settings.NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_Settings_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr, 100674974);
			}

			// Token: 0x06009615 RID: 38421 RVA: 0x002685C7 File Offset: 0x002667C7
			public Object BoxIl2CppObject()
			{
				return new Object(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr, ref this));
			}

			// Token: 0x04006447 RID: 25671
			private static readonly IntPtr NativeFieldInfoPtr_mode;

			// Token: 0x04006448 RID: 25672
			private static readonly IntPtr NativeFieldInfoPtr_depth;

			// Token: 0x04006449 RID: 25673
			private static readonly IntPtr NativeFieldInfoPtr_motionVectors;

			// Token: 0x0400644A RID: 25674
			private static readonly IntPtr NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_Settings_0;

			// Token: 0x0400644B RID: 25675
			[FieldOffset(0)]
			public BuiltinDebugViewsModel.Mode mode;

			// Token: 0x0400644C RID: 25676
			[FieldOffset(4)]
			public BuiltinDebugViewsModel.DepthSettings depth;

			// Token: 0x0400644D RID: 25677
			[FieldOffset(8)]
			public BuiltinDebugViewsModel.MotionVectorsSettings motionVectors;
		}
	}
}
