Exemplo n.º 1
0
        public static void ImportDelayCombinations(object sender, DoWorkEventArgs e)
        {
            string           filename = e.Argument as string;
            BackgroundWorker worker   = sender as BackgroundWorker;

            DataContainer.NeuralNetwork.DelayCombinations = new Data.DelayCombinationCollection();

            CsvDefinition def = new CsvDefinition()
            {
                FieldSeparator = ','
            };
            CsvFileReader <Record> reader = new CsvFileReader <Record>(filename, def);
            DateTime date  = new DateTime();
            DelayDay day   = new DelayDay();
            int      count = 0;

            foreach (Record record in reader)
            {
                if (record.trainDate != date)
                {
                    if (DataContainer.NeuralNetwork.DelayCombinations.dict.ContainsKey(date))
                    {
                        DataContainer.NeuralNetwork.DelayCombinations.dict[date].AddRange(day.FormCombinations());
                    }
                    else
                    {
                        DataContainer.NeuralNetwork.DelayCombinations.dict.Add(date, day.FormCombinations());
                    }
                    date = record.trainDate;
                    day  = new DelayDay();
                    worker.ReportProgress(0, new string[] { record.trainDate.ToString(), count.ToString() });
                }
                //if (record.delayCode != string.Empty)// || record.difference > 120)
                //{
                Delay delay = new Delay();
                delay.traincode = record.trainCode;
                delay.WLCheader = record.WLCTrainCode;
                delay.date      = record.trainDate;
                delay.delaycode = record.delayCode;
                if (record.locationType == "D")
                {
                    delay.destinationdelay = record.difference;
                }
                else
                {
                    delay.origindelay = record.difference;
                }

                if (day.delays.ContainsKey(delay.traincode))
                {
                    ((Delay)day.delays[delay.traincode]).destinationdelay = delay.destinationdelay;
                }
                else
                {
                    day.delays.Add(delay.traincode, delay);
                }

                //}
                count++;
            }
        }
Exemplo n.º 2
0
        public static void ImportDelayCombinations(object sender, DoWorkEventArgs e)
        {
            string filename = e.Argument as string;
            BackgroundWorker worker = sender as BackgroundWorker;
            DataContainer.NeuralNetwork.DelayCombinations = new Data.DelayCombinationCollection();

            CsvDefinition def = new CsvDefinition() { FieldSeparator = ',' };
            CsvFileReader<Record> reader = new CsvFileReader<Record>(filename, def);
            DateTime date = new DateTime();
            DelayDay day = new DelayDay();
            int count = 0;
            foreach (Record record in reader)
            {
                if (record.trainDate != date)
                {
                    if (DataContainer.NeuralNetwork.DelayCombinations.dict.ContainsKey(date))
                    {
                        DataContainer.NeuralNetwork.DelayCombinations.dict[date].AddRange(day.FormCombinations());
                    }
                    else
                    {
                        DataContainer.NeuralNetwork.DelayCombinations.dict.Add(date, day.FormCombinations());
                    }
                    date = record.trainDate;
                    day = new DelayDay();
                    worker.ReportProgress(0, new string[] { record.trainDate.ToString(), count.ToString() });
                }
                //if (record.delayCode != string.Empty)// || record.difference > 120)
                //{
                    Delay delay = new Delay();
                    delay.traincode = record.trainCode;
                    delay.WLCheader = record.WLCTrainCode;
                    delay.date = record.trainDate;
                    delay.delaycode = record.delayCode;
                    if (record.locationType == "D") { delay.destinationdelay = record.difference; }
                    else { delay.origindelay = record.difference; }

                    if (day.delays.ContainsKey(delay.traincode)) { ((Delay)day.delays[delay.traincode]).destinationdelay = delay.destinationdelay; }
                    else { day.delays.Add(delay.traincode, delay); }

                //}
                count++;

            }
        }