using System;
using Cpp2IlInjected;

namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
	// Token: 0x0200066D RID: 1645
	[Token(Token = "0x200066D")]
	internal class UVChannels<TVec>
	{
		// Token: 0x170003E3 RID: 995
		// (get) Token: 0x060033D6 RID: 13270 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x170003E3")]
		public TVec[][] Data
		{
			[Token(Token = "0x60033D6")]
			[Address(RVA = "0x415A60", Offset = "0x414A60", VA = "0x180415A60")]
			get
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}
		}

		// Token: 0x170003E4 RID: 996
		[Token(Token = "0x170003E4")]
		public ResizableArray<TVec> this[int index]
		{
			[Token(Token = "0x60033D7")]
			[Address(RVA = "0x54CF40", Offset = "0x54BF40", VA = "0x18054CF40")]
			get
			{
				return this.channels[index];
			}
			[Token(Token = "0x60033D8")]
			[Address(RVA = "0x785DD0", Offset = "0x784DD0", VA = "0x180785DD0")]
			set
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}
		}

		// Token: 0x060033D9 RID: 13273 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x60033D9")]
		[Address(RVA = "0x785C40", Offset = "0x784C40", VA = "0x180785C40")]
		public UVChannels()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x060033DA RID: 13274 RVA: 0x0006DF88 File Offset: 0x0006C188
		[Token(Token = "0x60033DA")]
		[Address(RVA = "0x785870", Offset = "0x784870", VA = "0x180785870")]
		public void Resize(int capacity, bool trimExess = false)
		{
			int num = 0;
			ResizableArray resizableArray = this.channels[num];
			if (resizableArray != 0)
			{
				int num2 = 0;
				resizableArray.Resize(capacity, trimExess, num2 != 0);
			}
			num++;
		}

		// Token: 0x060033DB RID: 13275 RVA: 0x000020D3 File Offset: 0x000002D3
		// Note: this type is marked as 'beforefieldinit'.
		[Token(Token = "0x60033DB")]
		[Address(RVA = "0x785A60", Offset = "0x784A60", VA = "0x180785A60")]
		static UVChannels()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x04003DCA RID: 15818
		[Token(Token = "0x4003DCA")]
		private static readonly int UVChannelCount;

		// Token: 0x04003DCB RID: 15819
		[FieldOffset(Offset = "0x0")]
		[Token(Token = "0x4003DCB")]
		private ResizableArray<TVec>[] channels;

		// Token: 0x04003DCC RID: 15820
		[FieldOffset(Offset = "0x0")]
		[Token(Token = "0x4003DCC")]
		private TVec[][] channelsData;
	}
}
