/// <summary> /// Initializes a new aliasing instance of <see cref="ResourceBarrier"/> struct. /// </summary> /// <param name="aliasing">The aliasing.</param> public ResourceBarrier(ResourceAliasingBarrier aliasing) { Type = ResourceBarrierType.Aliasing; Flags = ResourceBarrierFlags.None; _union = new Union { Aliasing = aliasing }; }
/// <summary> /// Initializes a new UAV instance of the <see cref="ResourceBarrier"/> struct. /// </summary> /// <param name="unorderedAccessView">The unordered access view.</param> public ResourceBarrier(ResourceUnorderedAccessViewBarrier unorderedAccessView) { Type = ResourceBarrierType.UnorderedAccessView; Flags = ResourceBarrierFlags.None; _union = new Union { UnorderedAccessView = unorderedAccessView }; }
/// <summary> /// Initializes a new transition instance of <see cref="ResourceBarrier"/> struct. /// </summary> /// <param name="transition">The transition barrier.</param> /// <param name="flags"></param> public ResourceBarrier(ResourceTransitionBarrier transition, ResourceBarrierFlags flags = ResourceBarrierFlags.None) { Type = ResourceBarrierType.Transition; Flags = flags; _union = new Union { Transition = transition }; }