/*! * * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. * \copyright * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * \file VDisinfectStatesData.cpp * \author (last) Behrouz NematiPour * \date (last) 21-Apr-2021 * \author (original) Behrouz NematiPour * \date (original) 21-Apr-2021 * */ #include "VDisinfectStatesData.h" // Project #include "GuiController.h" VIEW_DEF(VDisinfectStates, DisinfectStatesData) /*! * \brief VHDTreatmentStates::onActionReceive * \details sets the properties for the received data of Treatment States * \param vData - Treatment States data */ void VDisinfectStates::onActionReceive(const DisinfectStatesData &vData) { subMode ( vData.mSubMode ); flushState ( vData.mFlushStates ); heatState ( vData.mHeatStates ); chemicalState ( vData.mChemicalStates ); // Flush Mode bool mFlush = vData.mSubMode == GuiDisinfectDGStates ::DG_DISINFECT_STATE_FLUSH ; if ( mFlush ) { /* No FW implementation yet */ } flush( mFlush ); // Heat Mode bool mHeat = vData.mSubMode == GuiDisinfectDGStates ::DG_DISINFECT_STATE_HEAT ; if ( mHeat ) { start ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_START ); drainR1 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_DRAIN_R1 ); drainR2 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_DRAIN_R2 ); flushDrain ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FLUSH_DRAIN ); flushCirculation ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FLUSH_CIRCULATION ); flushR1R2 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FLUSH_R1_AND_R2 ); flushR2DrainR1 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FLUSH_R2_AND_DRAIN_R1 ); flushDrainR2 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FLUSH_DRAIN_R2 ); flushDrainR1 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FLUSH_DRAIN_R1 ); fillWithWater ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FILL_WITH_WATER ); disinfectR1R2 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_DISINFECT_R1_TO_R2 ); fillR2WithHotWater ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_FILL_R2_WITH_HOT_WATER ); disinfectR2R1 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_DISINFECT_R2_TO_R1 ); cooldownHeaters ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_COOL_DOWN_HEATERS ); cooldownRoFilter ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_COOL_DOWN_RO_FILTER ); mixDrainR1 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_MIX_DRAIN_R1 ); mixDrainR2 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_MIX_DRAIN_R2 ); rinseR1ToR2 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_RINSE_R1_TO_R2 ); rinseR2ToR1DrainR1 ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_RINSE_R2_TO_R1_AND_DRAIN_R1 ); rinseCirculation ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_RINSE_CIRCULATION ); cancelBasicPath ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_CANCEL_BASIC_PATH ); cancelWaterPath ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_CANCEL_WATER_PATH ); complete ( vData.mHeatStates == GuiDisinfectDGHeatStates ::DG_HEAT_DISINFECT_STATE_COMPLETE ); } heat( mHeat ); // Chemical Mode bool mChemical = vData.mSubMode == GuiDisinfectDGStates ::DG_DISINFECT_STATE_CHEM ; if ( mChemical ) { /* No FW implementation yet */ } chemical( mChemical ); // *** Only for test *** // Be careful it is always triggered on each message. state(true); }