using SharpDX; using SharpDX.D3DCompiler; using SharpDX.Direct3D10; using System; using System.Collections.Generic; using System.Linq; using System.Text; using Dx10 = SharpDX.Direct3D10; namespace ANX.RenderSystem.Windows.DX10 { static class Extensions { public static Dx10.CpuAccessFlags ToCpuAccessFlags(this ResourceMapping mapping) { Dx10.CpuAccessFlags flags = Dx10.CpuAccessFlags.None; if ((mapping & ResourceMapping.Read) != 0) flags |= Dx10.CpuAccessFlags.Read; if ((mapping & ResourceMapping.Write) != 0) flags |= Dx10.CpuAccessFlags.Write; return flags; } public static Dx10.MapMode ToMapMode(this ResourceMapping mapping) { return (Dx10.MapMode)mapping; } public static ResourceRegion ToResourceRegion(this Framework.Rectangle rect) { return new ResourceRegion() { Back = 1, Bottom = rect.Bottom, Front = 0, Left = rect.Left, Right = rect.Right, Top = rect.Top, }; } public static ANX.Framework.Graphics.EffectParameterClass ToParameterClass(this ShaderVariableClass variableClass) { return DxFormatConverter.Translate(variableClass); } public static ANX.Framework.Graphics.EffectParameterType ToParameterType(this ShaderVariableType variableType) { return DxFormatConverter.Translate(variableType); } } }