/*! * * 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 VPreTreatmentStatesData.h * \author (last) Behrouz NematiPour * \date (last) 01-Mar-2021 * \author (original) Behrouz NematiPour * \date (original) 13-Aug-2020 * */ #pragma once // Qt #include // Project #include "main.h" // Doxygen : don't remove #include "MModel.h" #include "VView.h" #include "GuiGlobals.h" // namespace using namespace Gui; namespace View { /*! * \brief The VPreTreatmentStates class * \details View for Model's data representation. * * \sa Model::MPreTreatmentStates * */ class VPreTreatmentStates : public QObject { Q_OBJECT // *** Only for test *** // Be careful it is always triggered on each message. TRIGGER ( bool , state , false ) // changes in case any message received. PROPERTY( quint8 , subMode , 0 ) ///< HD_PRE_TREATMENT_START_STATE , Start pre-treatment mode state PROPERTY( quint8 , waterSampleState , 0 ) ///< HD_PRE_TREATMENT_WATER_SAMPLE_STATE , Water sample state PROPERTY( quint8 , selfTestConsumablesState , 0 ) ///< HD_PRE_TREATMENT_SELF_TEST_CONSUMABLE_STATE, , Consumable self-tests state PROPERTY( quint8 , selfTestNoCartridgeState , 0 ) ///< HD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE , Self tests with no cartridge state PROPERTY( quint8 , installationState , 0 ) ///< HD_PRE_TREATMENT_CART_INSTALL_STATE , Consumable and cartridge installation state PROPERTY( quint8 , selfTestDryState , 0 ) ///< HD_PRE_TREATMENT_SELF_TEST_DRY_STATE , Self tests dry state PROPERTY( quint8 , primeState , 0 ) ///< HD_PRE_TREATMENT_PRIME_STATE , Prime blood and dialysate circuits and run wet self-tests state PROPERTY( quint8 , recirculateState , 0 ) ///< HD_PRE_TREATMENT_RECIRCULATE_STATE , Re-circulate blood and dialysate circuits state PROPERTY( quint8 , patientConnectionState , 0 ) ///< HD_PRE_TREATMENT_PATIENT_CONNECTION_STATE , Patient connection state // Start pre-treatment mode state PROPERTY( bool , start , false ) ///< HD_PRE_TREATMENT_START_STATE , Start pre-treatment mode state PROPERTY( bool , waterSample , false ) ///< HD_PRE_TREATMENT_WATER_SAMPLE_STATE , Water sample state PROPERTY( bool , selfTestConsumables , false ) ///< HD_PRE_TREATMENT_SELF_TEST_CONSUMABLE_STATE, , Consumable self-tests state PROPERTY( bool , selfTestNoCartridge , false ) ///< HD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE , Self tests with no cartridge state PROPERTY( bool , installation , false ) ///< HD_PRE_TREATMENT_CART_INSTALL_STATE , Consumable and cartridge installation state PROPERTY( bool , selfTestDry , false ) ///< HD_PRE_TREATMENT_SELF_TEST_DRY_STATE , Self tests dry state PROPERTY( bool , prime , false ) ///< HD_PRE_TREATMENT_PRIME_STATE , Prime blood and dialysate circuits and run wet self-tests state PROPERTY( bool , recirculate , false ) ///< HD_PRE_TREATMENT_RECIRCULATE_STATE , Re-circulate blood and dialysate circuits state PROPERTY( bool , patientConnection , false ) ///< HD_PRE_TREATMENT_PATIENT_CONNECTION_STATE , Patient connection state // Water sample state PROPERTY( bool , waterSample_setup , false ) ///< SAMPLE_WATER_SETUP_STATE , Sample water setup state of the sample water sub-mode state machine PROPERTY( bool , waterSample_running , false ) ///< SAMPLE_WATER_STATE , Sample water state of the sample water sub-mode state machine // Self tests consumables state PROPERTY( bool , selfTestConsumables_install , false ) ///< CONSUMABLE_SELF_TESTS_INSTALL_STATE , Consumable self-tests install state STATE ( bool , selfTestConsumables_waterQuality , false ) ///< CONSUMABLE_SELF_TESTS_WATER_QUALITY_CHECK_STATE , Consumable self-tests water quality check state STATE ( bool , selfTestConsumables_biCarbPump , false ) ///< CONSUMABLE_SELF_TESTS_BICARB_PUMP_CHECK_STATE , Consumable self-tests bicarbonate concentrate pump check state STATE ( bool , selfTestConsumables_acidPump , false ) ///< CONSUMABLE_SELF_TESTS_ACID_PUMP_CHECK_STATE , Consumable self-tests acid concentrate pump check state STATE ( bool , selfTestConsumables_complete , false ) ///< CONSUMABLE_SELF_TESTS_COMPLETE_STATE , Consumable self-tests complete state // Self tests with no cartridge state PROPERTY( bool , selfTestNoCartridge_start , false ) ///< NO_CART_SELF_TESTS_START_STATE , No cartridge self-tests starting state. PROPERTY( bool , selfTestNoCartridge_waitDoorClose , false ) ///< NO_CART_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE , Wait for door to be closed before running self-tests. PROPERTY( bool , selfTestNoCartridge_occlusionSensors , false ) ///< NO_CART_SELF_TESTS_OCCLUSION_SENSORS_STATE , No cartridge occlusion sensors self-test state. PROPERTY( bool , selfTestNoCartridge_bloodFlowMeters , false ) ///< NO_CART_SELF_TESTS_BLOOD_FLOW_METERS_STATE , No cartridge blood flow meter self-test state. PROPERTY( bool , selfTestNoCartridge_dialysateFlowMeters , false ) ///< NO_CART_SELF_TESTS_DIALYSATE_FLOW_METERS_STATE , No cartridge dialysate flow meter self-test state. PROPERTY( bool , selfTestNoCartridge_pumps , false ) ///< NO_CART_SELF_TESTS_PUMPS_STATE , No cartridge self-test for blood pump, dialysate in pump, dialysate out pump state. PROPERTY( bool , selfTestNoCartridge_leakDetectors , false ) ///< NO_CART_SELF_TESTS_LEAK_DETECTORS_STATE , No cartridge leak detectors self-test state. PROPERTY( bool , selfTestNoCartridge_boardTemperature , false ) ///< NO_CART_SELF_TESTS_BOARD_TEMPERATURE_STATE , No cartridge board temperature self-test state. PROPERTY( bool , selfTestNoCartridge_doorSwitch , false ) ///< NO_CART_SELF_TESTS_DOOR_SWITCH_STATE , No cartridge door switch self-test state. PROPERTY( bool , selfTestNoCartridge_homeValvesAndPumps , false ) ///< NO_CART_SELF_TESTS_HOME_VALVES_AND_PUMPS_STATE , No cartridge home valves and pumps self-test state. PROPERTY( bool , selfTestNoCartridge_homeIdle , false ) ///< NO_CART_SELF_TESTS_HOME_IDLE_STATE , Wait for valves and pumps finish homing state. PROPERTY( bool , selfTestNoCartridge_stopped , false ) ///< NO_CART_SELF_TESTS_STOPPED_STATE , No cart self-test stopped state. PROPERTY( bool , selfTestNoCartridge_complete , false ) ///< NO_CART_SELF_TESTS_COMPLETE_STATE , No cartridge self-test complete state. // Consumable and cartridge installation state // There is not state(enum) for this and it is always 0 for now. but will be used to notify UI about being in this state. PROPERTY( bool , installation_start , false ) ///< Consumable and cartridge installation state // Self tests dry state PROPERTY( bool , selfTestDry_start , false ) ///< DRY_SELF_TESTS_START_STATE , Dry self-tests starting state. PROPERTY( bool , selfTestDry_waitDoorClose , false ) ///< DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE , Wait for door to close before executing self-tests. STATE ( bool , selfTestDry_bubbleDetector , false ) ///< DRY_SELF_TESTS_BUBBLE_DETECTOR_STATE , Bubble detectors dry self-test state. STATE ( bool , selfTestDry_airTrap , false ) ///< DRY_SELF_TESTS_AIR_TRAP_STATE , Air trap fill level ultrasonic sensor dry self-test state. STATE ( bool , selfTestDry_occlusionSensors , false ) ///< DRY_SELF_TESTS_OCCLUSION_SENSORS_STATE , Occlusion sensors dry self-test state. STATE ( bool , selfTestDry_pressureSensorsSetup , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_SETUP_STATE , Pressure sensors dry self-test setup valves and pump state. STATE ( bool , selfTestDry_pressureSensors , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_STATE , Pressure sensors verify pressure readings state. STATE ( bool , selfTestDry_pressureSensorsNormal , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE , Pressure sensors verify normal pressure readings state. STATE ( bool , selfTestDry_stopped , false ) ///< DRY_SELF_TESTS_STOPPED_STATE , Dry self-test stopped state. STATE ( bool , selfTestDry_complete , false ) ///< DRY_SELF_TESTS_COMPLETE_STATE , Dry self-test complete state. // Prime blood and dialysate circuits and run wet self-tests state PROPERTY( bool , prime_start , false ) ///< HD_PRIME_START_STATE , Prime start state STATE ( bool , prime_waitUserStart , false ) ///< HD_PRIME_WAIT_FOR_USER_START_STATE , Wait for user to start prime state STATE ( bool , prime_salineSetup , false ) ///< HD_PRIME_SALINE_SETUP_STATE , Saline setup state STATE ( bool , prime_salinePurgeAir , false ) ///< HD_PRIME_SALINE_PURGE_AIR_STATE , Saline purge air state STATE ( bool , prime_salineCirculateBloodCircuit , false ) ///< HD_PRIME_SALINE_CIRC_BLOOD_CIRCUIT_STATE , Circulate blood circuit state STATE ( bool , prime_reservoiOneFillComplete , false ) ///< HD_PRIME_RESERVOIR_ONE_FILL_COMPLETE_STATE , Wait for reservoir 1 fill complete STATE ( bool , prime_dialysateDialyzer , false ) ///< HD_PRIME_DIALYSATE_DIALYZER_STATE , Dialysate dialyzer fluid path state STATE ( bool , prime_reservoirTwoFillComplete , false ) ///< HD_PRIME_RESERVOIR_TWO_FILL_COMPLETE_STATE , Wait for reservoir 2 fill complete STATE ( bool , prime_dialysateBypass , false ) ///< HD_PRIME_DIALYSATE_BYPASS_STATE , Dialysate bypass fluid path state STATE ( bool , prime_wetSelfTests , false ) ///< HD_PRIME_WET_SELF_TESTS_STATE , Perform wet self-tests after priming complete STATE ( bool , prime_pause , false ) ///< HD_PRIME_PAUSE , Prime pause state, waits to be resumed STATE ( bool , prime_complete , false ) ///< HD_PRIME_COMPLETE , Prime complete state // Re-circulate blood and dialysate circuits state PROPERTY( bool , recirculate_start , false ) ///< PRE_TREATMENT_RECIRC_STATE , Pre-treatment recirculate state. PROPERTY( bool , recirculate_stopped , false ) ///< PRE_TREATMENT_RECIRC_STOPPED_STATE , Pre-treatment recirculate stopped state. // Patient connection state // There is not state(enum) for this and it is always 0 for now. but will be used to notify UI about being in this state. PROPERTY( bool , patientConnection_start , false ) ///< Patient connection state VIEW_DEC(VPreTreatmentStates, PreTreatmentStatesData) }; }