using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
using Il2CppSystem;

namespace UnityEngine.PostProcessing
{
	// Token: 0x0200052C RID: 1324
	public sealed class DitheringComponent : PostProcessingComponentRenderTexture<DitheringModel>
	{
		// Token: 0x17003226 RID: 12838
		// (get) Token: 0x0600943A RID: 37946 RVA: 0x002621DC File Offset: 0x002603DC
		public unsafe override bool active
		{
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 615284, XrefRangeEnd = 615285, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(DitheringComponent.NativeMethodInfoPtr_get_active_Public_Virtual_get_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x0600943B RID: 37947 RVA: 0x0026222C File Offset: 0x0026042C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 615285, XrefRangeEnd = 615286, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(DitheringComponent.NativeMethodInfoPtr_OnDisable_Public_Virtual_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600943C RID: 37948 RVA: 0x00262270 File Offset: 0x00260470
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 615286, XrefRangeEnd = 615299, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void LoadNoiseTextures()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(DitheringComponent.NativeMethodInfoPtr_LoadNoiseTextures_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600943D RID: 37949 RVA: 0x002622B4 File Offset: 0x002604B4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 615299, XrefRangeEnd = 615327, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void Prepare(Material uberMaterial)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(uberMaterial);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(DitheringComponent.NativeMethodInfoPtr_Prepare_Public_Virtual_Void_Material_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x0600943E RID: 37950 RVA: 0x00262310 File Offset: 0x00260510
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 615330, RefRangeEnd = 615331, XrefRangeStart = 615327, XrefRangeEnd = 615330, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe DitheringComponent()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(DitheringComponent.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600943F RID: 37951 RVA: 0x0026235C File Offset: 0x0026055C
		// Note: this type is marked as 'beforefieldinit'.
		static DitheringComponent()
		{
			Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityEngine.PostProcessing", "DitheringComponent");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr);
			DitheringComponent.NativeFieldInfoPtr_noiseTextures = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, "noiseTextures");
			DitheringComponent.NativeFieldInfoPtr_textureIndex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, "textureIndex");
			DitheringComponent.NativeFieldInfoPtr_k_TextureCount = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, "k_TextureCount");
			DitheringComponent.NativeMethodInfoPtr_get_active_Public_Virtual_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, 100674854);
			DitheringComponent.NativeMethodInfoPtr_OnDisable_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, 100674855);
			DitheringComponent.NativeMethodInfoPtr_LoadNoiseTextures_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, 100674856);
			DitheringComponent.NativeMethodInfoPtr_Prepare_Public_Virtual_Void_Material_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, 100674857);
			DitheringComponent.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, 100674858);
		}

		// Token: 0x06009440 RID: 37952 RVA: 0x0026242C File Offset: 0x0026062C
		public DitheringComponent(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003223 RID: 12835
		// (get) Token: 0x06009441 RID: 37953 RVA: 0x00262438 File Offset: 0x00260638
		// (set) Token: 0x06009442 RID: 37954 RVA: 0x0026246C File Offset: 0x0026066C
		public unsafe Il2CppReferenceArray<Texture2D> noiseTextures
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DitheringComponent.NativeFieldInfoPtr_noiseTextures);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Il2CppReferenceArray<Texture2D>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(DitheringComponent.NativeFieldInfoPtr_noiseTextures), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003224 RID: 12836
		// (get) Token: 0x06009443 RID: 37955 RVA: 0x00262494 File Offset: 0x00260694
		// (set) Token: 0x06009444 RID: 37956 RVA: 0x002624BC File Offset: 0x002606BC
		public unsafe int textureIndex
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DitheringComponent.NativeFieldInfoPtr_textureIndex);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DitheringComponent.NativeFieldInfoPtr_textureIndex)) = value;
			}
		}

		// Token: 0x17003225 RID: 12837
		// (get) Token: 0x06009445 RID: 37957 RVA: 0x002624E0 File Offset: 0x002606E0
		// (set) Token: 0x06009446 RID: 37958 RVA: 0x002624FE File Offset: 0x002606FE
		public unsafe static int k_TextureCount
		{
			get
			{
				int num;
				IL2CPP.il2cpp_field_static_get_value(DitheringComponent.NativeFieldInfoPtr_k_TextureCount, (void*)(&num));
				return num;
			}
			set
			{
				IL2CPP.il2cpp_field_static_set_value(DitheringComponent.NativeFieldInfoPtr_k_TextureCount, (void*)(&value));
			}
		}

		// Token: 0x040062DB RID: 25307
		private static readonly IntPtr NativeFieldInfoPtr_noiseTextures;

		// Token: 0x040062DC RID: 25308
		private static readonly IntPtr NativeFieldInfoPtr_textureIndex;

		// Token: 0x040062DD RID: 25309
		private static readonly IntPtr NativeFieldInfoPtr_k_TextureCount;

		// Token: 0x040062DE RID: 25310
		private static readonly IntPtr NativeMethodInfoPtr_get_active_Public_Virtual_get_Boolean_0;

		// Token: 0x040062DF RID: 25311
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Public_Virtual_Void_0;

		// Token: 0x040062E0 RID: 25312
		private static readonly IntPtr NativeMethodInfoPtr_LoadNoiseTextures_Private_Void_0;

		// Token: 0x040062E1 RID: 25313
		private static readonly IntPtr NativeMethodInfoPtr_Prepare_Public_Virtual_Void_Material_0;

		// Token: 0x040062E2 RID: 25314
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x0200052D RID: 1325
		public static class Uniforms : Object
		{
			// Token: 0x06009447 RID: 37959 RVA: 0x00262510 File Offset: 0x00260710
			// Note: this type is marked as 'beforefieldinit'.
			static Uniforms()
			{
				Il2CppClassPointerStore<DitheringComponent.Uniforms>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<DitheringComponent>.NativeClassPtr, "Uniforms");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<DitheringComponent.Uniforms>.NativeClassPtr);
				DitheringComponent.Uniforms.NativeFieldInfoPtr__DitheringTex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DitheringComponent.Uniforms>.NativeClassPtr, "_DitheringTex");
				DitheringComponent.Uniforms.NativeFieldInfoPtr__DitheringCoords = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DitheringComponent.Uniforms>.NativeClassPtr, "_DitheringCoords");
			}

			// Token: 0x06009448 RID: 37960 RVA: 0x0000A688 File Offset: 0x00008888
			public Uniforms(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17003227 RID: 12839
			// (get) Token: 0x06009449 RID: 37961 RVA: 0x00262564 File Offset: 0x00260764
			// (set) Token: 0x0600944A RID: 37962 RVA: 0x00262582 File Offset: 0x00260782
			public unsafe static int _DitheringTex
			{
				get
				{
					int num;
					IL2CPP.il2cpp_field_static_get_value(DitheringComponent.Uniforms.NativeFieldInfoPtr__DitheringTex, (void*)(&num));
					return num;
				}
				set
				{
					IL2CPP.il2cpp_field_static_set_value(DitheringComponent.Uniforms.NativeFieldInfoPtr__DitheringTex, (void*)(&value));
				}
			}

			// Token: 0x17003228 RID: 12840
			// (get) Token: 0x0600944B RID: 37963 RVA: 0x00262594 File Offset: 0x00260794
			// (set) Token: 0x0600944C RID: 37964 RVA: 0x002625B2 File Offset: 0x002607B2
			public unsafe static int _DitheringCoords
			{
				get
				{
					int num;
					IL2CPP.il2cpp_field_static_get_value(DitheringComponent.Uniforms.NativeFieldInfoPtr__DitheringCoords, (void*)(&num));
					return num;
				}
				set
				{
					IL2CPP.il2cpp_field_static_set_value(DitheringComponent.Uniforms.NativeFieldInfoPtr__DitheringCoords, (void*)(&value));
				}
			}

			// Token: 0x040062E3 RID: 25315
			private static readonly IntPtr NativeFieldInfoPtr__DitheringTex;

			// Token: 0x040062E4 RID: 25316
			private static readonly IntPtr NativeFieldInfoPtr__DitheringCoords;
		}
	}
}
