Exemplo n.º 1
0
        private void CreateTransition(bool isFormulaSatisfied, int targetStateIndex, int continuationId, double p)
        {
            var transition = _transitionCount;

            _transitionCount++;
            _transitions[transition] = new LtmdpTransition {
                Probability = p, ContinuationId = continuationId
            };
            var t = (Transition *)(_transitions + transition);

            t->SourceStateIndex = 0;
            t->TargetStateIndex = targetStateIndex;
            t->Formulas         = new StateFormulaSet(new Func <bool>[] { () => isFormulaSatisfied });
            t->Flags            = TransitionFlags.IsValidFlag | TransitionFlags.IsStateTransformedToIndexFlag;
            t->ActivatedFaults  = new FaultSet();
        }
Exemplo n.º 2
0
        internal void CreateTransition(bool[] isFormulaSatisfied, int targetStateIndex, int continuationId)
        {
            var transition = _transitionCount;

            _transitionCount++;
            _transitions[transition] = new LtmdpTransition {
                Index = transition
            };
            var t = (Transition *)(_transitions + transition);

            t->SourceStateIndex = 0;
            t->TargetStateIndex = targetStateIndex;
            t->Formulas         = new StateFormulaSet(isFormulaSatisfied);
            t->Flags            = TransitionFlags.IsValidFlag | TransitionFlags.IsStateTransformedToIndexFlag;
            t->ActivatedFaults  = new FaultSet();
            StepGraph.SetTargetOfFinalOrUnsplitChoice(continuationId, transition);
        }