コード例 #1
0
        public LoggedForkValueViewModel(ForkValue model, LoggedForkViewModel parent)
        {
            m_model = model;
            Parent  = parent;

            //hide the area used to display children forks?
            HasChildrenForks = Forks.Count != 0;
        }
コード例 #2
0
        public LoggedForkValueViewModel(ForkValue model, LoggedForkViewModel parent)
        {
            m_model = model;
            Parent  = parent;

            foreach (Fork fork in model.Forks)
            {
                Forks.Add(new LoggedForkViewModel(fork));
            }

            //hide the area used to display children forks?
            HasChildrenForks = Forks.Count != 0;
        }
コード例 #3
0
        public LoggedForkViewModel(Fork model)
        {
            m_model = model;

            //Build View models from the models
            foreach (Fork fork in model.Forks)
            {
                LoggedForkViewModel forkVM = new LoggedForkViewModel(fork);
                Forks.Add(forkVM);
            }
            HasChildrenForks = Forks.Count != 0;
            foreach (ForkValue forkValue in model.Values)
            {
                LoggedForkValueViewModel forkValueVM = new LoggedForkValueViewModel(forkValue, this);
                Values.Add(forkValueVM);
            }
            HasChildrenValues = Values.Count != 0;
        }
コード例 #4
0
        /// <summary>
        ///     Class constructor.
        /// </summary>
        /// <param name="experiment">The experiment with all the data used in the view model</param>

        public LoggedExperimentViewModel(Experiment experiment)
        {
            m_model = experiment;

            //Create the fork view models from the models
            foreach (Fork fork in experiment.Forks)
            {
                LoggedForkViewModel forkVM = new LoggedForkViewModel(fork);
                Forks.Add(forkVM);
            }
            //Create the experimental unit view models from the models
            foreach (ExperimentalUnit expUnit in experiment.ExperimentalUnits)
            {
                LoggedExperimentalUnitViewModel expUnitVM = new LoggedExperimentalUnitViewModel(expUnit);
                foreach (string variable in expUnitVM.VariablesInLog)
                {
                    AddVariable(variable);
                }
                ExperimentalUnits.Add(expUnitVM);
            }
            //Associate forks and experiment units
            foreach (LoggedExperimentalUnitViewModel expUnit in ExperimentalUnits)
            {
                TraverseAction(false, (node) =>
                {
                    if (node is LoggedForkValueViewModel forkValue)
                    {
                        foreach (string forkName in expUnit.ForkValues.Keys)
                        {
                            if (forkName == forkValue.Parent.Name && expUnit.ForkValues[forkName] == forkValue.Value)
                            {
                                forkValue.ExpUnits.Add(expUnit);
                            }
                        }
                    }
                });
            }
        }