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

namespace UnityEngine.PostProcessing
{
	// Token: 0x02000526 RID: 1318
	public sealed class ChromaticAberrationComponent : PostProcessingComponentRenderTexture<ChromaticAberrationModel>
	{
		// Token: 0x170031F7 RID: 12791
		// (get) Token: 0x060093B6 RID: 37814 RVA: 0x002604A8 File Offset: 0x0025E6A8
		public unsafe override bool active
		{
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 614804, XrefRangeEnd = 614805, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ChromaticAberrationComponent.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: 0x060093B7 RID: 37815 RVA: 0x002604F8 File Offset: 0x0025E6F8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 614805, XrefRangeEnd = 614807, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ChromaticAberrationComponent.NativeMethodInfoPtr_OnDisable_Public_Virtual_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060093B8 RID: 37816 RVA: 0x0026053C File Offset: 0x0025E73C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 614807, XrefRangeEnd = 614853, 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(ChromaticAberrationComponent.NativeMethodInfoPtr_Prepare_Public_Virtual_Void_Material_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x060093B9 RID: 37817 RVA: 0x00260598 File Offset: 0x0025E798
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 614856, RefRangeEnd = 614857, XrefRangeStart = 614853, XrefRangeEnd = 614856, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ChromaticAberrationComponent()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ChromaticAberrationComponent.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x060093BA RID: 37818 RVA: 0x002605E4 File Offset: 0x0025E7E4
		// Note: this type is marked as 'beforefieldinit'.
		static ChromaticAberrationComponent()
		{
			Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityEngine.PostProcessing", "ChromaticAberrationComponent");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr);
			ChromaticAberrationComponent.NativeFieldInfoPtr_m_SpectrumLut = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr, "m_SpectrumLut");
			ChromaticAberrationComponent.NativeMethodInfoPtr_get_active_Public_Virtual_get_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr, 100674815);
			ChromaticAberrationComponent.NativeMethodInfoPtr_OnDisable_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr, 100674816);
			ChromaticAberrationComponent.NativeMethodInfoPtr_Prepare_Public_Virtual_Void_Material_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr, 100674817);
			ChromaticAberrationComponent.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr, 100674818);
		}

		// Token: 0x060093BB RID: 37819 RVA: 0x00260678 File Offset: 0x0025E878
		public ChromaticAberrationComponent(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x170031F6 RID: 12790
		// (get) Token: 0x060093BC RID: 37820 RVA: 0x00260684 File Offset: 0x0025E884
		// (set) Token: 0x060093BD RID: 37821 RVA: 0x002606B8 File Offset: 0x0025E8B8
		public unsafe Texture2D m_SpectrumLut
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ChromaticAberrationComponent.NativeFieldInfoPtr_m_SpectrumLut);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Texture2D(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ChromaticAberrationComponent.NativeFieldInfoPtr_m_SpectrumLut), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x0400628D RID: 25229
		private static readonly IntPtr NativeFieldInfoPtr_m_SpectrumLut;

		// Token: 0x0400628E RID: 25230
		private static readonly IntPtr NativeMethodInfoPtr_get_active_Public_Virtual_get_Boolean_0;

		// Token: 0x0400628F RID: 25231
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Public_Virtual_Void_0;

		// Token: 0x04006290 RID: 25232
		private static readonly IntPtr NativeMethodInfoPtr_Prepare_Public_Virtual_Void_Material_0;

		// Token: 0x04006291 RID: 25233
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x02000527 RID: 1319
		public static class Uniforms : Object
		{
			// Token: 0x060093BE RID: 37822 RVA: 0x002606E0 File Offset: 0x0025E8E0
			// Note: this type is marked as 'beforefieldinit'.
			static Uniforms()
			{
				Il2CppClassPointerStore<ChromaticAberrationComponent.Uniforms>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<ChromaticAberrationComponent>.NativeClassPtr, "Uniforms");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ChromaticAberrationComponent.Uniforms>.NativeClassPtr);
				ChromaticAberrationComponent.Uniforms.NativeFieldInfoPtr__ChromaticAberration_Amount = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ChromaticAberrationComponent.Uniforms>.NativeClassPtr, "_ChromaticAberration_Amount");
				ChromaticAberrationComponent.Uniforms.NativeFieldInfoPtr__ChromaticAberration_Spectrum = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ChromaticAberrationComponent.Uniforms>.NativeClassPtr, "_ChromaticAberration_Spectrum");
			}

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

			// Token: 0x170031F8 RID: 12792
			// (get) Token: 0x060093C0 RID: 37824 RVA: 0x00260734 File Offset: 0x0025E934
			// (set) Token: 0x060093C1 RID: 37825 RVA: 0x00260752 File Offset: 0x0025E952
			public unsafe static int _ChromaticAberration_Amount
			{
				get
				{
					int num;
					IL2CPP.il2cpp_field_static_get_value(ChromaticAberrationComponent.Uniforms.NativeFieldInfoPtr__ChromaticAberration_Amount, (void*)(&num));
					return num;
				}
				set
				{
					IL2CPP.il2cpp_field_static_set_value(ChromaticAberrationComponent.Uniforms.NativeFieldInfoPtr__ChromaticAberration_Amount, (void*)(&value));
				}
			}

			// Token: 0x170031F9 RID: 12793
			// (get) Token: 0x060093C2 RID: 37826 RVA: 0x00260764 File Offset: 0x0025E964
			// (set) Token: 0x060093C3 RID: 37827 RVA: 0x00260782 File Offset: 0x0025E982
			public unsafe static int _ChromaticAberration_Spectrum
			{
				get
				{
					int num;
					IL2CPP.il2cpp_field_static_get_value(ChromaticAberrationComponent.Uniforms.NativeFieldInfoPtr__ChromaticAberration_Spectrum, (void*)(&num));
					return num;
				}
				set
				{
					IL2CPP.il2cpp_field_static_set_value(ChromaticAberrationComponent.Uniforms.NativeFieldInfoPtr__ChromaticAberration_Spectrum, (void*)(&value));
				}
			}

			// Token: 0x04006292 RID: 25234
			private static readonly IntPtr NativeFieldInfoPtr__ChromaticAberration_Amount;

			// Token: 0x04006293 RID: 25235
			private static readonly IntPtr NativeFieldInfoPtr__ChromaticAberration_Spectrum;
		}
	}
}
