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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x02000619 RID: 1561
	public class ColorCorrectionLookup : PostEffectsBase
	{
		// Token: 0x0600A336 RID: 41782 RVA: 0x0029E154 File Offset: 0x0029C354
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 651867, XrefRangeEnd = 651872, 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), ColorCorrectionLookup.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return *IL2CPP.il2cpp_object_unbox(intPtr);
		}

		// Token: 0x0600A337 RID: 41783 RVA: 0x0029E1B0 File Offset: 0x0029C3B0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 651872, XrefRangeEnd = 651880, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ColorCorrectionLookup.NativeMethodInfoPtr_OnDisable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A338 RID: 41784 RVA: 0x0029E1F4 File Offset: 0x0029C3F4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 651880, XrefRangeEnd = 651888, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public new unsafe void OnDestroy()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ColorCorrectionLookup.NativeMethodInfoPtr_OnDestroy_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A339 RID: 41785 RVA: 0x0029E238 File Offset: 0x0029C438
		[CallerCount(1)]
		[CachedScanResults(RefRangeStart = 651913, RefRangeEnd = 651914, XrefRangeStart = 651888, XrefRangeEnd = 651913, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void SetIdentityLut()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ColorCorrectionLookup.NativeMethodInfoPtr_SetIdentityLut_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A33A RID: 41786 RVA: 0x0029E27C File Offset: 0x0029C47C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 651914, XrefRangeEnd = 651921, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe bool ValidDimensions(Texture2D tex2d)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(tex2d);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ColorCorrectionLookup.NativeMethodInfoPtr_ValidDimensions_Public_Boolean_Texture2D_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x0600A33B RID: 41787 RVA: 0x0029E2E4 File Offset: 0x0029C4E4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 651921, XrefRangeEnd = 651973, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Convert(Texture2D temp2DTex, string path)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(temp2DTex);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.ManagedStringToIl2Cpp(path);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ColorCorrectionLookup.NativeMethodInfoPtr_Convert_Public_Void_Texture2D_String_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A33C RID: 41788 RVA: 0x0029E358 File Offset: 0x0029C558
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 651973, XrefRangeEnd = 651994, 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(ColorCorrectionLookup.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A33D RID: 41789 RVA: 0x0029E3CC File Offset: 0x0029C5CC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 651994, XrefRangeEnd = 652002, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ColorCorrectionLookup()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ColorCorrectionLookup.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600A33E RID: 41790 RVA: 0x0029E418 File Offset: 0x0029C618
		// Note: this type is marked as 'beforefieldinit'.
		static ColorCorrectionLookup()
		{
			Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityStandardAssets.ImageEffects", "ColorCorrectionLookup");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr);
			ColorCorrectionLookup.NativeFieldInfoPtr_shader = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, "shader");
			ColorCorrectionLookup.NativeFieldInfoPtr_material = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, "material");
			ColorCorrectionLookup.NativeFieldInfoPtr_converted3DLut = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, "converted3DLut");
			ColorCorrectionLookup.NativeFieldInfoPtr_basedOnTempTex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, "basedOnTempTex");
			ColorCorrectionLookup.NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100675994);
			ColorCorrectionLookup.NativeMethodInfoPtr_OnDisable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100675995);
			ColorCorrectionLookup.NativeMethodInfoPtr_OnDestroy_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100675996);
			ColorCorrectionLookup.NativeMethodInfoPtr_SetIdentityLut_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100675997);
			ColorCorrectionLookup.NativeMethodInfoPtr_ValidDimensions_Public_Boolean_Texture2D_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100675998);
			ColorCorrectionLookup.NativeMethodInfoPtr_Convert_Public_Void_Texture2D_String_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100675999);
			ColorCorrectionLookup.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100676000);
			ColorCorrectionLookup.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ColorCorrectionLookup>.NativeClassPtr, 100676001);
		}

		// Token: 0x0600A33F RID: 41791 RVA: 0x00298C00 File Offset: 0x00296E00
		public ColorCorrectionLookup(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003723 RID: 14115
		// (get) Token: 0x0600A340 RID: 41792 RVA: 0x0029E538 File Offset: 0x0029C738
		// (set) Token: 0x0600A341 RID: 41793 RVA: 0x0029E56C File Offset: 0x0029C76C
		public unsafe Shader shader
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ColorCorrectionLookup.NativeFieldInfoPtr_shader);
				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(ColorCorrectionLookup.NativeFieldInfoPtr_shader), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003724 RID: 14116
		// (get) Token: 0x0600A342 RID: 41794 RVA: 0x0029E594 File Offset: 0x0029C794
		// (set) Token: 0x0600A343 RID: 41795 RVA: 0x0029E5C8 File Offset: 0x0029C7C8
		public unsafe Material material
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ColorCorrectionLookup.NativeFieldInfoPtr_material);
				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(ColorCorrectionLookup.NativeFieldInfoPtr_material), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003725 RID: 14117
		// (get) Token: 0x0600A344 RID: 41796 RVA: 0x0029E5F0 File Offset: 0x0029C7F0
		// (set) Token: 0x0600A345 RID: 41797 RVA: 0x0029E624 File Offset: 0x0029C824
		public unsafe Texture3D converted3DLut
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ColorCorrectionLookup.NativeFieldInfoPtr_converted3DLut);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Texture3D(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ColorCorrectionLookup.NativeFieldInfoPtr_converted3DLut), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17003726 RID: 14118
		// (get) Token: 0x0600A346 RID: 41798 RVA: 0x0029E64C File Offset: 0x0029C84C
		// (set) Token: 0x0600A347 RID: 41799 RVA: 0x0029E675 File Offset: 0x0029C875
		public unsafe string basedOnTempTex
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ColorCorrectionLookup.NativeFieldInfoPtr_basedOnTempTex);
				return IL2CPP.Il2CppStringToManaged(*intPtr);
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ColorCorrectionLookup.NativeFieldInfoPtr_basedOnTempTex), IL2CPP.ManagedStringToIl2Cpp(value));
			}
		}

		// Token: 0x04006D85 RID: 28037
		private static readonly IntPtr NativeFieldInfoPtr_shader;

		// Token: 0x04006D86 RID: 28038
		private static readonly IntPtr NativeFieldInfoPtr_material;

		// Token: 0x04006D87 RID: 28039
		private static readonly IntPtr NativeFieldInfoPtr_converted3DLut;

		// Token: 0x04006D88 RID: 28040
		private static readonly IntPtr NativeFieldInfoPtr_basedOnTempTex;

		// Token: 0x04006D89 RID: 28041
		private static readonly IntPtr NativeMethodInfoPtr_CheckResources_Public_Virtual_Boolean_0;

		// Token: 0x04006D8A RID: 28042
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Private_Void_0;

		// Token: 0x04006D8B RID: 28043
		private static readonly IntPtr NativeMethodInfoPtr_OnDestroy_Private_Void_0;

		// Token: 0x04006D8C RID: 28044
		private static readonly IntPtr NativeMethodInfoPtr_SetIdentityLut_Public_Void_0;

		// Token: 0x04006D8D RID: 28045
		private static readonly IntPtr NativeMethodInfoPtr_ValidDimensions_Public_Boolean_Texture2D_0;

		// Token: 0x04006D8E RID: 28046
		private static readonly IntPtr NativeMethodInfoPtr_Convert_Public_Void_Texture2D_String_0;

		// Token: 0x04006D8F RID: 28047
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x04006D90 RID: 28048
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
