コード例 #1
0
 bool CanUseAsImpl(
     AttrInfo info,
     AttrCase channel,
     TermFlavor flavor)
 {
     return(info.IsFactor(flavor, channel));
 }
コード例 #2
0
        D3D11_BLEND GetTermBlendDescImpl(
            TermInfo info,
            AttrCase channel,
            TermFlavor flavor)
        {
            // Need to look for a match on our target type
            var left  = info._left;
            var right = info._right;

            AttrInfo factor = null;

            if (left.IsFactor(flavor, channel))
            {
                factor = right;
            }
            else if (right.IsFactor(flavor, channel))
            {
                factor = left;
            }
            else
            {
                throw OperationTooComplexError(info.Range);
            }

            return(GetFactorBlendDesc(
                       factor,
                       channel));
        }
コード例 #3
0
 D3D11_BLEND GetTermBlendDesc(
     AttrInfo info,
     AttrCase channel,
     TermFlavor flavor)
 {
     return(GetTermBlendDescImpl((dynamic)info, channel, flavor));
 }
コード例 #4
0
 public override bool IsFactor(
     TermFlavor flavor,
     AttrCase channel)
 {
     if (flavor == TermFlavor.Dest)
     {
         if (channel == AttrCase.Color)
         {
             return(_color == D3D11_BLEND.D3D11_BLEND_DEST_COLOR);
         }
         else if (channel == AttrCase.Alpha)
         {
             return(_alpha == D3D11_BLEND.D3D11_BLEND_DEST_ALPHA);
         }
     }
     else if (flavor == TermFlavor.Src)
     {
         if (channel == AttrCase.Color)
         {
             return(_color == D3D11_BLEND.D3D11_BLEND_SRC_COLOR);
         }
         else if (channel == AttrCase.Alpha)
         {
             return(_alpha == D3D11_BLEND.D3D11_BLEND_SRC_ALPHA);
         }
     }
     return(false);
 }
コード例 #5
0
 public override bool IsFactor(
     TermFlavor flavor,
     AttrCase channel)
 {
     if (flavor == TermFlavor.Dest)
     {
         return(true);
     }
     return(false);
 }
コード例 #6
0
 bool CanUseAs(
     AttrInfo info,
     AttrCase channel,
     TermFlavor flavor)
 {
     if (info.IsFactor(flavor, channel))
     {
         return(true);
     }
     return(CanUseAsImpl((dynamic)info, channel, flavor));
 }
コード例 #7
0
        D3D11_BLEND GetTermBlendDescImpl(
            AttrInfo info,
            AttrCase channel,
            TermFlavor flavor)
        {
            if (info.IsFactor(flavor, channel))
            {
                return(D3D11_BLEND.D3D11_BLEND_ONE);
            }

            throw OperationTooComplexError(info.Range);
        }
コード例 #8
0
        bool CanUseAsImpl(
            TermInfo info,
            AttrCase channel,
            TermFlavor flavor)
        {
            var  left        = info._left;
            var  right       = info._right;
            bool canUseLeft  = CanUseAs(left, channel, flavor);
            bool canUseRight = CanUseAs(right, channel, flavor);

            return(canUseLeft || canUseRight);
        }
コード例 #9
0
 public virtual bool IsFactor(
     TermFlavor flavor,
     AttrCase channel)
 {
     return false;
 }
コード例 #10
0
        D3D11_BLEND GetTermBlendDescImpl(
            TermInfo info,
            AttrCase channel,
            TermFlavor flavor)
        {
            // Need to look for a match on our target type
            var left = info._left;
            var right = info._right;

            AttrInfo factor = null;
            if (left.IsFactor(flavor, channel))
            {
                factor = right;
            }
            else if (right.IsFactor(flavor, channel))
            {
                factor = left;
            }
            else
            {
                throw OperationTooComplexError(info.Range);
            }

            return GetFactorBlendDesc(
                factor,
                channel );
        }
コード例 #11
0
        D3D11_BLEND GetTermBlendDescImpl(
            AttrInfo info,
            AttrCase channel,
            TermFlavor flavor)
        {
            if (info.IsFactor(flavor, channel))
            {
                return D3D11_BLEND.D3D11_BLEND_ONE;
            }

            throw OperationTooComplexError(info.Range);
        }
コード例 #12
0
 D3D11_BLEND GetTermBlendDesc(
     AttrInfo info,
     AttrCase channel,
     TermFlavor flavor)
 {
     return GetTermBlendDescImpl((dynamic)info, channel, flavor);
 }
コード例 #13
0
 bool CanUseAsImpl(
     AttrInfo info,
     AttrCase channel,
     TermFlavor flavor)
 {
     return info.IsFactor(flavor, channel);
 }
コード例 #14
0
 bool CanUseAsImpl(
     TermInfo info,
     AttrCase channel,
     TermFlavor flavor)
 {
     var left = info._left;
     var right = info._right;
     bool canUseLeft = CanUseAs(left, channel, flavor);
     bool canUseRight = CanUseAs(right, channel, flavor);
     return canUseLeft || canUseRight;
 }
コード例 #15
0
 public override bool IsFactor(
     TermFlavor flavor,
     AttrCase channel)
 {
     if (flavor == TermFlavor.Dest)
         return true;
     return false;
 }
コード例 #16
0
 bool CanUseAs(
     AttrInfo info,
     AttrCase channel,
     TermFlavor flavor)
 {
     if (info.IsFactor(flavor, channel))
         return true;
     return CanUseAsImpl((dynamic)info, channel, flavor);
 }
コード例 #17
0
 public override bool IsFactor(
     TermFlavor flavor,
     AttrCase channel)
 {
     if (flavor == TermFlavor.Dest)
     {
         if (channel == AttrCase.Color)
             return _color == D3D11_BLEND.D3D11_BLEND_DEST_COLOR;
         else if (channel == AttrCase.Alpha)
             return _alpha == D3D11_BLEND.D3D11_BLEND_DEST_ALPHA;
     }
     else if (flavor == TermFlavor.Src)
     {
         if (channel == AttrCase.Color)
             return _color == D3D11_BLEND.D3D11_BLEND_SRC_COLOR;
         else if (channel == AttrCase.Alpha)
             return _alpha == D3D11_BLEND.D3D11_BLEND_SRC_ALPHA;
     }
     return false;
 }
コード例 #18
0
 public virtual bool IsFactor(
     TermFlavor flavor,
     AttrCase channel)
 {
     return(false);
 }