using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
using Il2CppSystem;
using Il2CppSystem.Reflection;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.Rendering.Universal;

// Token: 0x020001F5 RID: 501
public class CustomURP : RenderPipeline
{
	// Token: 0x06004D5F RID: 19807 RVA: 0x00133158 File Offset: 0x00131358
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 548250, XrefRangeEnd = 548281, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void Render(ScriptableRenderContext context, Il2CppReferenceArray<Camera> cameras)
	{
		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.Il2CppObjectBaseToPtr(cameras);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), CustomURP.NativeMethodInfoPtr_Render_Protected_Virtual_Void_ScriptableRenderContext_Il2CppReferenceArray_1_Camera_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004D60 RID: 19808 RVA: 0x001331D0 File Offset: 0x001313D0
	[CallerCount(337)]
	[CachedScanResults(RefRangeStart = 16699, RefRangeEnd = 17036, XrefRangeStart = 16699, XrefRangeEnd = 17036, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe CustomURP()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<CustomURP>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(CustomURP.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004D61 RID: 19809 RVA: 0x0013321C File Offset: 0x0013141C
	// Note: this type is marked as 'beforefieldinit'.
	static CustomURP()
	{
		Il2CppClassPointerStore<CustomURP>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "CustomURP");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<CustomURP>.NativeClassPtr);
		CustomURP.NativeFieldInfoPtr_pipeline = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<CustomURP>.NativeClassPtr, "pipeline");
		CustomURP.NativeFieldInfoPtr_render = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<CustomURP>.NativeClassPtr, "render");
		CustomURP.NativeMethodInfoPtr_Render_Protected_Virtual_Void_ScriptableRenderContext_Il2CppReferenceArray_1_Camera_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<CustomURP>.NativeClassPtr, 100668394);
		CustomURP.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<CustomURP>.NativeClassPtr, 100668395);
	}

	// Token: 0x06004D62 RID: 19810 RVA: 0x0013329C File Offset: 0x0013149C
	public CustomURP(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001BD8 RID: 7128
	// (get) Token: 0x06004D63 RID: 19811 RVA: 0x001332A8 File Offset: 0x001314A8
	// (set) Token: 0x06004D64 RID: 19812 RVA: 0x001332DC File Offset: 0x001314DC
	public unsafe UniversalRenderPipeline pipeline
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.NativeFieldInfoPtr_pipeline);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new UniversalRenderPipeline(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.NativeFieldInfoPtr_pipeline), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001BD9 RID: 7129
	// (get) Token: 0x06004D65 RID: 19813 RVA: 0x00133304 File Offset: 0x00131504
	// (set) Token: 0x06004D66 RID: 19814 RVA: 0x00133338 File Offset: 0x00131538
	public unsafe Action<ScriptableRenderContext, Il2CppReferenceArray<Camera>> render
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.NativeFieldInfoPtr_render);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Action<ScriptableRenderContext, Il2CppReferenceArray<Camera>>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.NativeFieldInfoPtr_render), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x040032DE RID: 13022
	private static readonly IntPtr NativeFieldInfoPtr_pipeline;

	// Token: 0x040032DF RID: 13023
	private static readonly IntPtr NativeFieldInfoPtr_render;

	// Token: 0x040032E0 RID: 13024
	private static readonly IntPtr NativeMethodInfoPtr_Render_Protected_Virtual_Void_ScriptableRenderContext_Il2CppReferenceArray_1_Camera_0;

	// Token: 0x040032E1 RID: 13025
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

	// Token: 0x020001F6 RID: 502
	[ObfuscatedName("CustomURP/<>c__DisplayClass2_0")]
	public sealed class __c__DisplayClass2_0 : Il2CppSystem.Object
	{
		// Token: 0x06004D67 RID: 19815 RVA: 0x00133360 File Offset: 0x00131560
		[CallerCount(1642)]
		[CachedScanResults(RefRangeStart = 7417, RefRangeEnd = 9059, XrefRangeStart = 7417, XrefRangeEnd = 9059, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe __c__DisplayClass2_0()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<CustomURP.__c__DisplayClass2_0>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(CustomURP.__c__DisplayClass2_0.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06004D68 RID: 19816 RVA: 0x001333AC File Offset: 0x001315AC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 548239, XrefRangeEnd = 548250, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void _Render_b__0(ScriptableRenderContext src, Il2CppReferenceArray<Camera> cams)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref src;
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(cams);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(CustomURP.__c__DisplayClass2_0.NativeMethodInfoPtr__Render_b__0_Internal_Void_ScriptableRenderContext_Il2CppReferenceArray_1_Camera_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06004D69 RID: 19817 RVA: 0x00133418 File Offset: 0x00131618
		// Note: this type is marked as 'beforefieldinit'.
		static __c__DisplayClass2_0()
		{
			Il2CppClassPointerStore<CustomURP.__c__DisplayClass2_0>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<CustomURP>.NativeClassPtr, "<>c__DisplayClass2_0");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<CustomURP.__c__DisplayClass2_0>.NativeClassPtr);
			CustomURP.__c__DisplayClass2_0.NativeFieldInfoPtr___4__this = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<CustomURP.__c__DisplayClass2_0>.NativeClassPtr, "<>4__this");
			CustomURP.__c__DisplayClass2_0.NativeFieldInfoPtr_method = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<CustomURP.__c__DisplayClass2_0>.NativeClassPtr, "method");
			CustomURP.__c__DisplayClass2_0.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<CustomURP.__c__DisplayClass2_0>.NativeClassPtr, 100668396);
			CustomURP.__c__DisplayClass2_0.NativeMethodInfoPtr__Render_b__0_Internal_Void_ScriptableRenderContext_Il2CppReferenceArray_1_Camera_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<CustomURP.__c__DisplayClass2_0>.NativeClassPtr, 100668397);
		}

		// Token: 0x06004D6A RID: 19818 RVA: 0x0000A688 File Offset: 0x00008888
		public __c__DisplayClass2_0(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17001BDA RID: 7130
		// (get) Token: 0x06004D6B RID: 19819 RVA: 0x00133494 File Offset: 0x00131694
		// (set) Token: 0x06004D6C RID: 19820 RVA: 0x001334C8 File Offset: 0x001316C8
		public unsafe CustomURP __4__this
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.__c__DisplayClass2_0.NativeFieldInfoPtr___4__this);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new CustomURP(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.__c__DisplayClass2_0.NativeFieldInfoPtr___4__this), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17001BDB RID: 7131
		// (get) Token: 0x06004D6D RID: 19821 RVA: 0x001334F0 File Offset: 0x001316F0
		// (set) Token: 0x06004D6E RID: 19822 RVA: 0x00133524 File Offset: 0x00131724
		public unsafe MethodInfo method
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.__c__DisplayClass2_0.NativeFieldInfoPtr_method);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new MethodInfo(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(CustomURP.__c__DisplayClass2_0.NativeFieldInfoPtr_method), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x040032E2 RID: 13026
		private static readonly IntPtr NativeFieldInfoPtr___4__this;

		// Token: 0x040032E3 RID: 13027
		private static readonly IntPtr NativeFieldInfoPtr_method;

		// Token: 0x040032E4 RID: 13028
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x040032E5 RID: 13029
		private static readonly IntPtr NativeMethodInfoPtr__Render_b__0_Internal_Void_ScriptableRenderContext_Il2CppReferenceArray_1_Camera_0;
	}
}
