using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppSystem;
using Il2CppSystem.Reflection;

namespace AmplifyColor
{
	// Token: 0x02000641 RID: 1601
	[Serializable]
	public class VolumeEffectFieldFlags : Object
	{
		// Token: 0x0600A258 RID: 41560 RVA: 0x0029B8E0 File Offset: 0x00299AE0
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 627123, RefRangeEnd = 627125, XrefRangeStart = 627119, XrefRangeEnd = 627123, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe VolumeEffectFieldFlags(FieldInfo pi)
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr))
		{
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(pi);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(VolumeEffectFieldFlags.NativeMethodInfoPtr__ctor_Public_Void_FieldInfo_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x0600A259 RID: 41561 RVA: 0x0029B944 File Offset: 0x00299B44
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 627125, XrefRangeEnd = 627128, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe VolumeEffectFieldFlags(VolumeEffectField field)
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr))
		{
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(field);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(VolumeEffectFieldFlags.NativeMethodInfoPtr__ctor_Public_Void_VolumeEffectField_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x0600A25A RID: 41562 RVA: 0x0029B9A8 File Offset: 0x00299BA8
		// Note: this type is marked as 'beforefieldinit'.
		static VolumeEffectFieldFlags()
		{
			Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "AmplifyColor", "VolumeEffectFieldFlags");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr);
			VolumeEffectFieldFlags.NativeFieldInfoPtr_fieldName = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr, "fieldName");
			VolumeEffectFieldFlags.NativeFieldInfoPtr_fieldType = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr, "fieldType");
			VolumeEffectFieldFlags.NativeFieldInfoPtr_blendFlag = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr, "blendFlag");
			VolumeEffectFieldFlags.NativeMethodInfoPtr__ctor_Public_Void_FieldInfo_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr, 100675914);
			VolumeEffectFieldFlags.NativeMethodInfoPtr__ctor_Public_Void_VolumeEffectField_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<VolumeEffectFieldFlags>.NativeClassPtr, 100675915);
		}

		// Token: 0x0600A25B RID: 41563 RVA: 0x0000A688 File Offset: 0x00008888
		public VolumeEffectFieldFlags(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x170036E7 RID: 14055
		// (get) Token: 0x0600A25C RID: 41564 RVA: 0x0029BA3C File Offset: 0x00299C3C
		// (set) Token: 0x0600A25D RID: 41565 RVA: 0x0029BA65 File Offset: 0x00299C65
		public unsafe string fieldName
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(VolumeEffectFieldFlags.NativeFieldInfoPtr_fieldName);
				return IL2CPP.Il2CppStringToManaged(*intPtr);
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(VolumeEffectFieldFlags.NativeFieldInfoPtr_fieldName), IL2CPP.ManagedStringToIl2Cpp(value));
			}
		}

		// Token: 0x170036E8 RID: 14056
		// (get) Token: 0x0600A25E RID: 41566 RVA: 0x0029BA8C File Offset: 0x00299C8C
		// (set) Token: 0x0600A25F RID: 41567 RVA: 0x0029BAB5 File Offset: 0x00299CB5
		public unsafe string fieldType
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(VolumeEffectFieldFlags.NativeFieldInfoPtr_fieldType);
				return IL2CPP.Il2CppStringToManaged(*intPtr);
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(VolumeEffectFieldFlags.NativeFieldInfoPtr_fieldType), IL2CPP.ManagedStringToIl2Cpp(value));
			}
		}

		// Token: 0x170036E9 RID: 14057
		// (get) Token: 0x0600A260 RID: 41568 RVA: 0x0029BADC File Offset: 0x00299CDC
		// (set) Token: 0x0600A261 RID: 41569 RVA: 0x0029BB04 File Offset: 0x00299D04
		public unsafe bool blendFlag
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(VolumeEffectFieldFlags.NativeFieldInfoPtr_blendFlag);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(VolumeEffectFieldFlags.NativeFieldInfoPtr_blendFlag)) = value;
			}
		}

		// Token: 0x04006D38 RID: 27960
		private static readonly IntPtr NativeFieldInfoPtr_fieldName;

		// Token: 0x04006D39 RID: 27961
		private static readonly IntPtr NativeFieldInfoPtr_fieldType;

		// Token: 0x04006D3A RID: 27962
		private static readonly IntPtr NativeFieldInfoPtr_blendFlag;

		// Token: 0x04006D3B RID: 27963
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_FieldInfo_0;

		// Token: 0x04006D3C RID: 27964
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_VolumeEffectField_0;
	}
}
