public EventsPath AddPath(EventsPath path) { this.path.AddRange(path.path); duration += path.duration; dispersionPath += path.dispersionPath; return(this); }
private void EachBinds(List <EventsPath> paths, EventsPath prev, Model model) { if (model.binds.Count == 0) { paths.Add(prev); return; } model.binds.ForEach((bind) => { var newPath = new EventsPath(); newPath.AddPath(prev).AddBind(bind); EachBinds(paths, newPath, bind.right); }); }
public List <EventsPath> GetCriticalPath() { if (IsCorrectData == false) { return(null); } eventsPaths = new List <EventsPath>(); modelsConnected[0].binds.ForEach((bind) => { var newPath = new EventsPath(bind); EachBinds(eventsPaths, newPath, bind.right); }); return(eventsPaths); }