using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x020005BF RID: 1471
	[Token(Token = "0x20005BF")]
	[ExecuteInEditMode]
	[RequireComponent(typeof(Camera))]
	public class PostEffectsBase : MonoBehaviour
	{
		// Token: 0x06002F2A RID: 12074 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F2A")]
		[Address(RVA = "0xBDC590", Offset = "0xBDB390", VA = "0x180BDC590")]
		protected Material CheckShaderAndCreateMaterial(Shader s, Material m2Create)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F2B RID: 12075 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F2B")]
		[Address(RVA = "0xBDCF20", Offset = "0xBDBD20", VA = "0x180BDCF20")]
		protected Material CreateMaterial(Shader s, Material m2Create)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F2C RID: 12076 RVA: 0x00064BAC File Offset: 0x00062DAC
		[Token(Token = "0x6002F2C")]
		[Address(RVA = "0xBDD5F0", Offset = "0xBDC3F0", VA = "0x180BDD5F0")]
		private void OnEnable()
		{
			this.isSupported = true;
		}

		// Token: 0x06002F2D RID: 12077 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F2D")]
		[Address(RVA = "0xBDD500", Offset = "0xBDC300", VA = "0x180BDD500")]
		private void OnDestroy()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F2E RID: 12078 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F2E")]
		[Address(RVA = "0xBDD500", Offset = "0xBDC300", VA = "0x180BDD500")]
		private void RemoveCreatedMaterials()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F2F RID: 12079 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F2F")]
		[Address(RVA = "0xBDCEA0", Offset = "0xBDBCA0", VA = "0x180BDCEA0")]
		protected bool CheckSupport()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F30 RID: 12080 RVA: 0x00064BC0 File Offset: 0x00062DC0
		[Token(Token = "0x6002F30")]
		[Address(RVA = "0xBDC4E0", Offset = "0xBDB2E0", VA = "0x180BDC4E0", Slot = "4")]
		public virtual bool CheckResources()
		{
			string text = this.ToString();
			Debug.LogWarning("CheckResources () for " + text + " should be overwritten.");
			return this.isSupported;
		}

		// Token: 0x06002F31 RID: 12081 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F31")]
		[Address(RVA = "0x638370", Offset = "0x637170", VA = "0x180638370")]
		protected void Start()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F32 RID: 12082 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F32")]
		[Address(RVA = "0xBDCD60", Offset = "0xBDBB60", VA = "0x180BDCD60")]
		protected bool CheckSupport(bool needDepth)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F33 RID: 12083 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F33")]
		[Address(RVA = "0xBDCE40", Offset = "0xBDBC40", VA = "0x180BDCE40")]
		protected bool CheckSupport(bool needDepth, bool needHdr)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F34 RID: 12084 RVA: 0x00064BF0 File Offset: 0x00062DF0
		[Token(Token = "0x6002F34")]
		[Address(RVA = "0x3FBFF0", Offset = "0x3FADF0", VA = "0x1803FBFF0")]
		public bool Dx11Support()
		{
			return this.supportDX11;
		}

		// Token: 0x06002F35 RID: 12085 RVA: 0x00064C04 File Offset: 0x00062E04
		[Token(Token = "0x6002F35")]
		[Address(RVA = "0xBDD600", Offset = "0xBDC400", VA = "0x180BDD600")]
		protected void ReportAutoDisable()
		{
			string text = this.ToString();
			Debug.LogWarning("The image effect " + text + " has been disabled as it's not supported on the current platform.");
		}

		// Token: 0x06002F36 RID: 12086 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F36")]
		[Address(RVA = "0xBDCA50", Offset = "0xBDB850", VA = "0x180BDCA50")]
		private bool CheckShader(Shader s)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F37 RID: 12087 RVA: 0x00064C30 File Offset: 0x00062E30
		[Token(Token = "0x6002F37")]
		[Address(RVA = "0xBDD4E0", Offset = "0xBDC2E0", VA = "0x180BDD4E0")]
		protected void NotSupported()
		{
			int num = 0;
			base.enabled = num != 0;
			this.isSupported = false;
		}

		// Token: 0x06002F38 RID: 12088 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002F38")]
		[Address(RVA = "0xBDD140", Offset = "0xBDBF40", VA = "0x180BDD140")]
		protected void DrawBorder(RenderTexture dest, Material material)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002F39 RID: 12089 RVA: 0x00064C50 File Offset: 0x00062E50
		[Token(Token = "0x6002F39")]
		[Address(RVA = "0xBDD6A0", Offset = "0xBDC4A0", VA = "0x180BDD6A0")]
		public PostEffectsBase()
		{
			List<Material> list = new List();
			this.createdMaterials = list;
			base..ctor();
		}

		// Token: 0x0400391D RID: 14621
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x400391D")]
		protected bool supportHDRTextures = true;

		// Token: 0x0400391E RID: 14622
		[FieldOffset(Offset = "0x19")]
		[Token(Token = "0x400391E")]
		protected bool supportDX11;

		// Token: 0x0400391F RID: 14623
		[FieldOffset(Offset = "0x1A")]
		[Token(Token = "0x400391F")]
		protected bool isSupported = true;

		// Token: 0x04003920 RID: 14624
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x4003920")]
		private List<Material> createdMaterials;
	}
}
