using System;
using Cpp2IlInjected;
using UnityEngine;

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x020005FE RID: 1534
	[Token(Token = "0x20005FE")]
	[ExecuteInEditMode]
	[AddComponentMenu("Image Effects/Color Adjustments/Color Correction (Curves, Saturation)")]
	public class ColorCorrectionCurves : PostEffectsBase
	{
		// Token: 0x06003193 RID: 12691 RVA: 0x0006B128 File Offset: 0x00069328
		[Token(Token = "0x6003193")]
		[Address(RVA = "0xB9B4A0", Offset = "0xB9A4A0", VA = "0x180B9B4A0")]
		private new void Start()
		{
			base.Start();
			this.updateTexturesOnStartup = true;
		}

		// Token: 0x06003194 RID: 12692 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003194")]
		[Address(RVA = "0x29E8B0", Offset = "0x29D8B0", VA = "0x18029E8B0")]
		private void Awake()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06003195 RID: 12693 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003195")]
		[Address(RVA = "0xB9AE00", Offset = "0xB99E00", VA = "0x180B9AE00", Slot = "4")]
		public override bool CheckResources()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06003196 RID: 12694 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003196")]
		[Address(RVA = "0xB9B4C0", Offset = "0xB9A4C0", VA = "0x180B9B4C0")]
		public void UpdateParameters()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06003197 RID: 12695 RVA: 0x0006B144 File Offset: 0x00069344
		[Token(Token = "0x6003197")]
		[Address(RVA = "0xB9B9C0", Offset = "0xB9A9C0", VA = "0x180B9B9C0")]
		private void UpdateTextures()
		{
			this.UpdateParameters();
		}

		// Token: 0x06003198 RID: 12696 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003198")]
		[Address(RVA = "0xB9B130", Offset = "0xB9A130", VA = "0x180B9B130")]
		private void OnRenderImage(RenderTexture source, RenderTexture destination)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06003199 RID: 12697 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003199")]
		[Address(RVA = "0xB9B9D0", Offset = "0xB9A9D0", VA = "0x180B9B9D0")]
		public ColorCorrectionCurves()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x04003B27 RID: 15143
		[FieldOffset(Offset = "0x28")]
		[Token(Token = "0x4003B27")]
		public AnimationCurve redChannel;

		// Token: 0x04003B28 RID: 15144
		[FieldOffset(Offset = "0x30")]
		[Token(Token = "0x4003B28")]
		public AnimationCurve greenChannel;

		// Token: 0x04003B29 RID: 15145
		[FieldOffset(Offset = "0x38")]
		[Token(Token = "0x4003B29")]
		public AnimationCurve blueChannel;

		// Token: 0x04003B2A RID: 15146
		[FieldOffset(Offset = "0x40")]
		[Token(Token = "0x4003B2A")]
		public bool useDepthCorrection;

		// Token: 0x04003B2B RID: 15147
		[FieldOffset(Offset = "0x48")]
		[Token(Token = "0x4003B2B")]
		public AnimationCurve zCurve;

		// Token: 0x04003B2C RID: 15148
		[FieldOffset(Offset = "0x50")]
		[Token(Token = "0x4003B2C")]
		public AnimationCurve depthRedChannel;

		// Token: 0x04003B2D RID: 15149
		[FieldOffset(Offset = "0x58")]
		[Token(Token = "0x4003B2D")]
		public AnimationCurve depthGreenChannel;

		// Token: 0x04003B2E RID: 15150
		[FieldOffset(Offset = "0x60")]
		[Token(Token = "0x4003B2E")]
		public AnimationCurve depthBlueChannel;

		// Token: 0x04003B2F RID: 15151
		[FieldOffset(Offset = "0x68")]
		[Token(Token = "0x4003B2F")]
		private Material ccMaterial;

		// Token: 0x04003B30 RID: 15152
		[FieldOffset(Offset = "0x70")]
		[Token(Token = "0x4003B30")]
		private Material ccDepthMaterial;

		// Token: 0x04003B31 RID: 15153
		[FieldOffset(Offset = "0x78")]
		[Token(Token = "0x4003B31")]
		private Material selectiveCcMaterial;

		// Token: 0x04003B32 RID: 15154
		[FieldOffset(Offset = "0x80")]
		[Token(Token = "0x4003B32")]
		private Texture2D rgbChannelTex;

		// Token: 0x04003B33 RID: 15155
		[FieldOffset(Offset = "0x88")]
		[Token(Token = "0x4003B33")]
		private Texture2D rgbDepthChannelTex;

		// Token: 0x04003B34 RID: 15156
		[FieldOffset(Offset = "0x90")]
		[Token(Token = "0x4003B34")]
		private Texture2D zCurveTex;

		// Token: 0x04003B35 RID: 15157
		[FieldOffset(Offset = "0x98")]
		[Token(Token = "0x4003B35")]
		public float saturation;

		// Token: 0x04003B36 RID: 15158
		[FieldOffset(Offset = "0x9C")]
		[Token(Token = "0x4003B36")]
		public bool selectiveCc;

		// Token: 0x04003B37 RID: 15159
		[FieldOffset(Offset = "0xA0")]
		[Token(Token = "0x4003B37")]
		public Color selectiveFromColor;

		// Token: 0x04003B38 RID: 15160
		[FieldOffset(Offset = "0xB0")]
		[Token(Token = "0x4003B38")]
		public Color selectiveToColor;

		// Token: 0x04003B39 RID: 15161
		[FieldOffset(Offset = "0xC0")]
		[Token(Token = "0x4003B39")]
		public ColorCorrectionCurves.ColorCorrectionMode mode;

		// Token: 0x04003B3A RID: 15162
		[FieldOffset(Offset = "0xC4")]
		[Token(Token = "0x4003B3A")]
		public bool updateTextures;

		// Token: 0x04003B3B RID: 15163
		[FieldOffset(Offset = "0xC8")]
		[Token(Token = "0x4003B3B")]
		public Shader colorCorrectionCurvesShader;

		// Token: 0x04003B3C RID: 15164
		[FieldOffset(Offset = "0xD0")]
		[Token(Token = "0x4003B3C")]
		public Shader simpleColorCorrectionCurvesShader;

		// Token: 0x04003B3D RID: 15165
		[FieldOffset(Offset = "0xD8")]
		[Token(Token = "0x4003B3D")]
		public Shader colorCorrectionSelectiveShader;

		// Token: 0x04003B3E RID: 15166
		[FieldOffset(Offset = "0xE0")]
		[Token(Token = "0x4003B3E")]
		private bool updateTexturesOnStartup;

		// Token: 0x020005FF RID: 1535
		[Token(Token = "0x20005FF")]
		public enum ColorCorrectionMode
		{
			// Token: 0x04003B40 RID: 15168
			[Token(Token = "0x4003B40")]
			Simple,
			// Token: 0x04003B41 RID: 15169
			[Token(Token = "0x4003B41")]
			Advanced
		}
	}
}
