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

namespace UnityStandardAssets.ImageEffects
{
	// Token: 0x020005EB RID: 1515
	public class Twirl : ImageEffectBase
	{
		// Token: 0x06009D82 RID: 40322 RVA: 0x00285770 File Offset: 0x00283970
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 622195, XrefRangeEnd = 622197, 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(Twirl.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009D83 RID: 40323 RVA: 0x002857E4 File Offset: 0x002839E4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 622197, XrefRangeEnd = 622198, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe Twirl()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<Twirl>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Twirl.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009D84 RID: 40324 RVA: 0x00285830 File Offset: 0x00283A30
		// Note: this type is marked as 'beforefieldinit'.
		static Twirl()
		{
			Il2CppClassPointerStore<Twirl>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "UnityStandardAssets.ImageEffects", "Twirl");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<Twirl>.NativeClassPtr);
			Twirl.NativeFieldInfoPtr_radius = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Twirl>.NativeClassPtr, "radius");
			Twirl.NativeFieldInfoPtr_angle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Twirl>.NativeClassPtr, "angle");
			Twirl.NativeFieldInfoPtr_center = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Twirl>.NativeClassPtr, "center");
			Twirl.NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Twirl>.NativeClassPtr, 100675432);
			Twirl.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Twirl>.NativeClassPtr, 100675433);
		}

		// Token: 0x06009D85 RID: 40325 RVA: 0x0027BA8C File Offset: 0x00279C8C
		public Twirl(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17003579 RID: 13689
		// (get) Token: 0x06009D86 RID: 40326 RVA: 0x002858C4 File Offset: 0x00283AC4
		// (set) Token: 0x06009D87 RID: 40327 RVA: 0x002858EC File Offset: 0x00283AEC
		public unsafe Vector2 radius
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Twirl.NativeFieldInfoPtr_radius);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Twirl.NativeFieldInfoPtr_radius)) = value;
			}
		}

		// Token: 0x1700357A RID: 13690
		// (get) Token: 0x06009D88 RID: 40328 RVA: 0x00285910 File Offset: 0x00283B10
		// (set) Token: 0x06009D89 RID: 40329 RVA: 0x00285938 File Offset: 0x00283B38
		public unsafe float angle
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Twirl.NativeFieldInfoPtr_angle);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Twirl.NativeFieldInfoPtr_angle)) = value;
			}
		}

		// Token: 0x1700357B RID: 13691
		// (get) Token: 0x06009D8A RID: 40330 RVA: 0x0028595C File Offset: 0x00283B5C
		// (set) Token: 0x06009D8B RID: 40331 RVA: 0x00285984 File Offset: 0x00283B84
		public unsafe Vector2 center
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Twirl.NativeFieldInfoPtr_center);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Twirl.NativeFieldInfoPtr_center)) = value;
			}
		}

		// Token: 0x0400699F RID: 27039
		private static readonly IntPtr NativeFieldInfoPtr_radius;

		// Token: 0x040069A0 RID: 27040
		private static readonly IntPtr NativeFieldInfoPtr_angle;

		// Token: 0x040069A1 RID: 27041
		private static readonly IntPtr NativeFieldInfoPtr_center;

		// Token: 0x040069A2 RID: 27042
		private static readonly IntPtr NativeMethodInfoPtr_OnRenderImage_Private_Void_RenderTexture_RenderTexture_0;

		// Token: 0x040069A3 RID: 27043
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
