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

namespace UnityEngine.PostProcessing
{
	// Token: 0x020005AC RID: 1452
	[Serializable]
	public class BuiltinDebugViewsModel : PostProcessingModel
	{
		// Token: 0x17003565 RID: 13669
		// (get) Token: 0x06009E56 RID: 40534 RVA: 0x0028AD8C File Offset: 0x00288F8C
		// (set) Token: 0x06009E57 RID: 40535 RVA: 0x0028ADDC File Offset: 0x00288FDC
		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: 0x17003566 RID: 13670
		// (get) Token: 0x06009E58 RID: 40536 RVA: 0x0028AE30 File Offset: 0x00289030
		public unsafe bool willInterrupt
		{
			[CallerCount(2)]
			[CachedScanResults(RefRangeStart = 648716, RefRangeEnd = 648718, XrefRangeStart = 648716, XrefRangeEnd = 648716, 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: 0x06009E59 RID: 40537 RVA: 0x0028AE80 File Offset: 0x00289080
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 648718, XrefRangeEnd = 648719, 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: 0x06009E5A RID: 40538 RVA: 0x0028AED0 File Offset: 0x002890D0
		[CallerCount(6)]
		[CachedScanResults(RefRangeStart = 648719, RefRangeEnd = 648725, XrefRangeStart = 648719, XrefRangeEnd = 648719, 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: 0x06009E5B RID: 40539 RVA: 0x0028AF34 File Offset: 0x00289134
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 648727, RefRangeEnd = 648728, XrefRangeStart = 648725, XrefRangeEnd = 648727, 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: 0x06009E5C RID: 40540 RVA: 0x0028AF80 File Offset: 0x00289180
		// 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, 100675679);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_set_settings_Public_set_Void_Settings_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100675680);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_get_willInterrupt_Public_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100675681);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_Reset_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100675682);
			BuiltinDebugViewsModel.NativeMethodInfoPtr_IsModeActive_Public_Boolean_Mode_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100675683);
			BuiltinDebugViewsModel.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<BuiltinDebugViewsModel>.NativeClassPtr, 100675684);
		}

		// Token: 0x06009E5D RID: 40541 RVA: 0x00289EDC File Offset: 0x002880DC
		public BuiltinDebugViewsModel(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003564 RID: 13668
		// (get) Token: 0x06009E5E RID: 40542 RVA: 0x0028B03C File Offset: 0x0028923C
		// (set) Token: 0x06009E5F RID: 40543 RVA: 0x0028B064 File Offset: 0x00289264
		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: 0x040069CE RID: 27086
		private static readonly IntPtr NativeFieldInfoPtr_m_Settings;

		// Token: 0x040069CF RID: 27087
		private static readonly IntPtr NativeMethodInfoPtr_get_settings_Public_get_Settings_0;

		// Token: 0x040069D0 RID: 27088
		private static readonly IntPtr NativeMethodInfoPtr_set_settings_Public_set_Void_Settings_0;

		// Token: 0x040069D1 RID: 27089
		private static readonly IntPtr NativeMethodInfoPtr_get_willInterrupt_Public_get_Boolean_0;

		// Token: 0x040069D2 RID: 27090
		private static readonly IntPtr NativeMethodInfoPtr_Reset_Public_Virtual_Void_0;

		// Token: 0x040069D3 RID: 27091
		private static readonly IntPtr NativeMethodInfoPtr_IsModeActive_Public_Boolean_Mode_0;

		// Token: 0x040069D4 RID: 27092
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x020005AD RID: 1453
		[Serializable]
		[StructLayout(2)]
		public struct DepthSettings
		{
			// Token: 0x17003567 RID: 13671
			// (get) Token: 0x06009E60 RID: 40544 RVA: 0x0028B088 File Offset: 0x00289288
			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: 0x06009E61 RID: 40545 RVA: 0x0028B0CC File Offset: 0x002892CC
			// 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, 100675685);
			}

			// Token: 0x06009E62 RID: 40546 RVA: 0x0028B11F File Offset: 0x0028931F
			public Object BoxIl2CppObject()
			{
				return new Object(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<BuiltinDebugViewsModel.DepthSettings>.NativeClassPtr, ref this));
			}

			// Token: 0x040069D5 RID: 27093
			private static readonly IntPtr NativeFieldInfoPtr_scale;

			// Token: 0x040069D6 RID: 27094
			private static readonly IntPtr NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_DepthSettings_0;

			// Token: 0x040069D7 RID: 27095
			[FieldOffset(0)]
			public float scale;
		}

		// Token: 0x020005AE RID: 1454
		[Serializable]
		[StructLayout(2)]
		public struct MotionVectorsSettings
		{
			// Token: 0x17003568 RID: 13672
			// (get) Token: 0x06009E63 RID: 40547 RVA: 0x0028B134 File Offset: 0x00289334
			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: 0x06009E64 RID: 40548 RVA: 0x0028B178 File Offset: 0x00289378
			// 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, 100675686);
			}

			// Token: 0x06009E65 RID: 40549 RVA: 0x0028B22F File Offset: 0x0028942F
			public Object BoxIl2CppObject()
			{
				return new Object(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<BuiltinDebugViewsModel.MotionVectorsSettings>.NativeClassPtr, ref this));
			}

			// Token: 0x040069D8 RID: 27096
			private static readonly IntPtr NativeFieldInfoPtr_sourceOpacity;

			// Token: 0x040069D9 RID: 27097
			private static readonly IntPtr NativeFieldInfoPtr_motionImageOpacity;

			// Token: 0x040069DA RID: 27098
			private static readonly IntPtr NativeFieldInfoPtr_motionImageAmplitude;

			// Token: 0x040069DB RID: 27099
			private static readonly IntPtr NativeFieldInfoPtr_motionVectorsOpacity;

			// Token: 0x040069DC RID: 27100
			private static readonly IntPtr NativeFieldInfoPtr_motionVectorsResolution;

			// Token: 0x040069DD RID: 27101
			private static readonly IntPtr NativeFieldInfoPtr_motionVectorsAmplitude;

			// Token: 0x040069DE RID: 27102
			private static readonly IntPtr NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_MotionVectorsSettings_0;

			// Token: 0x040069DF RID: 27103
			[FieldOffset(0)]
			public float sourceOpacity;

			// Token: 0x040069E0 RID: 27104
			[FieldOffset(4)]
			public float motionImageOpacity;

			// Token: 0x040069E1 RID: 27105
			[FieldOffset(8)]
			public float motionImageAmplitude;

			// Token: 0x040069E2 RID: 27106
			[FieldOffset(12)]
			public float motionVectorsOpacity;

			// Token: 0x040069E3 RID: 27107
			[FieldOffset(16)]
			public int motionVectorsResolution;

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

		// Token: 0x020005AF RID: 1455
		public enum Mode
		{
			// Token: 0x040069E6 RID: 27110
			None,
			// Token: 0x040069E7 RID: 27111
			Depth,
			// Token: 0x040069E8 RID: 27112
			Normals,
			// Token: 0x040069E9 RID: 27113
			MotionVectors,
			// Token: 0x040069EA RID: 27114
			AmbientOcclusion,
			// Token: 0x040069EB RID: 27115
			EyeAdaptation,
			// Token: 0x040069EC RID: 27116
			FocusPlane,
			// Token: 0x040069ED RID: 27117
			PreGradingLog,
			// Token: 0x040069EE RID: 27118
			LogLut,
			// Token: 0x040069EF RID: 27119
			UserLut
		}

		// Token: 0x020005B0 RID: 1456
		[Serializable]
		[StructLayout(2)]
		public struct Settings
		{
			// Token: 0x17003569 RID: 13673
			// (get) Token: 0x06009E66 RID: 40550 RVA: 0x0028B244 File Offset: 0x00289444
			public unsafe static BuiltinDebugViewsModel.Settings defaultSettings
			{
				[CallerCount(2)]
				[CachedScanResults(RefRangeStart = 648714, RefRangeEnd = 648716, XrefRangeStart = 648714, XrefRangeEnd = 648714, 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: 0x06009E67 RID: 40551 RVA: 0x0028B288 File Offset: 0x00289488
			// 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, 100675687);
			}

			// Token: 0x06009E68 RID: 40552 RVA: 0x0028B303 File Offset: 0x00289503
			public Object BoxIl2CppObject()
			{
				return new Object(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<BuiltinDebugViewsModel.Settings>.NativeClassPtr, ref this));
			}

			// Token: 0x040069F0 RID: 27120
			private static readonly IntPtr NativeFieldInfoPtr_mode;

			// Token: 0x040069F1 RID: 27121
			private static readonly IntPtr NativeFieldInfoPtr_depth;

			// Token: 0x040069F2 RID: 27122
			private static readonly IntPtr NativeFieldInfoPtr_motionVectors;

			// Token: 0x040069F3 RID: 27123
			private static readonly IntPtr NativeMethodInfoPtr_get_defaultSettings_Public_Static_get_Settings_0;

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

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

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