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

namespace Obi
{
	// Token: 0x020004E2 RID: 1250
	public class ObiEmitterMaterialFluid : ObiEmitterMaterial
	{
		// Token: 0x06008FAC RID: 36780 RVA: 0x0024F4D4 File Offset: 0x0024D6D4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 611474, XrefRangeEnd = 611479, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnValidate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiEmitterMaterialFluid.NativeMethodInfoPtr_OnValidate_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008FAD RID: 36781 RVA: 0x0024F518 File Offset: 0x0024D718
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 611479, XrefRangeEnd = 611481, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe override Oni.FluidMaterial GetEquivalentOniMaterial(Oni.SolverParameters.Mode mode)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref mode;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), ObiEmitterMaterialFluid.NativeMethodInfoPtr_GetEquivalentOniMaterial_Public_Virtual_FluidMaterial_Mode_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06008FAE RID: 36782 RVA: 0x0024F588 File Offset: 0x0024D788
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 611481, XrefRangeEnd = 611482, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ObiEmitterMaterialFluid()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiEmitterMaterialFluid.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06008FAF RID: 36783 RVA: 0x0024F5D4 File Offset: 0x0024D7D4
		// Note: this type is marked as 'beforefieldinit'.
		static ObiEmitterMaterialFluid()
		{
			Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "Obi", "ObiEmitterMaterialFluid");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr);
			ObiEmitterMaterialFluid.NativeFieldInfoPtr_smoothing = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, "smoothing");
			ObiEmitterMaterialFluid.NativeFieldInfoPtr_viscosity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, "viscosity");
			ObiEmitterMaterialFluid.NativeFieldInfoPtr_surfaceTension = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, "surfaceTension");
			ObiEmitterMaterialFluid.NativeFieldInfoPtr_buoyancy = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, "buoyancy");
			ObiEmitterMaterialFluid.NativeFieldInfoPtr_atmosphericDrag = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, "atmosphericDrag");
			ObiEmitterMaterialFluid.NativeFieldInfoPtr_atmosphericPressure = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, "atmosphericPressure");
			ObiEmitterMaterialFluid.NativeFieldInfoPtr_vorticity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, "vorticity");
			ObiEmitterMaterialFluid.NativeMethodInfoPtr_OnValidate_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, 100674426);
			ObiEmitterMaterialFluid.NativeMethodInfoPtr_GetEquivalentOniMaterial_Public_Virtual_FluidMaterial_Mode_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, 100674427);
			ObiEmitterMaterialFluid.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiEmitterMaterialFluid>.NativeClassPtr, 100674428);
		}

		// Token: 0x06008FB0 RID: 36784 RVA: 0x0024F6CC File Offset: 0x0024D8CC
		public ObiEmitterMaterialFluid(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x170030C4 RID: 12484
		// (get) Token: 0x06008FB1 RID: 36785 RVA: 0x0024F6D8 File Offset: 0x0024D8D8
		// (set) Token: 0x06008FB2 RID: 36786 RVA: 0x0024F700 File Offset: 0x0024D900
		public unsafe float smoothing
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_smoothing);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_smoothing)) = value;
			}
		}

		// Token: 0x170030C5 RID: 12485
		// (get) Token: 0x06008FB3 RID: 36787 RVA: 0x0024F724 File Offset: 0x0024D924
		// (set) Token: 0x06008FB4 RID: 36788 RVA: 0x0024F74C File Offset: 0x0024D94C
		public unsafe float viscosity
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_viscosity);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_viscosity)) = value;
			}
		}

		// Token: 0x170030C6 RID: 12486
		// (get) Token: 0x06008FB5 RID: 36789 RVA: 0x0024F770 File Offset: 0x0024D970
		// (set) Token: 0x06008FB6 RID: 36790 RVA: 0x0024F798 File Offset: 0x0024D998
		public unsafe float surfaceTension
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_surfaceTension);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_surfaceTension)) = value;
			}
		}

		// Token: 0x170030C7 RID: 12487
		// (get) Token: 0x06008FB7 RID: 36791 RVA: 0x0024F7BC File Offset: 0x0024D9BC
		// (set) Token: 0x06008FB8 RID: 36792 RVA: 0x0024F7E4 File Offset: 0x0024D9E4
		public unsafe float buoyancy
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_buoyancy);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_buoyancy)) = value;
			}
		}

		// Token: 0x170030C8 RID: 12488
		// (get) Token: 0x06008FB9 RID: 36793 RVA: 0x0024F808 File Offset: 0x0024DA08
		// (set) Token: 0x06008FBA RID: 36794 RVA: 0x0024F830 File Offset: 0x0024DA30
		public unsafe float atmosphericDrag
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_atmosphericDrag);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_atmosphericDrag)) = value;
			}
		}

		// Token: 0x170030C9 RID: 12489
		// (get) Token: 0x06008FBB RID: 36795 RVA: 0x0024F854 File Offset: 0x0024DA54
		// (set) Token: 0x06008FBC RID: 36796 RVA: 0x0024F87C File Offset: 0x0024DA7C
		public unsafe float atmosphericPressure
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_atmosphericPressure);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_atmosphericPressure)) = value;
			}
		}

		// Token: 0x170030CA RID: 12490
		// (get) Token: 0x06008FBD RID: 36797 RVA: 0x0024F8A0 File Offset: 0x0024DAA0
		// (set) Token: 0x06008FBE RID: 36798 RVA: 0x0024F8C8 File Offset: 0x0024DAC8
		public unsafe float vorticity
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_vorticity);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiEmitterMaterialFluid.NativeFieldInfoPtr_vorticity)) = value;
			}
		}

		// Token: 0x04005FBF RID: 24511
		private static readonly IntPtr NativeFieldInfoPtr_smoothing;

		// Token: 0x04005FC0 RID: 24512
		private static readonly IntPtr NativeFieldInfoPtr_viscosity;

		// Token: 0x04005FC1 RID: 24513
		private static readonly IntPtr NativeFieldInfoPtr_surfaceTension;

		// Token: 0x04005FC2 RID: 24514
		private static readonly IntPtr NativeFieldInfoPtr_buoyancy;

		// Token: 0x04005FC3 RID: 24515
		private static readonly IntPtr NativeFieldInfoPtr_atmosphericDrag;

		// Token: 0x04005FC4 RID: 24516
		private static readonly IntPtr NativeFieldInfoPtr_atmosphericPressure;

		// Token: 0x04005FC5 RID: 24517
		private static readonly IntPtr NativeFieldInfoPtr_vorticity;

		// Token: 0x04005FC6 RID: 24518
		private static readonly IntPtr NativeMethodInfoPtr_OnValidate_Public_Void_0;

		// Token: 0x04005FC7 RID: 24519
		private static readonly IntPtr NativeMethodInfoPtr_GetEquivalentOniMaterial_Public_Virtual_FluidMaterial_Mode_0;

		// Token: 0x04005FC8 RID: 24520
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
	}
}
