Esempio n. 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="header"></param>
        public static void AddOutputOutputElements(List <OutputDataElement> Outputs, Type controllerType, List <Simulation> simulations, bool useSuffix)
        {
            if (!useSuffix)
            {
                HLController controller = null;

                if (controllerType.GetProperty("ChildControllers") == null)
                {
                    controller = (HLController)simulations.SelectMany(y => y.ActiveControlllers.Where(x => x.GetType() == controllerType)).FirstOrDefault();
                }
                else
                {
                    //List<HLObjectController> controllers = (List<HLObjectController>)simulations.SelectMany(s => s.ActiveControlllers.Where(x => x.GetType() == controllerType));
                    List <HLController> controllers = new List <HLController>(simulations.SelectMany(s => s.ActiveControlllers.Where(x => x.GetType() == controllerType)));
                    if (controllers != null && controllers.Count >= 1)
                    {
                        controller = ((HLObjectController)controllers[0]).ChildControllers[0];
                    }
                }
                AddOutputElements(Outputs, controller, useSuffix);
            }
            else
            {
                //Need to check for child controllers
                List <HLController> objectControllers = new List <HLController>(simulations.SelectMany(y => y.ActiveControlllers.Where(x => x.GetType() == controllerType)));

                List <HLController> controllers = new List <HLController>(objectControllers.SelectMany(o => ((HLObjectController)o).ChildControllers).DistinctBy(x => x.Name));

                foreach (HLController hlc in controllers)
                {
                    AddOutputElements(Outputs, hlc, useSuffix);
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="controller"></param>
        /// <param name="useSuffix"></param>
        public static void AddOutputElements(List <OutputDataElement> Outputs, HLController controller, bool useSuffix)
        {
            if (controller == null)
            {
                return;
            }

            Outputs.AddRange(controller.Sim.OutputModelController.GetOutputs(controller.Output, useSuffix));
        }
Esempio n. 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="header"></param>
        public static void AddOutputHeader(List <OutputDataElement> Outputs, Type controllerType, Simulation simulation, bool useSuffix)
        {
            HLController controller = (HLController)simulation.ActiveControlllers.Where(x => x.GetType() == controllerType).FirstOrDefault();

            AddOutputElements(Outputs, controller, useSuffix);
        }