Ejemplo n.º 1
0
        public void AddConfigFactor(int pos, string factorName)
        {
            Boolean factorInDisplay = false;

            foreach (DisplayFactor df in CurConfigDisplay.DisplayFactors)
            {
                if (df.FactorName.CompareTo(factorName) == 0)
                {
                    // This factor is already in the config
                    factorInDisplay = true;
                    break;
                }
            }
            if (!factorInDisplay)
            {
                DisplayFactor newDisplayFactor = new DisplayFactor();
                newDisplayFactor.FactorName  = factorName;
                newDisplayFactor.FactorPos   = pos;
                newDisplayFactor.FactorLabel = CurConfigDisplay.Display.DisplayFactorLabels[pos - 1].Label;

                CurConfigDisplay.DisplayFactors.Add(newDisplayFactor);

                // Remove this factor from the blocked factor list if neccessary
                RemoveConfigBlockedFactor(factorName);
            }
        }
Ejemplo n.º 2
0
        public Boolean AddCurrentDisplay()
        {
            VisDashboardDataDataContext db = new VisDashboardDataDataContext();

            using (TransactionScope ts = new TransactionScope())
            {
                try
                {
                    // Copy data into new object
                    ConfigDisplay newConfigDisplay = new ConfigDisplay
                    {
                        Name = CurConfigDisplay.Name,
                        ConfigID = CurConfig.ConfigID,
                        DisplayID = CurConfigDisplay.Display.DisplayID,
                        MeasureName = CurConfigDisplay.MeasureName,
                        MetricName = CurConfigDisplay.MetricName,
                        NumFactors = CurConfigDisplay.NumFactors,
                        NumBlockedFactors = CurConfigDisplay.NumBlockedFactors,
                        Width = CurConfigDisplay.Width,
                        Height = CurConfigDisplay.Height
                    };

                    // Copy DisplayFactors to new object
                    foreach (DisplayFactor factor in CurConfigDisplay.DisplayFactors)
                    {
                        DisplayFactor newDisplayFactor = new DisplayFactor
                        {
                            FactorName = factor.FactorName,
                            FactorLabel = factor.FactorLabel,
                            FactorPos = factor.FactorPos
                        };
                        newConfigDisplay.DisplayFactors.Add(newDisplayFactor);
                    }

                    // Copy DisplayBlockedFactors to new object
                    foreach (DisplayBlockedFactor blockedFactor in CurConfigDisplay.DisplayBlockedFactors)
                    {
                        DisplayBlockedFactor newDisplayBlockedFactor = new DisplayBlockedFactor
                        {
                            MeasureID = blockedFactor.MeasureID,
                            LevelName = blockedFactor.LevelName
                        };
                        newConfigDisplay.DisplayBlockedFactors.Add(newDisplayBlockedFactor);
                    }

                    db.ConfigDisplays.InsertOnSubmit(newConfigDisplay);
                    db.SubmitChanges();
                }
                catch (SqlException e)
                {
                    MessageBox.Show("Database Error: " + e.Message, "Display Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                    return false;
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    return false;
                }
                finally
                {
                    ts.Complete();
                    ts.Dispose();
                    db = null;
                }
            }

            return true;
        }
Ejemplo n.º 3
0
        public void AddConfigFactor(int pos, string factorName)
        {
            Boolean factorInDisplay = false;

            foreach (DisplayFactor df in CurConfigDisplay.DisplayFactors)
            {
                if (df.FactorName.CompareTo(factorName) == 0)
                {
                    // This factor is already in the config
                    factorInDisplay = true;
                    break;
                }
            }
            if (!factorInDisplay)
            {
                DisplayFactor newDisplayFactor = new DisplayFactor();
                newDisplayFactor.FactorName = factorName;
                newDisplayFactor.FactorPos = pos;
                newDisplayFactor.FactorLabel = CurConfigDisplay.Display.DisplayFactorLabels[pos-1].Label;

                CurConfigDisplay.DisplayFactors.Add(newDisplayFactor);

                // Remove this factor from the blocked factor list if neccessary
                RemoveConfigBlockedFactor(factorName);

            }

        }
Ejemplo n.º 4
0
        public Boolean AddCurrentDisplay()
        {
            VisDashboardDataDataContext db = new VisDashboardDataDataContext();

            using (TransactionScope ts = new TransactionScope())
            {
                try
                {
                    // Copy data into new object
                    ConfigDisplay newConfigDisplay = new ConfigDisplay
                    {
                        Name              = CurConfigDisplay.Name,
                        ConfigID          = CurConfig.ConfigID,
                        DisplayID         = CurConfigDisplay.Display.DisplayID,
                        MeasureName       = CurConfigDisplay.MeasureName,
                        MetricName        = CurConfigDisplay.MetricName,
                        NumFactors        = CurConfigDisplay.NumFactors,
                        NumBlockedFactors = CurConfigDisplay.NumBlockedFactors,
                        Width             = CurConfigDisplay.Width,
                        Height            = CurConfigDisplay.Height
                    };

                    // Copy DisplayFactors to new object
                    foreach (DisplayFactor factor in CurConfigDisplay.DisplayFactors)
                    {
                        DisplayFactor newDisplayFactor = new DisplayFactor
                        {
                            FactorName  = factor.FactorName,
                            FactorLabel = factor.FactorLabel,
                            FactorPos   = factor.FactorPos
                        };
                        newConfigDisplay.DisplayFactors.Add(newDisplayFactor);
                    }

                    // Copy DisplayBlockedFactors to new object
                    foreach (DisplayBlockedFactor blockedFactor in CurConfigDisplay.DisplayBlockedFactors)
                    {
                        DisplayBlockedFactor newDisplayBlockedFactor = new DisplayBlockedFactor
                        {
                            MeasureID = blockedFactor.MeasureID,
                            LevelName = blockedFactor.LevelName
                        };
                        newConfigDisplay.DisplayBlockedFactors.Add(newDisplayBlockedFactor);
                    }

                    db.ConfigDisplays.InsertOnSubmit(newConfigDisplay);
                    db.SubmitChanges();
                }
                catch (SqlException e)
                {
                    MessageBox.Show("Database Error: " + e.Message, "Display Creation Failed", MessageBoxButton.OK, MessageBoxImage.Error);
                    return(false);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    return(false);
                }
                finally
                {
                    ts.Complete();
                    ts.Dispose();
                    db = null;
                }
            }

            return(true);
        }
Ejemplo n.º 5
0
        private static ConfigDisplay DeepCloneConfigDisplay(ConfigDisplay configDisplay)
        {
            if (configDisplay == null)
            {
                return null;
            }

            // Generate a copy of the configDisplay and factor level list to modify
            ConfigDisplay newConfigDisplay = new ConfigDisplay();
            newConfigDisplay.Name = configDisplay.Name;
            newConfigDisplay.MeasureName = configDisplay.MeasureName;
            newConfigDisplay.MetricName = configDisplay.MetricName;
            //newConfigDisplay.DisplayID = configDisplay.DisplayID;
            newConfigDisplay.Display = configDisplay.Display;
            newConfigDisplay.Config = configDisplay.Config;
            newConfigDisplay.ConfigID = configDisplay.ConfigID;
            newConfigDisplay.NumBlockedFactors = configDisplay.NumBlockedFactors;
            newConfigDisplay.NumFactors = configDisplay.NumFactors;

            newConfigDisplay.DisplayFactors = new System.Data.Linq.EntitySet<DisplayFactor>();
            foreach (DisplayFactor displayFactor in configDisplay.DisplayFactors)
            {
                DisplayFactor newDisplayFactor = new DisplayFactor();

                newDisplayFactor.DisplayFactorID = displayFactor.DisplayFactorID;
                newDisplayFactor.ConfigDisplay = newConfigDisplay;
                //newDisplayFactor.ConfigDisplayID = displayFactor.ConfigDisplayID;
                newDisplayFactor.FactorName = displayFactor.FactorName;
                newDisplayFactor.FactorLabel = displayFactor.FactorLabel;
                newDisplayFactor.FactorPos = displayFactor.FactorPos;
            }

            newConfigDisplay.DisplayBlockedFactors = new System.Data.Linq.EntitySet<DisplayBlockedFactor>();
            foreach (DisplayBlockedFactor displayBlockedFactor in configDisplay.DisplayBlockedFactors)
            {
                DisplayBlockedFactor newDisplayBlockedFactor = new DisplayBlockedFactor();

                newDisplayBlockedFactor.DisplayBlockedFactorID = displayBlockedFactor.DisplayBlockedFactorID;
                newDisplayBlockedFactor.ConfigDisplay = newConfigDisplay;
                //newDisplayBlockedFactor.ConfigDisplayID = displayBlockedFactor.ConfigDisplayID;
                newDisplayBlockedFactor.LevelName = displayBlockedFactor.LevelName;
                newDisplayBlockedFactor.Measure = displayBlockedFactor.Measure;
                //newDisplayBlockedFactor.MeasureID = displayBlockedFactor.MeasureID;
            }

            return newConfigDisplay;
        }
Ejemplo n.º 6
0
        private ConfigDisplay CreateTotalExecutionConfigDisplay(string operatorName, string phaseName, out List<string> newFactorLevels, ConfigDisplay configDisplay)
        {
            DisplayFactor newDisplayFactor = null;
            DisplayBlockedFactor newDisplayBlockedFactor = null;
            Measure newMeasure = null;

            newFactorLevels = new List<string>();

            ConfigDisplay newConfigDisplay = new ConfigDisplay();
            newConfigDisplay.Name = "WorkloadSumExecution";
            newConfigDisplay.MeasureName = "Execution";
            newConfigDisplay.MetricName = "Count";
            newConfigDisplay.Display = configDisplay.Display;
            newConfigDisplay.Config = configDisplay.Config;
            newConfigDisplay.ConfigID = configDisplay.ConfigID;
            newConfigDisplay.NumBlockedFactors = 1;
            newConfigDisplay.NumFactors = 2;

            newConfigDisplay.DisplayFactors = new System.Data.Linq.EntitySet<DisplayFactor>();
            newConfigDisplay.DisplayBlockedFactors = new System.Data.Linq.EntitySet<DisplayBlockedFactor>();

            // Factors
            // From Operator
            newDisplayFactor = new DisplayFactor();
            newDisplayFactor.ConfigDisplay = newConfigDisplay;
            newDisplayFactor.FactorName = "Operator";
            newDisplayFactor.FactorLabel = "X Axis";
            newDisplayFactor.FactorPos = 1;
            newFactorLevels.Add(operatorName);
            // Phase
            newDisplayFactor = new DisplayFactor();
            newDisplayFactor.ConfigDisplay = newConfigDisplay;
            newDisplayFactor.FactorName = "Phase";
            newDisplayFactor.FactorLabel = "Y Axis";
            newDisplayFactor.FactorPos = 2;
            newFactorLevels.Add(phaseName);

            // Blocked Factors
            // Object = All
            newDisplayBlockedFactor = new DisplayBlockedFactor();
            newDisplayBlockedFactor.ConfigDisplay = newConfigDisplay;
            newDisplayBlockedFactor.LevelName = "All";
            newDisplayBlockedFactor.MeasureID = configDataModel.LocateMeasureID("Execution", "Object", "All", out newMeasure);
            newDisplayBlockedFactor.Measure = newMeasure;

            return newConfigDisplay;
        }
Ejemplo n.º 7
0
        private ConfigDisplay CreateTotalCommConfigDisplay(string operatorName, string phaseName, out List<string> newFactorLevels, ConfigDisplay configDisplay)
        {
            DisplayFactor newDisplayFactor = null;
            DisplayBlockedFactor newDisplayBlockedFactor = null;
            Measure newMeasure = null;

            newFactorLevels = new List<string>();

            ConfigDisplay newConfigDisplay = new ConfigDisplay();
            newConfigDisplay.Name = "WorkloadSumCommunication";
            newConfigDisplay.MeasureName = "Communication";
            newConfigDisplay.MetricName = "Count";
            newConfigDisplay.Display = configDisplay.Display;
            newConfigDisplay.Config = configDisplay.Config;
            newConfigDisplay.ConfigID = configDisplay.ConfigID;
            newConfigDisplay.NumBlockedFactors = 4;
            newConfigDisplay.NumFactors = 2;

            newConfigDisplay.DisplayFactors = new System.Data.Linq.EntitySet<DisplayFactor>();
            newConfigDisplay.DisplayBlockedFactors = new System.Data.Linq.EntitySet<DisplayBlockedFactor>();

            // Factors
            // From Operator
            newDisplayFactor = new DisplayFactor();
            newDisplayFactor.ConfigDisplay = newConfigDisplay;
            newDisplayFactor.FactorName = "From Operator";
            newDisplayFactor.FactorLabel = "X Axis";
            newDisplayFactor.FactorPos = 1;
            newFactorLevels.Add(operatorName);
            // Phase
            newDisplayFactor = new DisplayFactor();
            newDisplayFactor.ConfigDisplay = newConfigDisplay;
            newDisplayFactor.FactorName = "Phase";
            newDisplayFactor.FactorLabel = "Y Axis";
            newDisplayFactor.FactorPos = 2;
            newFactorLevels.Add(phaseName);

            // Blocked Factors
            // Directionality = Outgoing
            newDisplayBlockedFactor = new DisplayBlockedFactor();
            newDisplayBlockedFactor.ConfigDisplay = newConfigDisplay;
            newDisplayBlockedFactor.LevelName = "Outgoing";
            newDisplayBlockedFactor.MeasureID = configDataModel.LocateMeasureID("Communication", "Directionality", "Outgoing", out newMeasure);
            newDisplayBlockedFactor.Measure = newMeasure;
            // Mode = All
            newDisplayBlockedFactor = new DisplayBlockedFactor();
            newDisplayBlockedFactor.ConfigDisplay = newConfigDisplay;
            newDisplayBlockedFactor.LevelName = "All";
            newDisplayBlockedFactor.MeasureID = configDataModel.LocateMeasureID("Communication", "Mode", "All", out newMeasure);
            newDisplayBlockedFactor.Measure = newMeasure;
            // Type = All
            newDisplayBlockedFactor = new DisplayBlockedFactor();
            newDisplayBlockedFactor.ConfigDisplay = newConfigDisplay;
            newDisplayBlockedFactor.LevelName = "All";
            newDisplayBlockedFactor.MeasureID = configDataModel.LocateMeasureID("Communication", "Type", "All", out newMeasure);
            newDisplayBlockedFactor.Measure = newMeasure;
            // To Operator = Team (ignored)
            newDisplayBlockedFactor = new DisplayBlockedFactor();
            newDisplayBlockedFactor.ConfigDisplay = newConfigDisplay;
            newDisplayBlockedFactor.LevelName = "Team";
            newDisplayBlockedFactor.MeasureID = configDataModel.LocateMeasureID("Communication", "To Operator", "Team", out newMeasure);
            newDisplayBlockedFactor.Measure = newMeasure;

            return newConfigDisplay;
        }