using System;
using Cpp2IlInjected;

namespace UnityEngine.PostProcessing
{
	// Token: 0x02000573 RID: 1395
	[Token(Token = "0x2000573")]
	[Serializable]
	public abstract class PostProcessingModel
	{
		// Token: 0x1700036E RID: 878
		// (get) Token: 0x06002E0E RID: 11790 RVA: 0x00062600 File Offset: 0x00060800
		// (set) Token: 0x06002E0F RID: 11791 RVA: 0x00062614 File Offset: 0x00060814
		[Token(Token = "0x1700036E")]
		public bool enabled
		{
			[Token(Token = "0x6002E0E")]
			[Address(RVA = "0x2B3EC0", Offset = "0x2B2CC0", VA = "0x1802B3EC0")]
			get
			{
				return this.m_Enabled;
			}
			[Token(Token = "0x6002E0F")]
			[Address(RVA = "0xBE0220", Offset = "0xBDF020", VA = "0x180BE0220")]
			set
			{
				this.m_Enabled = value;
				if (value)
				{
					this.Reset();
					return;
				}
			}
		}

		// Token: 0x06002E10 RID: 11792
		[Token(Token = "0x6002E10")]
		[Address(Slot = "4")]
		public abstract void Reset();

		// Token: 0x06002E11 RID: 11793 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002E11")]
		[Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "5")]
		public virtual void OnValidate()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002E12 RID: 11794 RVA: 0x00062634 File Offset: 0x00060834
		[Token(Token = "0x6002E12")]
		[Address(RVA = "0x3D8B20", Offset = "0x3D7920", VA = "0x1803D8B20")]
		protected PostProcessingModel()
		{
			this.OnValidate();
		}

		// Token: 0x040036EC RID: 14060
		[FieldOffset(Offset = "0x10")]
		[Token(Token = "0x40036EC")]
		[SerializeField]
		[GetSet("enabled")]
		private bool m_Enabled;
	}
}
