Esempio n. 1
0
 public EventsPath AddPath(EventsPath path)
 {
     this.path.AddRange(path.path);
     duration       += path.duration;
     dispersionPath += path.dispersionPath;
     return(this);
 }
Esempio n. 2
0
        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);
            });
        }
Esempio n. 3
0
        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);
        }