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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x020005BA RID: 1466
	public class Blur : MonoBehaviour
	{
		// Token: 0x17003449 RID: 13385
		// (get) Token: 0x06009A3A RID: 39482 RVA: 0x00278D14 File Offset: 0x00276F14
		public unsafe Material material
		{
			[CallerCount(5)]
			[CachedScanResults(RefRangeStart = 618887, RefRangeEnd = 618892, XrefRangeStart = 618866, XrefRangeEnd = 618887, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Blur.NativeMethodInfoPtr_get_material_Protected_get_Material_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new Material(intPtr3) : null;
			}
		}

		// Token: 0x06009A3B RID: 39483 RVA: 0x00278D6C File Offset: 0x00276F6C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 618892, XrefRangeEnd = 618906, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Blur.NativeMethodInfoPtr_OnDisable_Protected_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A3C RID: 39484 RVA: 0x00278DB0 File Offset: 0x00276FB0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 618906, XrefRangeEnd = 618915, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Start()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Blur.NativeMethodInfoPtr_Start_Protected_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A3D RID: 39485 RVA: 0x00278DF4 File Offset: 0x00276FF4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 618915, XrefRangeEnd = 618932, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void FourTapCone(RenderTexture source, RenderTexture dest, int iteration)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(source);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(dest);
			ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref iteration;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Blur.NativeMethodInfoPtr_FourTapCone_Public_Void_RenderTexture_RenderTexture_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A3E RID: 39486 RVA: 0x00278E78 File Offset: 0x00277078
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 618932, XrefRangeEnd = 618940, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void DownSample4x(RenderTexture source, RenderTexture dest)
		{
			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(dest);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Blur.NativeMethodInfoPtr_DownSample4x_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A3F RID: 39487 RVA: 0x00278EEC File Offset: 0x002770EC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 618940, XrefRangeEnd = 618981, 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(Blur.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A40 RID: 39488 RVA: 0x00278F60 File Offset: 0x00277160
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 618981, XrefRangeEnd = 618982, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe Blur()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<Blur>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Blur.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009A41 RID: 39489 RVA: 0x00278FAC File Offset: 0x002771AC
		// Note: this type is marked as 'beforefieldinit'.
		static Blur()
		{
			Il2CppClassPointerStore<Blur>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityStandardAssets.ImageEffects", "Blur");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<Blur>.NativeClassPtr);
			Blur.NativeFieldInfoPtr_iterations = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Blur>.NativeClassPtr, "iterations");
			Blur.NativeFieldInfoPtr_blurSpread = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Blur>.NativeClassPtr, "blurSpread");
			Blur.NativeFieldInfoPtr_blurShader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Blur>.NativeClassPtr, "blurShader");
			Blur.NativeFieldInfoPtr_m_Material = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Blur>.NativeClassPtr, "m_Material");
			Blur.NativeMethodInfoPtr_get_material_Protected_get_Material_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Blur>.NativeClassPtr, 100675250);
			Blur.NativeMethodInfoPtr_OnDisable_Protected_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Blur>.NativeClassPtr, 100675251);
			Blur.NativeMethodInfoPtr_Start_Protected_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Blur>.NativeClassPtr, 100675252);
			Blur.NativeMethodInfoPtr_FourTapCone_Public_Void_RenderTexture_RenderTexture_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Blur>.NativeClassPtr, 100675253);
			Blur.NativeMethodInfoPtr_DownSample4x_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Blur>.NativeClassPtr, 100675254);
			Blur.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Blur>.NativeClassPtr, 100675255);
			Blur.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Blur>.NativeClassPtr, 100675256);
		}

		// Token: 0x06009A42 RID: 39490 RVA: 0x0000351C File Offset: 0x0000171C
		public Blur(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003445 RID: 13381
		// (get) Token: 0x06009A43 RID: 39491 RVA: 0x002790B8 File Offset: 0x002772B8
		// (set) Token: 0x06009A44 RID: 39492 RVA: 0x002790E0 File Offset: 0x002772E0
		public unsafe int iterations
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Blur.NativeFieldInfoPtr_iterations);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Blur.NativeFieldInfoPtr_iterations)) = value;
			}
		}

		// Token: 0x17003446 RID: 13382
		// (get) Token: 0x06009A45 RID: 39493 RVA: 0x00279104 File Offset: 0x00277304
		// (set) Token: 0x06009A46 RID: 39494 RVA: 0x0027912C File Offset: 0x0027732C
		public unsafe float blurSpread
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Blur.NativeFieldInfoPtr_blurSpread);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Blur.NativeFieldInfoPtr_blurSpread)) = value;
			}
		}

		// Token: 0x17003447 RID: 13383
		// (get) Token: 0x06009A47 RID: 39495 RVA: 0x00279150 File Offset: 0x00277350
		// (set) Token: 0x06009A48 RID: 39496 RVA: 0x00279184 File Offset: 0x00277384
		public unsafe Shader blurShader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Blur.NativeFieldInfoPtr_blurShader);
				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(Blur.NativeFieldInfoPtr_blurShader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003448 RID: 13384
		// (get) Token: 0x06009A49 RID: 39497 RVA: 0x002791AC File Offset: 0x002773AC
		// (set) Token: 0x06009A4A RID: 39498 RVA: 0x002791D7 File Offset: 0x002773D7
		public unsafe static Material m_Material
		{
			get
			{
				IntPtr intPtr;
				IL2CPP.il2cpp_field_static_get_value(Blur.NativeFieldInfoPtr_m_Material, (void*)(&intPtr));
				IntPtr intPtr2 = intPtr;
				return (intPtr2 != 0) ? new Material(intPtr2) : null;
			}
			set
			{
				IL2CPP.il2cpp_field_static_set_value(Blur.NativeFieldInfoPtr_m_Material, IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x04006771 RID: 26481
		private static readonly IntPtr NativeFieldInfoPtr_iterations;

		// Token: 0x04006772 RID: 26482
		private static readonly IntPtr NativeFieldInfoPtr_blurSpread;

		// Token: 0x04006773 RID: 26483
		private static readonly IntPtr NativeFieldInfoPtr_blurShader;

		// Token: 0x04006774 RID: 26484
		private static readonly IntPtr NativeFieldInfoPtr_m_Material;

		// Token: 0x04006775 RID: 26485
		private static readonly IntPtr NativeMethodInfoPtr_get_material_Protected_get_Material_0;

		// Token: 0x04006776 RID: 26486
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Protected_Void_0;

		// Token: 0x04006777 RID: 26487
		private static readonly IntPtr NativeMethodInfoPtr_Start_Protected_Void_0;

		// Token: 0x04006778 RID: 26488
		private static readonly IntPtr NativeMethodInfoPtr_FourTapCone_Public_Void_RenderTexture_RenderTexture_Int32_0;

		// Token: 0x04006779 RID: 26489
		private static readonly IntPtr NativeMethodInfoPtr_DownSample4x_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x0400677A RID: 26490
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x0400677B RID: 26491
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
