Show More
Commit Description:
Various UI improvements.
Commit Description:
Various UI improvements.
References:
File last commit:
Show/Diff file:
Action:
FNA/src/Graphics/RenderTargetBinding.cs
85 lines | 1.6 KiB | text/x-csharp | CSharpLexer
85 lines | 1.6 KiB | text/x-csharp | CSharpLexer
r0 | #region License | |||
/* FNA - XNA4 Reimplementation for Desktop Platforms | ||||
* Copyright 2009-2020 Ethan Lee and the MonoGame Team | ||||
* | ||||
* Released under the Microsoft Public License. | ||||
* See LICENSE for details. | ||||
*/ | ||||
#endregion | ||||
#region Using Statements | ||||
using System; | ||||
#endregion | ||||
namespace Microsoft.Xna.Framework.Graphics | ||||
{ | ||||
// RenderTargetBinding structure: http://msdn.microsoft.com/en-us/library/ff434403.aspx | ||||
public struct RenderTargetBinding | ||||
{ | ||||
#region Public Properties | ||||
public Texture RenderTarget | ||||
{ | ||||
get | ||||
{ | ||||
return renderTarget; | ||||
} | ||||
} | ||||
public CubeMapFace CubeMapFace | ||||
{ | ||||
get | ||||
{ | ||||
return cubeMapFace; | ||||
} | ||||
} | ||||
#endregion | ||||
#region Private Variables | ||||
private readonly Texture renderTarget; | ||||
private readonly CubeMapFace cubeMapFace; | ||||
#endregion | ||||
#region Public Constructors | ||||
public RenderTargetBinding(RenderTarget2D renderTarget) | ||||
{ | ||||
if (renderTarget == null) | ||||
{ | ||||
throw new ArgumentNullException("renderTarget"); | ||||
} | ||||
this.renderTarget = renderTarget; | ||||
cubeMapFace = CubeMapFace.PositiveX; | ||||
} | ||||
public RenderTargetBinding(RenderTargetCube renderTarget, CubeMapFace cubeMapFace) | ||||
{ | ||||
if (renderTarget == null) | ||||
{ | ||||
throw new ArgumentNullException("renderTarget"); | ||||
} | ||||
if (cubeMapFace < CubeMapFace.PositiveX || cubeMapFace > CubeMapFace.NegativeZ) | ||||
{ | ||||
throw new ArgumentOutOfRangeException("cubeMapFace"); | ||||
} | ||||
this.renderTarget = renderTarget; | ||||
this.cubeMapFace = cubeMapFace; | ||||
} | ||||
#endregion | ||||
#region Public Static Conversion Operator | ||||
public static implicit operator RenderTargetBinding(RenderTarget2D renderTarget) | ||||
{ | ||||
return new RenderTargetBinding(renderTarget); | ||||
} | ||||
#endregion | ||||
} | ||||
} | ||||