public MicrocontrollerViewModel(MicrocontrollerModel MicrocontrollerModel, GPIOPinListsViewModel GPIOPinListsViewModel) { _microcontrollerModel = MicrocontrollerModel; _gPIOPinListsViewModel = GPIOPinListsViewModel; //Populates the GPIOPinViewModelList based on its model counterpart. foreach (GPIOPinModel gPIOPinModel in _microcontrollerModel.GPIOPinModelList) { GPIOPinViewModel pinViewModel = null; if (gPIOPinModel.GetType() == typeof(PWMPinModel)) { pinViewModel = new PWMPinViewModel((PWMPinModel)gPIOPinModel); } else if (gPIOPinModel.GetType() == typeof(CommunicationPinModel)) { pinViewModel = new CommunicationPinViewModel((CommunicationPinModel)gPIOPinModel); } else if (gPIOPinModel.GetType() == typeof(AnalogInPinModel)) { pinViewModel = new AnalogInPinViewModel((AnalogInPinModel)gPIOPinModel); } else if (gPIOPinModel.GetType() == typeof(DigitalPinModel)) { pinViewModel = new DigitalPinViewModel((DigitalPinModel)gPIOPinModel); } if (pinViewModel != null) { _gPIOPinViewModelList.Add(pinViewModel); //Populates the lists in GPIOPinListsViewModel. _gPIOPinListsViewModel.AppendPinSettingList(pinViewModel); } } }
/// <summary> /// Builds a minimal printer with an X Axis, a Y Axis, a Z Axis, and one Printhead. /// </summary> public PrinterModel() { _microcontrollerModel = new MicrocontrollerModel(); _axisModelList.Add(new AxisModel("X Actuator", 'X')); _axisModelList.Add(new AxisModel("Y Actuator", 'Y')); AddZAxis(); AddPrinthead(); }
public ValuesModel UpdateDatabase(MicrocontrollerModel item) { var result = new ValuesModel(); string url = item.IPAddress; int id = item.Id; if (!String.IsNullOrEmpty(url)) { result.MicrocontrollerID = id; result.Temperature = GetTemperature(url); result.DoorOpen = GetDoorOpen(url); result.Dust = GetDust(url); result.DateTime = DateTime.Now; result.Humidity = GetHumidity(url); result.Power = GetPower(url); } return(result); }