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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x020005C3 RID: 1475
	public class ContrastEnhance : PostEffectsBase
	{
		// Token: 0x06009AFB RID: 39675 RVA: 0x0027BAF4 File Offset: 0x00279CF4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619710, XrefRangeEnd = 619716, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override bool CheckResources()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), ContrastEnhance.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x06009AFC RID: 39676 RVA: 0x0027BB50 File Offset: 0x00279D50
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619716, XrefRangeEnd = 619748, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnRenderImage(RenderTexture source, RenderTexture destination)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(source);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(destination);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ContrastEnhance.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009AFD RID: 39677 RVA: 0x0027BBC4 File Offset: 0x00279DC4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619748, XrefRangeEnd = 619749, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ContrastEnhance()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ContrastEnhance.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009AFE RID: 39678 RVA: 0x0027BC10 File Offset: 0x00279E10
		// Note: this type is marked as 'beforefieldinit'.
		static ContrastEnhance()
		{
			Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityStandardAssets.ImageEffects", "ContrastEnhance");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr);
			ContrastEnhance.NativeFieldInfoPtr_intensity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, "intensity");
			ContrastEnhance.NativeFieldInfoPtr_threshold = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, "threshold");
			ContrastEnhance.NativeFieldInfoPtr_separableBlurMaterial = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, "separableBlurMaterial");
			ContrastEnhance.NativeFieldInfoPtr_contrastCompositeMaterial = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, "contrastCompositeMaterial");
			ContrastEnhance.NativeFieldInfoPtr_blurSpread = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, "blurSpread");
			ContrastEnhance.NativeFieldInfoPtr_separableBlurShader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, "separableBlurShader");
			ContrastEnhance.NativeFieldInfoPtr_contrastCompositeShader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, "contrastCompositeShader");
			ContrastEnhance.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, 100675291);
			ContrastEnhance.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, 100675292);
			ContrastEnhance.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ContrastEnhance>.NativeClassPtr, 100675293);
		}

		// Token: 0x06009AFF RID: 39679 RVA: 0x00275EC4 File Offset: 0x002740C4
		public ContrastEnhance(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x1700348D RID: 13453
		// (get) Token: 0x06009B00 RID: 39680 RVA: 0x0027BD08 File Offset: 0x00279F08
		// (set) Token: 0x06009B01 RID: 39681 RVA: 0x0027BD30 File Offset: 0x00279F30
		public unsafe float intensity
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_intensity);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_intensity)) = value;
			}
		}

		// Token: 0x1700348E RID: 13454
		// (get) Token: 0x06009B02 RID: 39682 RVA: 0x0027BD54 File Offset: 0x00279F54
		// (set) Token: 0x06009B03 RID: 39683 RVA: 0x0027BD7C File Offset: 0x00279F7C
		public unsafe float threshold
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_threshold);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_threshold)) = value;
			}
		}

		// Token: 0x1700348F RID: 13455
		// (get) Token: 0x06009B04 RID: 39684 RVA: 0x0027BDA0 File Offset: 0x00279FA0
		// (set) Token: 0x06009B05 RID: 39685 RVA: 0x0027BDD4 File Offset: 0x00279FD4
		public unsafe Material separableBlurMaterial
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_separableBlurMaterial);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Material(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_separableBlurMaterial), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003490 RID: 13456
		// (get) Token: 0x06009B06 RID: 39686 RVA: 0x0027BDFC File Offset: 0x00279FFC
		// (set) Token: 0x06009B07 RID: 39687 RVA: 0x0027BE30 File Offset: 0x0027A030
		public unsafe Material contrastCompositeMaterial
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_contrastCompositeMaterial);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Material(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_contrastCompositeMaterial), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003491 RID: 13457
		// (get) Token: 0x06009B08 RID: 39688 RVA: 0x0027BE58 File Offset: 0x0027A058
		// (set) Token: 0x06009B09 RID: 39689 RVA: 0x0027BE80 File Offset: 0x0027A080
		public unsafe float blurSpread
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_blurSpread);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_blurSpread)) = value;
			}
		}

		// Token: 0x17003492 RID: 13458
		// (get) Token: 0x06009B0A RID: 39690 RVA: 0x0027BEA4 File Offset: 0x0027A0A4
		// (set) Token: 0x06009B0B RID: 39691 RVA: 0x0027BED8 File Offset: 0x0027A0D8
		public unsafe Shader separableBlurShader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_separableBlurShader);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Shader(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_separableBlurShader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003493 RID: 13459
		// (get) Token: 0x06009B0C RID: 39692 RVA: 0x0027BF00 File Offset: 0x0027A100
		// (set) Token: 0x06009B0D RID: 39693 RVA: 0x0027BF34 File Offset: 0x0027A134
		public unsafe Shader contrastCompositeShader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_contrastCompositeShader);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Shader(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ContrastEnhance.NativeFieldInfoPtr_contrastCompositeShader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x040067EB RID: 26603
		private static readonly IntPtr NativeFieldInfoPtr_intensity;

		// Token: 0x040067EC RID: 26604
		private static readonly IntPtr NativeFieldInfoPtr_threshold;

		// Token: 0x040067ED RID: 26605
		private static readonly IntPtr NativeFieldInfoPtr_separableBlurMaterial;

		// Token: 0x040067EE RID: 26606
		private static readonly IntPtr NativeFieldInfoPtr_contrastCompositeMaterial;

		// Token: 0x040067EF RID: 26607
		private static readonly IntPtr NativeFieldInfoPtr_blurSpread;

		// Token: 0x040067F0 RID: 26608
		private static readonly IntPtr NativeFieldInfoPtr_separableBlurShader;

		// Token: 0x040067F1 RID: 26609
		private static readonly IntPtr NativeFieldInfoPtr_contrastCompositeShader;

		// Token: 0x040067F2 RID: 26610
		private static readonly IntPtr NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0;

		// Token: 0x040067F3 RID: 26611
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x040067F4 RID: 26612
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
