/*! * * Copyright (c) 2021-2023 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-Aug-2023 * \author (original) Behrouz NematiPour * \date (original) 11-Apr-2021 * */ #pragma once // Qt #include // Project #include "main.h" // Doxygen : do not remove #include "VView.h" #include "MPreTreatmentStatesData.h" // namespace 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_WATER_SAMPLE_STATE , Water sample 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 PROPERTY( quint8 , wetSelfTestsState , 0 ) ///< ??? , ??? PROPERTY( quint8 , preTreatmentRsrvrState , 0 ) ///< ??? , ??? // 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_prime , false ) ///< CONSUMABLE_SELF_PRIME_STATE , Consumable self-tests prime concentrate lines 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 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_pressureCheck , false ) ///< NO_CART_SELF_TESTS_PRESSURE_CHECKS_STATE , No cartridge pressure sensors self-test state PROPERTY( bool , selfTestNoCartridge_homeValves , false ) ///< NO_CART_SELF_TESTS_HOME_VALVES_STATE , No cartridge home valves state PROPERTY( bool , selfTestNoCartridge_homeSyringePump , false ) ///< NO_CART_SELF_TESTS_HOME_SYRINGE_PUMP_STATE , No cartridge home syringe pump 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_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_usedCartridge , false ) ///< DRY_SELF_TESTS_USED_CARTRIDGE_CHECK_STATE , Used Cartridge self-test state. STATE ( bool , selfTestDry_cartridgeLoaded , false ) ///< DRY_SELF_TESTS_CARTRIDGE_LOADED_CHECK_STATE , Cartridge loaded check dry self-test state. STATE ( bool , selfTestDry_pressureSensorsNormalSetup , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_SETUP_STATE , Pressure sensor setup state. STATE ( bool , selfTestDry_pressureSensorsVenousSetup , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_VENOUS_SETUP_STATE , Venous pressure sensor dry self-test setup valves and pump state STATE ( bool , selfTestDry_pressureSensorsVenous , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_VENOUS , Venous pressure sensor dry self-test STATE ( bool , selfTestDry_pressureSensorsArterialSetup , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_ARTERIAL_SETUP_STATE , Arterial pressure sensor dry self-test setup valves and pump state STATE ( bool , selfTestDry_pressureSensorsArterial , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_ARTERIAL , Arterial pressure sensor dry self-test STATE ( bool , selfTestDry_pressureSensorsDecay , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_DECAY_STATE , Pressure sensors verify pressure loss state STATE ( bool , selfTestDry_pressureSensorsStability , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_STABILITY_STATE , Pressure sensors verify pressure stability state STATE ( bool , selfTestDry_pressureSensorsNormal , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE , Pressure sensors verify normal pressure readings state. STATE ( bool , selfTestDry_syringePump , false ) ///< DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE , Prime syringe pump state STATE ( bool , selfTestDry_syringePumpOcclusionDetection, false ) ///< DRY_SELF_TESTS_SYRINGE_PUMP_OCCLUSION_DETECTION_STATE , Occlusion detection 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 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_reservoirOneFillComplete , 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_salineDialyzerSetup , false ) ///< HD_PRIME_SALINE_DIALYZER_SETUP_STATE , Saline dialyzer setup state STATE ( bool , prime_salineDialyzer , false ) ///< HD_PRIME_SALINE_DIALYZER_STATE , Saline 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 STATE ( bool , prime__BloodCircuit , false ) ///< bundled/cobined states to be used with the corresponding States on the related UI screen. STATE ( bool , prime__DialysateCircuit , false ) ///< bundled/cobined states to be used with the corresponding States on the related UI screen. STATE ( bool , prime__WetSelfTests , false ) ///< bundled/cobined states to be used with the corresponding States on the related UI screen. // 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) }; }