public PetriNetFlow AddFlow(string name, PetriNetElement from, PetriNetElement to) { var id = Tuple.Create(from.Name, to.Name); if (!this.Flows.TryGetValue(id, out var result)) { result = new PetriNetFlow(name, from, to); this.Flows.Add(id, result); } return(result); }
public PetriNetFlow(string name, PetriNetElement from, PetriNetElement to) { this.From = from; from.To.Add(this); this.To = to; to.From.Add(this); if (name == null) { this.Name = $"f{PetriNetFlow.Counter}"; PetriNetFlow.Counter++; } else { this.Name = name; } }