| 
									
										
										
										
											2021-01-06 00:30:14 +00:00
										 |  |  |  | /* RefreshCS - C# bindings for the Refresh graphics Library | 
					
						
							| 
									
										
										
										
											2021-01-05 23:33:38 +00:00
										 |  |  |  |  * | 
					
						
							|  |  |  |  |  * Copyright (c) 2020 Evan Hemsley | 
					
						
							|  |  |  |  |  * | 
					
						
							|  |  |  |  |  * This software is provided 'as-is', without any express or implied warranty. | 
					
						
							|  |  |  |  |  * In no event will the authors be held liable for any damages arising from | 
					
						
							|  |  |  |  |  * the use of this software. | 
					
						
							|  |  |  |  |  * | 
					
						
							|  |  |  |  |  * Permission is granted to anyone to use this software for any purpose, | 
					
						
							|  |  |  |  |  * including commercial applications, and to alter it and redistribute it | 
					
						
							|  |  |  |  |  * freely, subject to the following restrictions: | 
					
						
							|  |  |  |  |  * | 
					
						
							|  |  |  |  |  * 1. The origin of this software must not be misrepresented; you must not | 
					
						
							|  |  |  |  |  * claim that you wrote the original software. If you use this software in a | 
					
						
							|  |  |  |  |  * product, an acknowledgment in the product documentation would be | 
					
						
							|  |  |  |  |  * appreciated but is not required. | 
					
						
							|  |  |  |  |  * | 
					
						
							|  |  |  |  |  * 2. Altered source versions must be plainly marked as such, and must not be | 
					
						
							|  |  |  |  |  * misrepresented as being the original software. | 
					
						
							|  |  |  |  |  * | 
					
						
							|  |  |  |  |  * 3. This notice may not be removed or altered from any source distribution. | 
					
						
							|  |  |  |  |  * | 
					
						
							|  |  |  |  |  * Evan "cosmonaut" Hemsley <evan@moonside.games> | 
					
						
							|  |  |  |  |  * | 
					
						
							|  |  |  |  |  */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | using System; | 
					
						
							|  |  |  |  | using System.Runtime.InteropServices; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-06 02:57:05 +00:00
										 |  |  |  | namespace RefreshCS | 
					
						
							| 
									
										
										
										
											2021-01-05 23:33:38 +00:00
										 |  |  |  | { | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 	public static class Refresh | 
					
						
							|  |  |  |  | 	{ | 
					
						
							|  |  |  |  | 		private const string nativeLibName = "Refresh"; | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-03-03 00:06:37 +00:00
										 |  |  |  | 		/* Version */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public const uint REFRESH_MAJOR_VERSION = 1; | 
					
						
							| 
									
										
										
										
											2023-06-07 21:15:51 +00:00
										 |  |  |  | 		public const uint REFRESH_MINOR_VERSION = 14; | 
					
						
							| 
									
										
										
										
											2022-03-03 00:06:37 +00:00
										 |  |  |  | 		public const uint REFRESH_PATCH_VERSION = 0; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public const uint REFRESH_COMPILED_VERSION = ( | 
					
						
							|  |  |  |  | 			(REFRESH_MAJOR_VERSION * 100 * 100) + | 
					
						
							|  |  |  |  | 			(REFRESH_MINOR_VERSION * 100) + | 
					
						
							|  |  |  |  | 			(REFRESH_PATCH_VERSION) | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern uint Refresh_LinkedVersion(); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		/* Enums */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum PresentMode | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Immediate, | 
					
						
							|  |  |  |  | 			Mailbox, | 
					
						
							|  |  |  |  | 			FIFO, | 
					
						
							|  |  |  |  | 			FIFORelaxed | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum PrimitiveType | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			PointList, | 
					
						
							|  |  |  |  | 			LineList, | 
					
						
							|  |  |  |  | 			LineStrip, | 
					
						
							|  |  |  |  | 			TriangleList, | 
					
						
							|  |  |  |  | 			TriangleStrip | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum LoadOp | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Load, | 
					
						
							|  |  |  |  | 			Clear, | 
					
						
							|  |  |  |  | 			DontCare | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum StoreOp | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Store, | 
					
						
							|  |  |  |  | 			DontCare | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum IndexElementSize | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Sixteen, | 
					
						
							|  |  |  |  | 			ThirtyTwo | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum TextureFormat | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			R8G8B8A8, | 
					
						
							| 
									
										
										
										
											2022-03-02 06:56:46 +00:00
										 |  |  |  | 			B8G8R8A8, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			R5G6B5, | 
					
						
							|  |  |  |  | 			A1R5G5B5, | 
					
						
							|  |  |  |  | 			B4G4R4A4, | 
					
						
							| 
									
										
										
										
											2022-09-13 20:57:58 +00:00
										 |  |  |  | 			A2R10G10B10, | 
					
						
							|  |  |  |  | 			R16G16, | 
					
						
							|  |  |  |  | 			R16G16B16A16, | 
					
						
							|  |  |  |  | 			R8, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			BC1, | 
					
						
							|  |  |  |  | 			BC2, | 
					
						
							|  |  |  |  | 			BC3, | 
					
						
							| 
									
										
										
										
											2022-05-12 04:21:58 +00:00
										 |  |  |  | 			BC7, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			R8G8_SNORM, | 
					
						
							|  |  |  |  | 			R8G8B8A8_SNORM, | 
					
						
							|  |  |  |  | 			R16_SFLOAT, | 
					
						
							|  |  |  |  | 			R16G16_SFLOAT, | 
					
						
							|  |  |  |  | 			R16G16B16A16_SFLOAT, | 
					
						
							| 
									
										
										
										
											2022-09-13 20:57:58 +00:00
										 |  |  |  | 			R32_SFLOAT, | 
					
						
							|  |  |  |  | 			R32G32_SFLOAT, | 
					
						
							|  |  |  |  | 			R32G32B32A32_SFLOAT, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 			R8_UINT, | 
					
						
							|  |  |  |  | 			R8G8_UINT, | 
					
						
							|  |  |  |  | 			R8G8B8A8_UINT, | 
					
						
							|  |  |  |  | 			R16_UINT, | 
					
						
							|  |  |  |  | 			R16G16_UINT, | 
					
						
							|  |  |  |  | 			R16G16B16A16_UINT, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			D16, | 
					
						
							|  |  |  |  | 			D32, | 
					
						
							|  |  |  |  | 			D16S8, | 
					
						
							|  |  |  |  | 			D32S8 | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[Flags] | 
					
						
							|  |  |  |  | 		public enum TextureUsageFlags : uint | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Sampler = 1, | 
					
						
							|  |  |  |  | 			ColorTarget = 2, | 
					
						
							| 
									
										
										
										
											2022-08-25 19:32:25 +00:00
										 |  |  |  | 			DepthStencilTarget = 4, | 
					
						
							|  |  |  |  | 			Compute = 8 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum SampleCount | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			One, | 
					
						
							|  |  |  |  | 			Two, | 
					
						
							|  |  |  |  | 			Four, | 
					
						
							| 
									
										
										
										
											2023-01-31 20:27:06 +00:00
										 |  |  |  | 			Eight | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum CubeMapFace : uint | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			PositiveX, | 
					
						
							|  |  |  |  | 			NegativeX, | 
					
						
							|  |  |  |  | 			PositiveY, | 
					
						
							|  |  |  |  | 			NegativeY, | 
					
						
							|  |  |  |  | 			PositiveZ, | 
					
						
							|  |  |  |  | 			NegativeZ | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[Flags] | 
					
						
							|  |  |  |  | 		public enum BufferUsageFlags : uint | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Vertex = 1, | 
					
						
							|  |  |  |  | 			Index = 2, | 
					
						
							| 
									
										
										
										
											2022-08-25 19:32:25 +00:00
										 |  |  |  | 			Compute = 4, | 
					
						
							|  |  |  |  | 			Indirect = 8 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum VertexElementFormat | 
					
						
							|  |  |  |  | 		{ | 
					
						
							| 
									
										
										
										
											2022-03-17 21:41:47 +00:00
										 |  |  |  | 			UInt, | 
					
						
							|  |  |  |  | 			Float, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			Vector2, | 
					
						
							|  |  |  |  | 			Vector3, | 
					
						
							|  |  |  |  | 			Vector4, | 
					
						
							|  |  |  |  | 			Color, | 
					
						
							|  |  |  |  | 			Byte4, | 
					
						
							|  |  |  |  | 			Short2, | 
					
						
							|  |  |  |  | 			Short4, | 
					
						
							|  |  |  |  | 			NormalizedShort2, | 
					
						
							|  |  |  |  | 			NormalizedShort4, | 
					
						
							|  |  |  |  | 			HalfVector2, | 
					
						
							|  |  |  |  | 			HalfVector4 | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum VertexInputRate | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Vertex, | 
					
						
							|  |  |  |  | 			Instance | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum FillMode | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Fill, | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			Line | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum CullMode | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			None, | 
					
						
							|  |  |  |  | 			Front, | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			Back | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum FrontFace | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			CounterClockwise, | 
					
						
							|  |  |  |  | 			Clockwise | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum CompareOp | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Never, | 
					
						
							|  |  |  |  | 			Less, | 
					
						
							|  |  |  |  | 			Equal, | 
					
						
							|  |  |  |  | 			LessOrEqual, | 
					
						
							|  |  |  |  | 			Greater, | 
					
						
							|  |  |  |  | 			NotEqual, | 
					
						
							|  |  |  |  | 			GreaterOrEqual, | 
					
						
							|  |  |  |  | 			Always | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum StencilOp | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Keep, | 
					
						
							|  |  |  |  | 			Zero, | 
					
						
							|  |  |  |  | 			Replace, | 
					
						
							|  |  |  |  | 			IncrementAndClamp, | 
					
						
							|  |  |  |  | 			DecrementAndClamp, | 
					
						
							|  |  |  |  | 			Invert, | 
					
						
							|  |  |  |  | 			IncrementAndWrap, | 
					
						
							|  |  |  |  | 			DecrementAndWrap | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum BlendOp | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Add, | 
					
						
							|  |  |  |  | 			Subtract, | 
					
						
							|  |  |  |  | 			ReverseSubtract, | 
					
						
							|  |  |  |  | 			Min, | 
					
						
							|  |  |  |  | 			Max | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum BlendFactor | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Zero, | 
					
						
							|  |  |  |  | 			One, | 
					
						
							|  |  |  |  | 			SourceColor, | 
					
						
							|  |  |  |  | 			OneMinusSourceColor, | 
					
						
							|  |  |  |  | 			DestinationColor, | 
					
						
							|  |  |  |  | 			OneMinusDestinationColor, | 
					
						
							|  |  |  |  | 			SourceAlpha, | 
					
						
							|  |  |  |  | 			OneMinusSourceAlpha, | 
					
						
							|  |  |  |  | 			DestinationAlpha, | 
					
						
							|  |  |  |  | 			OneMinusDestinationAlpha, | 
					
						
							|  |  |  |  | 			ConstantColor, | 
					
						
							|  |  |  |  | 			OneMinusConstantColor, | 
					
						
							| 
									
										
										
										
											2022-12-29 03:16:50 +00:00
										 |  |  |  | 			SourceAlphaSaturate | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[Flags] | 
					
						
							|  |  |  |  | 		public enum ColorComponentFlags : uint | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			R = 1, | 
					
						
							|  |  |  |  | 			G = 2, | 
					
						
							|  |  |  |  | 			B = 4, | 
					
						
							|  |  |  |  | 			A = 8, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 			RG = R | G, | 
					
						
							|  |  |  |  | 			RB = R | B, | 
					
						
							|  |  |  |  | 			RA = R | A, | 
					
						
							|  |  |  |  | 			GB = G | B, | 
					
						
							|  |  |  |  | 			GA = G | A, | 
					
						
							|  |  |  |  | 			BA = B | A, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 			RGB = R | G | B, | 
					
						
							|  |  |  |  | 			RGA = R | G | A, | 
					
						
							|  |  |  |  | 			GBA = G | B | A, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 			RGBA = R | G | B | A | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum ShaderStageType | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Vertex, | 
					
						
							|  |  |  |  | 			Fragment | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum Filter | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Nearest, | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			Linear | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum SamplerMipmapMode | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Nearest, | 
					
						
							|  |  |  |  | 			Linear | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum SamplerAddressMode | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			Repeat, | 
					
						
							|  |  |  |  | 			MirroredRepeat, | 
					
						
							|  |  |  |  | 			ClampToEdge, | 
					
						
							|  |  |  |  | 			ClampToBorder | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public enum BorderColor | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			FloatTransparentBlack, | 
					
						
							|  |  |  |  | 			IntTransparentBlack, | 
					
						
							|  |  |  |  | 			FloatOpaqueBlack, | 
					
						
							|  |  |  |  | 			IntOpaqueBlack, | 
					
						
							|  |  |  |  | 			FloatOpaqueWhite, | 
					
						
							|  |  |  |  | 			IntOpaqueWhite | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 		public enum Backend | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			DontCare, | 
					
						
							|  |  |  |  | 			Vulkan, | 
					
						
							|  |  |  |  | 			PS5, | 
					
						
							|  |  |  |  | 			Invalid | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		/* Native Structures */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct DepthStencilValue | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public float depth; | 
					
						
							|  |  |  |  | 			public uint stencil; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct Rect | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public int x; | 
					
						
							|  |  |  |  | 			public int y; | 
					
						
							|  |  |  |  | 			public int w; | 
					
						
							|  |  |  |  | 			public int h; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct Vec4 | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public float x; | 
					
						
							|  |  |  |  | 			public float y; | 
					
						
							|  |  |  |  | 			public float z; | 
					
						
							|  |  |  |  | 			public float w; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct Viewport | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public float x; | 
					
						
							|  |  |  |  | 			public float y; | 
					
						
							|  |  |  |  | 			public float w; | 
					
						
							|  |  |  |  | 			public float h; | 
					
						
							|  |  |  |  | 			public float minDepth; | 
					
						
							|  |  |  |  | 			public float maxDepth; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct TextureSlice | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public IntPtr texture; | 
					
						
							|  |  |  |  | 			public Rect rectangle; | 
					
						
							|  |  |  |  | 			public uint depth; | 
					
						
							|  |  |  |  | 			public uint layer; | 
					
						
							|  |  |  |  | 			public uint level; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-01-04 18:44:44 +00:00
										 |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct IndirectDrawCommand | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public uint vertexCount; | 
					
						
							|  |  |  |  | 			public uint instanceCount; | 
					
						
							|  |  |  |  | 			public uint firstVertex; | 
					
						
							|  |  |  |  | 			public uint firstInstance; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct SamplerStateCreateInfo | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public Filter minFilter; | 
					
						
							|  |  |  |  | 			public Filter magFilter; | 
					
						
							|  |  |  |  | 			public SamplerMipmapMode mipmapMode; | 
					
						
							|  |  |  |  | 			public SamplerAddressMode addressModeU; | 
					
						
							|  |  |  |  | 			public SamplerAddressMode addressModeV; | 
					
						
							|  |  |  |  | 			public SamplerAddressMode addressModeW; | 
					
						
							|  |  |  |  | 			public float mipLodBias; | 
					
						
							|  |  |  |  | 			public byte anisotropyEnable; | 
					
						
							|  |  |  |  | 			public float maxAnisotropy; | 
					
						
							|  |  |  |  | 			public byte compareEnable; | 
					
						
							|  |  |  |  | 			public CompareOp compareOp; | 
					
						
							|  |  |  |  | 			public float minLod; | 
					
						
							|  |  |  |  | 			public float maxLod; | 
					
						
							|  |  |  |  | 			public BorderColor borderColor; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct VertexBinding | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public uint binding; | 
					
						
							|  |  |  |  | 			public uint stride; | 
					
						
							|  |  |  |  | 			public VertexInputRate inputRate; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct VertexAttribute | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public uint location; | 
					
						
							|  |  |  |  | 			public uint binding; | 
					
						
							|  |  |  |  | 			public VertexElementFormat format; | 
					
						
							|  |  |  |  | 			public uint offset; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct VertexInputState | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public IntPtr vertexBindings; | 
					
						
							|  |  |  |  | 			public uint vertexBindingCount; | 
					
						
							|  |  |  |  | 			public IntPtr vertexAttributes; | 
					
						
							|  |  |  |  | 			public uint vertexAttributeCount; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct StencilOpState | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public StencilOp failOp; | 
					
						
							|  |  |  |  | 			public StencilOp passOp; | 
					
						
							|  |  |  |  | 			public StencilOp depthFailOp; | 
					
						
							|  |  |  |  | 			public CompareOp compareOp; | 
					
						
							|  |  |  |  | 			public uint compareMask; | 
					
						
							|  |  |  |  | 			public uint writeMask; | 
					
						
							|  |  |  |  | 			public uint reference; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							| 
									
										
										
										
											2022-02-26 01:49:40 +00:00
										 |  |  |  | 		public struct ColorAttachmentBlendState | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public byte blendEnable; | 
					
						
							|  |  |  |  | 			public BlendFactor sourceColorBlendFactor; | 
					
						
							|  |  |  |  | 			public BlendFactor destinationColorBlendFactor; | 
					
						
							|  |  |  |  | 			public BlendOp colorBlendOp; | 
					
						
							|  |  |  |  | 			public BlendFactor sourceAlphaBlendFactor; | 
					
						
							|  |  |  |  | 			public BlendFactor destinationAlphaBlendFactor; | 
					
						
							|  |  |  |  | 			public BlendOp alphaBlendOp; | 
					
						
							|  |  |  |  | 			public ColorComponentFlags colorWriteMask; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct ShaderModuleCreateInfo | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public UIntPtr codeSize; /* size_t */ | 
					
						
							|  |  |  |  | 			public IntPtr byteCode; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct TextureCreateInfo | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public uint width; | 
					
						
							|  |  |  |  | 			public uint height; | 
					
						
							|  |  |  |  | 			public uint depth; | 
					
						
							|  |  |  |  | 			public byte isCube; | 
					
						
							|  |  |  |  | 			public uint levelCount; | 
					
						
							| 
									
										
										
										
											2023-01-31 20:27:06 +00:00
										 |  |  |  | 			public SampleCount sampleCount; | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			public TextureFormat format; | 
					
						
							|  |  |  |  | 			public TextureUsageFlags usageFlags; /* Refresh_TextureUsageFlags */ | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 		public struct GraphicsShaderInfo | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public IntPtr shaderModule; | 
					
						
							|  |  |  |  | 			[MarshalAs(UnmanagedType.LPStr)] | 
					
						
							|  |  |  |  | 			public string entryPointName; | 
					
						
							|  |  |  |  | 			public ulong uniformBufferSize; | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			public uint samplerBindingCount; | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-26 01:49:40 +00:00
										 |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 		public struct ComputeShaderInfo | 
					
						
							| 
									
										
										
										
											2022-02-26 01:49:40 +00:00
										 |  |  |  | 		{ | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			public IntPtr shaderModule; | 
					
						
							|  |  |  |  | 			[MarshalAs(UnmanagedType.LPStr)] | 
					
						
							|  |  |  |  | 			public string entryPointName; | 
					
						
							|  |  |  |  | 			public ulong uniformBufferSize; | 
					
						
							|  |  |  |  | 			public uint bufferBindingCount; | 
					
						
							|  |  |  |  | 			public uint imageBindingCount; | 
					
						
							| 
									
										
										
										
											2022-02-26 01:49:40 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct RasterizerState | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public FillMode fillMode; | 
					
						
							|  |  |  |  | 			public CullMode cullMode; | 
					
						
							|  |  |  |  | 			public FrontFace frontFace; | 
					
						
							|  |  |  |  | 			public byte depthBiasEnable; | 
					
						
							|  |  |  |  | 			public float depthBiasConstantFactor; | 
					
						
							|  |  |  |  | 			public float depthBiasClamp; | 
					
						
							|  |  |  |  | 			public float depthBiasSlopeFactor; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct MultisampleState | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public SampleCount multisampleCount; | 
					
						
							|  |  |  |  | 			public uint sampleMask; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct DepthStencilState | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public byte depthTestEnable; | 
					
						
							|  |  |  |  | 			public byte depthWriteEnable; | 
					
						
							|  |  |  |  | 			public CompareOp compareOp; | 
					
						
							|  |  |  |  | 			public byte depthBoundsTestEnable; | 
					
						
							|  |  |  |  | 			public byte stencilTestEnable; | 
					
						
							|  |  |  |  | 			public StencilOpState frontStencilState; | 
					
						
							|  |  |  |  | 			public StencilOpState backStencilState; | 
					
						
							|  |  |  |  | 			public float minDepthBounds; | 
					
						
							|  |  |  |  | 			public float maxDepthBounds; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct ColorAttachmentDescription | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public TextureFormat format; | 
					
						
							| 
									
										
										
										
											2022-02-26 01:49:40 +00:00
										 |  |  |  | 			public ColorAttachmentBlendState blendState; | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							|  |  |  |  | 		public struct GraphicsPipelineAttachmentInfo | 
					
						
							|  |  |  |  | 		{ | 
					
						
							|  |  |  |  | 			public IntPtr colorAttachmentDescriptions; /* Max size 4 */ | 
					
						
							|  |  |  |  | 			public uint colorAttachmentCount; | 
					
						
							|  |  |  |  | 			public byte hasDepthStencilAttachment; | 
					
						
							|  |  |  |  | 			public TextureFormat depthStencilFormat; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[StructLayout(LayoutKind.Sequential)] | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 		public unsafe struct GraphicsPipelineCreateInfo | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		{ | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			public GraphicsShaderInfo vertexShaderInfo; | 
					
						
							|  |  |  |  | 			public GraphicsShaderInfo fragmentShaderInfo; | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			public VertexInputState vertexInputState; | 
					
						
							|  |  |  |  | 			public PrimitiveType primitiveType; | 
					
						
							|  |  |  |  | 			public RasterizerState rasterizerState; | 
					
						
							|  |  |  |  | 			public MultisampleState multisampleState; | 
					
						
							|  |  |  |  | 			public DepthStencilState depthStencilState; | 
					
						
							|  |  |  |  | 			public GraphicsPipelineAttachmentInfo attachmentInfo; | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			public fixed float blendConstants[4]; | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public struct ColorAttachmentInfo | 
					
						
							|  |  |  |  | 		{ | 
					
						
							| 
									
										
										
										
											2022-03-02 06:56:46 +00:00
										 |  |  |  | 			public IntPtr texture; | 
					
						
							|  |  |  |  | 			public uint depth; | 
					
						
							|  |  |  |  | 			public uint layer; | 
					
						
							|  |  |  |  | 			public uint level; | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			public Vec4 clearColor; | 
					
						
							|  |  |  |  | 			public LoadOp loadOp; | 
					
						
							|  |  |  |  | 			public StoreOp storeOp; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		public struct DepthStencilAttachmentInfo | 
					
						
							|  |  |  |  | 		{ | 
					
						
							| 
									
										
										
										
											2022-03-02 06:56:46 +00:00
										 |  |  |  | 			public IntPtr texture; | 
					
						
							|  |  |  |  | 			public uint depth; | 
					
						
							|  |  |  |  | 			public uint layer; | 
					
						
							|  |  |  |  | 			public uint level; | 
					
						
							|  |  |  |  | 			public DepthStencilValue depthStencilClearValue; | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			public LoadOp loadOp; | 
					
						
							|  |  |  |  | 			public StoreOp storeOp; | 
					
						
							|  |  |  |  | 			public LoadOp stencilLoadOp; | 
					
						
							|  |  |  |  | 			public StoreOp stencilStoreOp; | 
					
						
							|  |  |  |  | 		} | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		/* Logging */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[UnmanagedFunctionPointer(CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public delegate void Refresh_LogFunc(IntPtr msg); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_HookLogFunctions( | 
					
						
							|  |  |  |  | 			Refresh_LogFunc info, | 
					
						
							|  |  |  |  | 			Refresh_LogFunc warn, | 
					
						
							|  |  |  |  | 			Refresh_LogFunc error | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		/* Init/Quit */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern Backend Refresh_SelectBackend( | 
					
						
							|  |  |  |  | 			Backend preferredBackend, | 
					
						
							|  |  |  |  | 			out uint flags | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_CreateDevice( | 
					
						
							|  |  |  |  | 			byte debugMode | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_DestroyDevice(IntPtr device); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		/* Drawing */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_DrawInstancedPrimitives( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			uint baseVertex, | 
					
						
							|  |  |  |  | 			uint startIndex, | 
					
						
							|  |  |  |  | 			uint primitiveCount, | 
					
						
							|  |  |  |  | 			uint instanceCount, | 
					
						
							|  |  |  |  | 			uint vertexParamOffset, | 
					
						
							|  |  |  |  | 			uint fragmentParamOffset | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_DrawIndexedPrimitives( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			uint baseVertex, | 
					
						
							|  |  |  |  | 			uint startIndex, | 
					
						
							|  |  |  |  | 			uint primitiveCount, | 
					
						
							|  |  |  |  | 			uint vertexParamOffset, | 
					
						
							|  |  |  |  | 			uint fragmentParamOffset | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_DrawPrimitives( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			uint vertexStart, | 
					
						
							|  |  |  |  | 			uint primitiveCount, | 
					
						
							|  |  |  |  | 			uint vertexParamOffset, | 
					
						
							| 
									
										
										
										
											2022-08-25 19:32:25 +00:00
										 |  |  |  | 			uint fragmentParamOffset | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_DrawPrimitivesIndirect( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr buffer, | 
					
						
							|  |  |  |  | 			uint offsetInBytes, | 
					
						
							|  |  |  |  | 			uint drawCount, | 
					
						
							|  |  |  |  | 			uint stride, | 
					
						
							|  |  |  |  | 			uint vertexParamOffset, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			uint fragmentParamOffset | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_DispatchCompute( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			uint groupCountX, | 
					
						
							|  |  |  |  | 			uint groupCountY, | 
					
						
							|  |  |  |  | 			uint groupCountZ, | 
					
						
							|  |  |  |  | 			uint computeParamOffset | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		/* Creates */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_CreateComputePipeline( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-03-02 19:40:06 +00:00
										 |  |  |  | 			in ComputeShaderInfo computeShaderInfo | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_CreateGraphicsPipeline( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			in GraphicsPipelineCreateInfo graphicsPipelineCreateInfo | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_CreateSampler( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			in SamplerStateCreateInfo samplerStateCreateInfo | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_CreateShaderModule( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			in ShaderModuleCreateInfo shaderModuleCreateInfo | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_CreateTexture( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			in TextureCreateInfo textureCreateInfo | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_CreateBuffer( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			BufferUsageFlags usageFlags, | 
					
						
							|  |  |  |  | 			uint sizeInBytes | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		/* Setters */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_SetTextureData( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			in TextureSlice textureSlice, | 
					
						
							|  |  |  |  | 			IntPtr data, | 
					
						
							|  |  |  |  | 			uint dataLengthInBytes | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_SetTextureDataYUV( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr y, | 
					
						
							|  |  |  |  | 			IntPtr u, | 
					
						
							|  |  |  |  | 			IntPtr v, | 
					
						
							|  |  |  |  | 			uint yWidth, | 
					
						
							|  |  |  |  | 			uint yHeight, | 
					
						
							|  |  |  |  | 			uint uvWidth, | 
					
						
							|  |  |  |  | 			uint uvHeight, | 
					
						
							| 
									
										
										
										
											2023-06-01 23:20:43 +00:00
										 |  |  |  | 			IntPtr yDataPtr, | 
					
						
							|  |  |  |  | 			IntPtr uDataPtr, | 
					
						
							|  |  |  |  | 			IntPtr vDataPtr, | 
					
						
							|  |  |  |  | 			uint yDataLength, | 
					
						
							|  |  |  |  | 			uint uvDataLength, | 
					
						
							|  |  |  |  | 			uint yStride, | 
					
						
							|  |  |  |  | 			uint uvStride | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_CopyTextureToTexture( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			in TextureSlice sourceTextureSlice, | 
					
						
							|  |  |  |  | 			in TextureSlice destinationTextureSlice, | 
					
						
							|  |  |  |  | 			Filter filter | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_CopyTextureToBuffer( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			in TextureSlice textureSlice, | 
					
						
							|  |  |  |  | 			IntPtr buffer | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_GetBufferData( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr buffer, | 
					
						
							|  |  |  |  | 			IntPtr data, | 
					
						
							|  |  |  |  | 			uint dataLengthInBytes | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_SetBufferData( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr buffer, | 
					
						
							|  |  |  |  | 			uint offsetInBytes, | 
					
						
							|  |  |  |  | 			IntPtr data, | 
					
						
							|  |  |  |  | 			uint dataLengthInBytes | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern uint Refresh_PushVertexShaderUniforms( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr data, | 
					
						
							|  |  |  |  | 			uint dataLengthInBytes | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern uint Refresh_PushFragmentShaderUniforms( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr data, | 
					
						
							|  |  |  |  | 			uint dataLengthInBytes | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern uint Refresh_PushComputeShaderUniforms( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr data, | 
					
						
							|  |  |  |  | 			uint dataLengthInBytes | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		/* Disposal */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_QueueDestroyTexture( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr texture | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_QueueDestroySampler( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr sampler | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_QueueDestroyBuffer( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr buffer | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_QueueDestroyShaderModule( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr shaderModule | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_QueueDestroyComputePipeline( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr computePipeline | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-06 02:00:26 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_QueueDestroyGraphicsPipeline( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr graphicsPipeline | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-06 02:00:26 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		/* Graphics State */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BeginRenderPass( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-03-07 06:32:41 +00:00
										 |  |  |  | 			IntPtr colorAttachmentInfos, | 
					
						
							|  |  |  |  | 			uint colorAttachmentCount, | 
					
						
							|  |  |  |  | 			IntPtr depthStencilAttachmentInfo /* can be NULL */ | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static unsafe extern void Refresh_BeginRenderPass( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-03-07 06:32:41 +00:00
										 |  |  |  | 			ColorAttachmentInfo* colorAttachmentInfos, | 
					
						
							|  |  |  |  | 			uint colorAttachmentCount, | 
					
						
							|  |  |  |  | 			DepthStencilAttachmentInfo* depthStencilAttachmentInfo /* can be NULL */ | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_EndRenderPass( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BindGraphicsPipeline( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-02-19 05:01:59 +00:00
										 |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr graphicsPipeline | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-06 02:00:26 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2022-03-04 21:21:00 +00:00
										 |  |  |  | 		public static extern void Refresh_SetViewport( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			in Viewport viewport | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_SetScissor( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			in Rect scissor | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		public static extern void Refresh_BindVertexBuffers( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			uint firstBinding, | 
					
						
							|  |  |  |  | 			uint bindingCount, | 
					
						
							|  |  |  |  | 			IntPtr pBuffers, | 
					
						
							|  |  |  |  | 			IntPtr pOffsets | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BindIndexBuffer( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr buffer, | 
					
						
							|  |  |  |  | 			uint offset, | 
					
						
							|  |  |  |  | 			IndexElementSize indexElementSize | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BindVertexSamplers( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-02-19 05:01:59 +00:00
										 |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr pTextures, | 
					
						
							|  |  |  |  | 			IntPtr pSamplers | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-06 02:00:26 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BindFragmentSamplers( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-02-19 05:01:59 +00:00
										 |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr pTextures, | 
					
						
							|  |  |  |  | 			IntPtr pSamplers | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-06 02:00:26 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BindComputePipeline( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-02-19 05:01:59 +00:00
										 |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr computePipeline | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-14 09:26:25 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BindComputeBuffers( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-02-19 05:01:59 +00:00
										 |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr pBuffers | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-06 02:00:26 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_BindComputeTextures( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-02-19 05:01:59 +00:00
										 |  |  |  | 			IntPtr commandBuffer, | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr pTextures | 
					
						
							|  |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2021-01-06 02:00:26 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		/* Submission/Presentation */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 		public static extern byte Refresh_ClaimWindow( | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 			IntPtr windowHandle, | 
					
						
							|  |  |  |  | 			PresentMode presentMode | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 		public static extern void Refresh_UnclaimWindow( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr windowHandle | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_SetSwapchainPresentMode( | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-03-10 18:25:16 +00:00
										 |  |  |  | 			IntPtr windowHandle, | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 			PresentMode presentMode | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2022-03-02 06:56:46 +00:00
										 |  |  |  | 		public static extern TextureFormat Refresh_GetSwapchainFormat( | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 			IntPtr device, | 
					
						
							| 
									
										
										
										
											2022-02-09 01:17:00 +00:00
										 |  |  |  | 			IntPtr windowHandle | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_AcquireCommandBuffer( | 
					
						
							| 
									
										
										
										
											2023-01-14 18:04:17 +00:00
										 |  |  |  | 			IntPtr device | 
					
						
							| 
									
										
										
										
											2022-09-29 21:17:59 +00:00
										 |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern IntPtr Refresh_AcquireSwapchainTexture( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			IntPtr commandBuffer, | 
					
						
							|  |  |  |  | 			IntPtr windowHandle, | 
					
						
							|  |  |  |  | 			out uint width, | 
					
						
							|  |  |  |  | 			out uint height | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_Submit( | 
					
						
							|  |  |  |  | 			IntPtr device, | 
					
						
							|  |  |  |  | 			uint commandBufferCount, | 
					
						
							|  |  |  |  | 			IntPtr pCommandBuffers | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							|  |  |  |  | 		public static extern void Refresh_Wait( | 
					
						
							|  |  |  |  | 			IntPtr device | 
					
						
							|  |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2023-04-19 06:49:14 +00:00
										 |  |  |  | 		public static extern IntPtr Refresh_Image_Load( | 
					
						
							|  |  |  |  | 			IntPtr bufferPtr, | 
					
						
							| 
									
										
										
										
											2023-04-04 00:27:34 +00:00
										 |  |  |  | 			int bufferLength, | 
					
						
							| 
									
										
										
										
											2023-04-19 06:49:14 +00:00
										 |  |  |  | 			out int w, | 
					
						
							|  |  |  |  | 			out int h, | 
					
						
							|  |  |  |  | 			out int len | 
					
						
							| 
									
										
										
										
											2023-04-04 00:27:34 +00:00
										 |  |  |  | 		); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2023-04-19 06:49:14 +00:00
										 |  |  |  | 		public static extern void Refresh_Image_Free(IntPtr mem); | 
					
						
							| 
									
										
										
										
											2023-04-04 00:27:34 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 		[DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] | 
					
						
							| 
									
										
										
										
											2023-04-19 06:49:14 +00:00
										 |  |  |  | 		public static extern IntPtr Refresh_Image_SavePNG( | 
					
						
							| 
									
										
										
										
											2023-04-04 00:27:34 +00:00
										 |  |  |  | 			[MarshalAs(UnmanagedType.LPStr)] string filename, | 
					
						
							| 
									
										
										
										
											2023-04-19 06:49:14 +00:00
										 |  |  |  | 			IntPtr data, | 
					
						
							| 
									
										
										
										
											2023-04-04 00:27:34 +00:00
										 |  |  |  | 			int w, | 
					
						
							| 
									
										
										
										
											2023-04-19 06:49:14 +00:00
										 |  |  |  | 			int h | 
					
						
							| 
									
										
										
										
											2023-04-04 00:27:34 +00:00
										 |  |  |  | 		); | 
					
						
							| 
									
										
										
										
											2022-02-25 05:33:45 +00:00
										 |  |  |  | 	} | 
					
						
							| 
									
										
										
										
											2021-01-05 23:33:38 +00:00
										 |  |  |  | } |