コード例 #1
0
ファイル: BooleanCondition.cs プロジェクト: thomas13335/smg
        public BooleanCondition(IVariableCondition parent, int stateindex)
            : base(parent)
        {
            if(stateindex > 2)
            {
                throw new ArgumentException("invalid boolean state index.");
            }

            StateIndex = stateindex;
        }
コード例 #2
0
        public BooleanCondition(IVariableCondition parent, int stateindex)
            : base(parent)
        {
            if (stateindex > 2)
            {
                throw new ArgumentException("invalid boolean state index.");
            }

            StateIndex = stateindex;
        }
コード例 #3
0
ファイル: VariableCondition.cs プロジェクト: thomas13335/smg
        public VariableCondition(IVariableCondition parent)
        {
            Debug.Assert(parent != this);
            Parent = parent;
            Variable = Parent.Variable;

            var top = Parent;
            while(null != top)
            {
                if(top.IsTransition)
                {
                    _transparent = top;
                    break;
                }

                top = top.Parent;
            }
        }
コード例 #4
0
ファイル: VariableCondition.cs プロジェクト: thomas13335/smg
        public VariableCondition(IVariableCondition parent)
        {
            Debug.Assert(parent != this);
            Parent   = parent;
            Variable = Parent.Variable;

            var top = Parent;

            while (null != top)
            {
                if (top.IsTransition)
                {
                    _transparent = top;
                    break;
                }

                top = top.Parent;
            }
        }
コード例 #5
0
ファイル: BooleanFactor.cs プロジェクト: thomas13335/smg
 public BooleanFactor(IInput input)
     : base(input.Group)
 {
     _value = input;
     _condition = input as IVariableCondition;
 }
コード例 #6
0
 public static IGate Decompose(this IVariableCondition vc)
 {
     return(vc.CreateElementaryCondition(vc.StateIndex));
 }
コード例 #7
0
ファイル: SimpleFactor.cs プロジェクト: thomas13335/smg
 public SimpleFactor(IVariableCondition condition, Variable v)
     : base(v.Address)
 {
     _condition = condition;
     _invert = new bool[v.Cardinality];
 }
コード例 #8
0
 public ElementaryCondition(IVariableCondition parent, int i)
     : base(parent)
 {
     Debug.Assert(0 <= i && i < Variable.Cardinality);
     StateIndex = i;
 }
コード例 #9
0
 public Transition(IVariableCondition parent)
 {
     Parent = parent;
 }
コード例 #10
0
ファイル: Transition.cs プロジェクト: thomas13335/smg
 public Transition(IVariableCondition parent)
 {
     Parent = parent;
 }
コード例 #11
0
ファイル: StateCondition.cs プロジェクト: thomas13335/smg
 public StateCondition(StateCondition parent)
     : this(parent.Variable)
 {
     Parent = parent;
 }
コード例 #12
0
 public SimpleFactor(IVariableCondition condition, Variable v)
     : base(v.Address)
 {
     _condition = condition;
     _invert    = new bool[v.Cardinality];
 }
コード例 #13
0
 public ElementaryCondition(IVariableCondition parent, int i)
     : base(parent)
 {
     Debug.Assert(0 <= i && i < Variable.Cardinality);
     StateIndex = i;
 }
コード例 #14
0
 public BooleanFactor(IInput input)
     : base(input.Group)
 {
     _value     = input;
     _condition = input as IVariableCondition;
 }