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

// Token: 0x02000180 RID: 384
public class PostProcessingRenderPass : ScriptableRenderPass
{
	// Token: 0x060045DD RID: 17885 RVA: 0x00116C74 File Offset: 0x00114E74
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 541760, XrefRangeEnd = 541763, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe PostProcessingRenderPass(PostProcessingRenderSettings settings, Material material)
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr))
	{
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(settings);
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(material);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PostProcessingRenderPass.NativeMethodInfoPtr__ctor_Public_Void_PostProcessingRenderSettings_Material_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060045DE RID: 17886 RVA: 0x00116CF0 File Offset: 0x00114EF0
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 541763, XrefRangeEnd = 541764, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Setup(RenderTargetIdentifier sourceRenderTarget, Material material)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref sourceRenderTarget;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(material);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PostProcessingRenderPass.NativeMethodInfoPtr_Setup_Public_Void_RenderTargetIdentifier_Material_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060045DF RID: 17887 RVA: 0x00116D5C File Offset: 0x00114F5C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 541764, XrefRangeEnd = 541775, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void Execute(ScriptableRenderContext context, ref RenderingData renderingData)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref context;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtrNotNull(renderingData);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), PostProcessingRenderPass.NativeMethodInfoPtr_Execute_Public_Virtual_Void_ScriptableRenderContext_byref_RenderingData_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060045E0 RID: 17888 RVA: 0x00116DD4 File Offset: 0x00114FD4
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 541775, XrefRangeEnd = 541777, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void FrameCleanup(CommandBuffer cmd)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(cmd);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), PostProcessingRenderPass.NativeMethodInfoPtr_FrameCleanup_Public_Virtual_Void_CommandBuffer_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x060045E1 RID: 17889 RVA: 0x00116E38 File Offset: 0x00115038
	// Note: this type is marked as 'beforefieldinit'.
	static PostProcessingRenderPass()
	{
		Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "PostProcessingRenderPass");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr);
		PostProcessingRenderPass.NativeFieldInfoPtr_renderTag = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, "renderTag");
		PostProcessingRenderPass.NativeFieldInfoPtr_temporaryRenderTargetHandle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, "temporaryRenderTargetHandle");
		PostProcessingRenderPass.NativeFieldInfoPtr_material = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, "material");
		PostProcessingRenderPass.NativeFieldInfoPtr_sourceRenderTarget = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, "sourceRenderTarget");
		PostProcessingRenderPass.NativeMethodInfoPtr__ctor_Public_Void_PostProcessingRenderSettings_Material_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, 100667945);
		PostProcessingRenderPass.NativeMethodInfoPtr_Setup_Public_Void_RenderTargetIdentifier_Material_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, 100667946);
		PostProcessingRenderPass.NativeMethodInfoPtr_Execute_Public_Virtual_Void_ScriptableRenderContext_byref_RenderingData_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, 100667947);
		PostProcessingRenderPass.NativeMethodInfoPtr_FrameCleanup_Public_Virtual_Void_CommandBuffer_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PostProcessingRenderPass>.NativeClassPtr, 100667948);
	}

	// Token: 0x060045E2 RID: 17890 RVA: 0x00116F08 File Offset: 0x00115108
	public PostProcessingRenderPass(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x1700195D RID: 6493
	// (get) Token: 0x060045E3 RID: 17891 RVA: 0x00116F14 File Offset: 0x00115114
	// (set) Token: 0x060045E4 RID: 17892 RVA: 0x00116F3D File Offset: 0x0011513D
	public unsafe string renderTag
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PostProcessingRenderPass.NativeFieldInfoPtr_renderTag);
			return IL2CPP.Il2CppStringToManaged(*intPtr);
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(PostProcessingRenderPass.NativeFieldInfoPtr_renderTag), IL2CPP.ManagedStringToIl2Cpp(value));
		}
	}

	// Token: 0x1700195E RID: 6494
	// (get) Token: 0x060045E5 RID: 17893 RVA: 0x00116F64 File Offset: 0x00115164
	// (set) Token: 0x060045E6 RID: 17894 RVA: 0x00116F8C File Offset: 0x0011518C
	public unsafe RenderTargetHandle temporaryRenderTargetHandle
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PostProcessingRenderPass.NativeFieldInfoPtr_temporaryRenderTargetHandle);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PostProcessingRenderPass.NativeFieldInfoPtr_temporaryRenderTargetHandle)) = value;
		}
	}

	// Token: 0x1700195F RID: 6495
	// (get) Token: 0x060045E7 RID: 17895 RVA: 0x00116FB0 File Offset: 0x001151B0
	// (set) Token: 0x060045E8 RID: 17896 RVA: 0x00116FE4 File Offset: 0x001151E4
	public unsafe Material material
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PostProcessingRenderPass.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(PostProcessingRenderPass.NativeFieldInfoPtr_material), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001960 RID: 6496
	// (get) Token: 0x060045E9 RID: 17897 RVA: 0x0011700C File Offset: 0x0011520C
	// (set) Token: 0x060045EA RID: 17898 RVA: 0x00117034 File Offset: 0x00115234
	public unsafe RenderTargetIdentifier sourceRenderTarget
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PostProcessingRenderPass.NativeFieldInfoPtr_sourceRenderTarget);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PostProcessingRenderPass.NativeFieldInfoPtr_sourceRenderTarget)) = value;
		}
	}

	// Token: 0x04002E42 RID: 11842
	private static readonly IntPtr NativeFieldInfoPtr_renderTag;

	// Token: 0x04002E43 RID: 11843
	private static readonly IntPtr NativeFieldInfoPtr_temporaryRenderTargetHandle;

	// Token: 0x04002E44 RID: 11844
	private static readonly IntPtr NativeFieldInfoPtr_material;

	// Token: 0x04002E45 RID: 11845
	private static readonly IntPtr NativeFieldInfoPtr_sourceRenderTarget;

	// Token: 0x04002E46 RID: 11846
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_PostProcessingRenderSettings_Material_0;

	// Token: 0x04002E47 RID: 11847
	private static readonly IntPtr NativeMethodInfoPtr_Setup_Public_Void_RenderTargetIdentifier_Material_0;

	// Token: 0x04002E48 RID: 11848
	private static readonly IntPtr NativeMethodInfoPtr_Execute_Public_Virtual_Void_ScriptableRenderContext_byref_RenderingData_0;

	// Token: 0x04002E49 RID: 11849
	private static readonly IntPtr NativeMethodInfoPtr_FrameCleanup_Public_Virtual_Void_CommandBuffer_0;
}
