예제 #1
0
        private void loadRuns(string filename)
        {
            Utils.Logger.Log("Getting runs...");
            lstRuns.Items.Clear();
            DataAccess dataAccess = new DataAccess(filename);
            Run[] runs = dataAccess.GetRuns();
            foreach (Run run in runs)
            {
                lstRuns.Items.Add(new ListViewItem(run.ToStringArray()));
            }

            lstInputGroups.Items.Clear();
            InputGroup[] groups = dataAccess.GetInputGroups();
            foreach (InputGroup group in groups)
            {
                lstInputGroups.Items.Add(group);

            }
        }
예제 #2
0
        private float[] getAverageResults(string filename)
        {
            DataAccess dataAccess = new DataAccess(filename);
            Run[] runs = dataAccess.GetRuns();
            float[][] results = new float[runs.Length][];
            for (int j = 0; j < runs.Length; j++)
            {
                results[j] = dataAccess.GetResults(runs[j]);
            }

            int maxResultLength = 0;
            int mrlIndex = -1;
            for (int j = 0; j < results.Length; j++)
            {
                if (results[j].Length > maxResultLength)
                {
                    maxResultLength = results[j].Length;
                    mrlIndex = j;
                }
            }

            for (int j = 0; j < maxResultLength; j++)
            {
                float total = 0.0f;
                int z = 0;
                for (int k = 0; k < results.Length; k++)
                {
                    if (j < results[k].Length)
                    {
                        total += results[k][j];
                        z++;
                    }
                }

                total /= z;
                if (float.IsNaN(total))
                {
                    throw new Exception("");
                }
                results[mrlIndex][j] = total;
            }

            return results[0];
        }