public BreweryCommands() { arduino = new ArduinoCommands(device = new LSPProtocol(new SimplePacketProtocolPacketEncoder())); hardwareSettings = new HardwareSettings(); brewery = new Brewery(); ProcessSettings = new Process.settings(); Messenger.Default.Register<AnalogReturn>(this, "VolumeUpdate", VolumeUpdate_MessageReceived); Messenger.Default.Register<DigitalReturn>(this, DigitalReturn_MessageReceived); Messenger.Default.Register<HardwareSettings>(this, "HardwareSettingsUpdate", UpdateHardwareSettings); Messenger.Default.Register<Probes>(this, "TemperatureUpdate", TemperatureUpdate_MessageReceived); Messenger.Default.Register <bool>(this, "DesignMode", DesignMode_MessageReceived); }
private void UpdateHardwareSettings(HardwareSettings _hardwareSettings) { // Update the hardware settings string temp = hardwareSettings.comPort; hardwareSettings = _hardwareSettings; hardwareSettings.comPort = temp; // Reset pin modes if brewery is connected if (brewery.IsConnected) { SetPinModes(); } }
// Hardware settings update private void HardwareSettings_MessageReceived(HardwareSettings _hardwareSettings) { string temp = hardwareSettings.comPort; hardwareSettings = _hardwareSettings; hardwareSettings.comPort = temp; }
// MainViewModel Class Constructor public MainViewModel() { // Creating new instance of model breweryCommand = new BreweryCommands(); hardwareSettings = new HardwareSettings(); brewery = new Brewery(); process = new Process(); probes = new Probes(); userAlarm = new UserAlarm(); // Initializing RelayCommand Instances ConnectionSetupClickCommand = new RelayCommand(connectionSetupClickCommand); HardwareSetupClickCommand = new RelayCommand(hardwareSetupClickCommand); StartBrewSessionClickCommand = new RelayCommand(startBrewSessionClickCommand); MainClosingCommand = new RelayCommand(mainClosing); LoadRecipeClickCommand = new RelayCommand(loadRecipeClickCommand); DebugDesignSessionClickCommand = new RelayCommand(debugDesignClickCommand); // Initializing Timers UpdateTempSensorTimer = new DispatcherTimer(); UpdateVolSensorTimer = new DispatcherTimer(); AlarmTimer = new DispatcherTimer(); PrimingTimer = new DispatcherTimer(); MashStepTimer = new DispatcherTimer(); BoilTimer = new DispatcherTimer(); // Initializing Sound Player Player = new MediaPlayer(); // Initializing Machine State Variables MashStepComplete = false; FirstMashStep = true; FirstSparge = true; SpargeModeOn = false; BoilOverSent = false; BoilComplete = false; StepStartTime = new TimeSpan(); RemainingTime = new TimeSpan(); StepEndTime = new TimeSpan(); // Initializing the brewery State breweryState = BreweryState.StandBy; RaisePropertyChanged(BreweryStateDisplayPropertyName); // Initializing Messenger Registers Messenger.Default.Register<NotificationMessage>(this, "BreweryCommand", BreweryCommand_MessageReceived); Messenger.Default.Register<Brewery>(this, "ConnectionUpdate" , ConnectionUpdate_MessageReceived); Messenger.Default.Register<HardwareSettings>(this, "HardwareSettingsUpdate", HardwareSettings_MessageReceived); Messenger.Default.Register<Brewery>(this, "TemperatureUpdate", TemperatureUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "VolumeUpdate", VolumeUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "HLTBurnerUpdate", HLTBurnerUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "MLTBurnerUpdate", MLTBurnerUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "BKBurnerUpdate", BKBurnerUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "Pump1Update", Pump1Update_MessageReceived); Messenger.Default.Register<Brewery>(this, "Pump2Update", Pump2Update_MessageReceived); Messenger.Default.Register<string>(this, "SelectedcomPort", SelectedcomPort_MessageReceived); Messenger.Default.Register<Process>(this, Process_MessageReceived); Messenger.Default.Register<Probes>(this, "GetConnectedProbes", GetConnectedProbes_MessageReceived); Messenger.Default.Register<UserAlarm>(this, "UserAlarmReturn", UserAlarmReturn_MessageReceived); Messenger.Default.Register<Brewery>(this, "HLTTempSetPointUpdate", HLTTempSetPointUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "MLTTempSetPointUpdate", MLTTempSetPointUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "BKTempSetPointUpdate", BKTempSetPointUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "HLTTempSetPointReachedUpdate", HLTTempSetPointReachedUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "MLTTempSetPointReachedUpdate", MLTTempSetPointReachedUpdate_MessageReceived); Messenger.Default.Register<Brewery>(this, "BKTempSetPointReachedUpdate", BKTempSetPointReachedUpdate_MessageReceived); }
public HardwareSetupViewModel() { // Creating Model Class Instances hardwareSettings = new HardwareSettings(); // Creating Relay Command Instances EditSettingClickCommand = new RelayCommand(editSettingClickCommand); SaveSettingClickCommand = new RelayCommand(saveSettingClickCommand); ConfirmPinSelectedCommand = new RelayCommand(confirmSettingCommand); CancelClickCommand = new RelayCommand(cancelClickCommand); // Initialize Digital Pin list DigitalPins = new List<int>(); for (int i=0; i<14; i++) { DigitalPins.Add(i); } // Initialize Analog Pins AnalogPins = new List<int>(); for(int i=0; i<6; i++) { AnalogPins.Add(i); } // Initialize Probe Colors list ProbeColors = new List<string>(); //Register to incoming messages Messenger.Default.Register<Probes>(this, "GetConnectedProbes", Probes_MessageReceived); // Set Default Values for settings SetDefaultSettings(); }