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(); }
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); }