Index: HDDefs.h =================================================================== diff -u -rfcf2da510b0d292394d43234539408fec60e9099 -r3c6e47624b48300a7ed119eb2f92dcef04201a69 --- HDDefs.h (.../HDDefs.h) (revision fcf2da510b0d292394d43234539408fec60e9099) +++ HDDefs.h (.../HDDefs.h) (revision 3c6e47624b48300a7ed119eb2f92dcef04201a69) @@ -58,9 +58,9 @@ POST_STATE_NVDATAMGMT, ///< Run NV Data Mgmt. test mode state POST_STATE_BLOOD_FLOW, ///< Run Blood Flow test mode state POST_STATE_DIALYSATE_FLOW, ///< Run Dialysate Flow test mode state - POST_STATE_ACCELEROMETER, ///< Run Accelerometer test mode state POST_STATE_VALVES, ///< Run Valves test mode state POST_STATE_ALARM_LAMP, ///< Run alarm lamp test mode state + POST_STATE_ACCELEROMETER, ///< Run Accelerometer test mode state POST_STATE_STUCK_BUTTON, ///< Run stuck button test mode state POST_STATE_COMPLETED, ///< POST self-tests completed mode state POST_STATE_FAILED, ///< POST self-tests failed mode state @@ -128,15 +128,111 @@ { HD_PRE_TREATMENT_START_STATE = 0, ///< Start pre-treatment mode state HD_PRE_TREATMENT_WATER_SAMPLE_STATE, ///< Water sample state - HD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE, ///< Self tests with no cartridge state + HD_PRE_TREATMENT_SELF_TEST_CONSUMABLE_STATE, ///< Consumable self-tests state + HD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE, ///< No cartridge self-tests state HD_PRE_TREATMENT_CART_INSTALL_STATE, ///< Consumable and cartridge installation state - HD_PRE_TREATMENT_SELF_TEST_DRY_STATE, ///< Self tests dry state + HD_PRE_TREATMENT_SELF_TEST_DRY_STATE, ///< Self-tests when the cartridge is dry state HD_PRE_TREATMENT_PRIME_STATE, ///< Prime blood and dialysate circuits and run wet self-tests state HD_PRE_TREATMENT_RECIRCULATE_STATE, ///< Re-circulate blood and dialysate circuits state HD_PRE_TREATMENT_PATIENT_CONNECTION_STATE, ///< Patient connection state NUM_OF_HD_PRE_TREATMENT_STATES ///< Number of pre-treatment mode states }; typedef enum HD_Pre_Treatment_Mode_States HD_PRE_TREATMENT_MODE_STATE_T; ///< Type for HD pre-treatment mode states enumeration + +/**@}*/ + +/** + * @addtogroup SampleWater + * @{ + */ + +/// Enumeration of sample water sub-mode states. +enum HD_Pre_Treatment_Sample_Water_States +{ + SAMPLE_WATER_SETUP_STATE = 0, ///< Sample water setup (flush filter) state + SAMPLE_WATER_STATE, ///< Sample water state, receiving sample water commands from the user + SAMPLE_WATER_COMPLETE_STATE, ///< Sample water complete state + NUM_OF_SAMPLE_WATER_STATES ///< Number of sample water sub-mode states +}; +/// Type for sample water states enumeration. +typedef enum HD_Pre_Treatment_Sample_Water_States SAMPLE_WATER_STATE_T; + +/// Enumeration of user actions that may be requested from sample water sub-mode. +enum Requested_Sample_Water_User_Actions +{ + REQUESTED_USER_ACTION_SAMPLE_WATER_STOP = 0, ///< User requests to stop sample water + REQUESTED_USER_ACTION_SAMPLE_WATER_START = 1, ///< User requests to start sample water + NUM_OF_REQUESTED_SAMPLE_WATER_USER_ACTIONS ///< Number of requested sample water user actions +}; +/// Type for requested user actions enumeration. +typedef enum Requested_Sample_Water_User_Actions REQUESTED_SAMPLE_WATER_USER_ACTIONS_T; + +/**@}*/ + +/** + * @addtogroup SelfTestConsumable + * @{ + */ + +/// Enumeration of consumable self-tests sub-mode states. +enum HD_Pre_Treatment_Consumable_Self_Test_States +{ + CONSUMABLE_SELF_TESTS_INSTALL_STATE = 0, ///< Consumable self-tests install state + CONSUMABLE_SELF_TESTS_FILL_CMD_STATE, ///< Send command to DG to fill reservoir state + CONSUMABLE_SELF_TESTS_WATER_QUALITY_CHECK_STATE, ///< Consumable self-tests water quality check state + CONSUMABLE_SELF_TESTS_BICARB_PUMP_CHECK_STATE, ///< Consumable self-tests bicarbonate concentrate pump check state + CONSUMABLE_SELF_TESTS_ACID_PUMP_CHECK_STATE, ///< Consumable self-tests acid concentrate pump check state + CONSUMABLE_SELF_TESTS_COMPLETE_STATE, ///< Consumable self-tests complete state + NUM_OF_CONSUMABLE_SELF_TESTS_STATES ///< Number of consumable install sub-mode states +}; +/// Type for consumable self-tests states enumeration. +typedef enum HD_Pre_Treatment_Consumable_Self_Test_States CONSUMABLE_SELF_TESTS_STATE_T; + +/**@}*/ + +/** + * @addtogroup SelfTests + * @{ + */ + +/// Enumeration of no cartridge self-tests sub-mode states. +enum HD_Pre_Treatment_No_Cart_Self_Tests_States +{ + NO_CART_SELF_TESTS_START_STATE = 0, ///< No cartridge self-tests starting state + NO_CART_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE, ///< Wait for door to be closed before running self-tests + NO_CART_SELF_TESTS_OCCLUSION_SENSORS_STATE, ///< No cartridge occlusion sensors self-test state + NO_CART_SELF_TESTS_BLOOD_FLOW_METERS_STATE, ///< No cartridge blood flow meter self-test state + NO_CART_SELF_TESTS_DIALYSATE_FLOW_METERS_STATE, ///< No cartridge dialysate flow meter self-test state + NO_CART_SELF_TESTS_LEAK_DETECTORS_STATE, ///< No cartridge leak detectors self-test state + NO_CART_SELF_TESTS_BOARD_TEMPERATURE_STATE, ///< No cartridge board temperature self-test state + NO_CART_SELF_TESTS_START_HOMING_STATE, ///< No cartridge start home valves and pumps state + NO_CART_SELF_TESTS_HOME_VALVES_AND_PUMPS_STATE, ///< No cartridge home valves and pumps self-test state + NO_CART_SELF_TESTS_HOME_IDLE_STATE, ///< Wait for valves and pumps finish homing state + NO_CART_SELF_TESTS_PUMPS_STATE, ///< No cartridge self-test for blood pump, dialysate in pump, dialysate out pump state + NO_CART_SELF_TESTS_STOPPED_STATE, ///< No cart self-test stopped state + NO_CART_SELF_TESTS_COMPLETE_STATE, ///< No cartridge self-test complete state + NUM_OF_NO_CART_SELF_TESTS_STATES ///< Number of no cartridge self-tests states +}; +/// Type for no cartridge self-tests enumeration. +typedef enum HD_Pre_Treatment_No_Cart_Self_Tests_States NO_CART_SELF_TESTS_STATE_T; + +/// Enumeration of dry self-tests sub-mode states. +enum HD_Pre_Treatment_Dry_Self_Tests_States +{ + DRY_SELF_TESTS_START_STATE = 0, ///< Dry self-tests starting state + DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE, ///< Wait for door to close before executing self-tests + DRY_SELF_TESTS_USED_CARTRIDGE_CHECK_STATE, ///< Used cartridge check dry self-test state + DRY_SELF_TESTS_OCCLUSION_SENSORS_STATE, ///< Occlusion sensors dry self-test state + DRY_SELF_TESTS_PRESSURE_SENSORS_SETUP_STATE, ///< Pressure sensors dry self-test setup valves and pump state + DRY_SELF_TESTS_PRESSURE_SENSORS_STATE, ///< Pressure sensors verify pressure readings state + DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE, ///< Pressure sensors verify normal pressure readings state + DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE, ///< Prime syringe pump state + DRY_SELF_TESTS_STOPPED_STATE, ///< Dry self-test stopped state + DRY_SELF_TESTS_COMPLETE_STATE, ///< Dry self-test complete state + NUM_OF_DRY_SELF_TESTS_STATES ///< Number of dry self-tests states +}; +/// Type for dry self-tests enumeration. +typedef enum HD_Pre_Treatment_Dry_Self_Tests_States DRY_SELF_TESTS_STATE_T; /**@}*/ @@ -165,6 +261,23 @@ typedef enum HD_Pre_Treatment_Prime_States HD_PRE_TREATMENT_PRIME_STATE_T; ///< Type for HD pre-treatment prime sub-mode states enumeration /**@}*/ + +/** + * @addtogroup PreTreatmentRecirc + * @{ + */ + +/// Enumeration of pre-treatment recirculate states. +enum HD_Pre_Treatment_Recirc_States +{ + PRE_TREATMENT_RECIRC_STATE = 0, ///< Pre-treatment recirculate state + PRE_TREATMENT_RECIRC_STOPPED_STATE, ///< Pre-treatment recirculate stopped state + NUM_OF_PRE_TREATMENT_RECIRC_STATES ///< Number of pre-treatment recirculate states +}; +///< Type for HD pre-treatment recirculate sub-mode states enumeration +typedef enum HD_Pre_Treatment_Recirc_States HD_PRE_TREATMENT_RECIRC_STATE_T; + +/**@}*/ /** * @addtogroup HDTreatmentMode @@ -194,8 +307,10 @@ /// Enumeration of post-treatment mode states. enum HD_Post_Treatment_Mode_States -{ - HD_POST_TREATMENT_STATE_START = 0, ///< Start post-treatment mode state +{ + HD_POST_TREATMENT_PATIENT_DISCONNECTION_STATE = 0, ///< Patient disconnection state + HD_POST_TREATMENT_DRAIN_RESERVOIRS_STATE, ///< Drain reservoirs state + HD_POST_TREATMENT_VERIFY_STATE, ///< Verify cartridge removed, syringe removed, and reservoirs drained state NUM_OF_HD_POST_TREATMENT_STATES ///< Number of post-treatment mode states }; typedef enum HD_Post_Treatment_Mode_States HD_POST_TREATMENT_STATE_T; ///< Type for HD post treatment mode states enumeration @@ -238,8 +353,6 @@ UF_START_STATE = 0, ///< Start state of the ultrafiltration state machine UF_PAUSED_STATE, ///< Paused state of the ultrafiltration state machine UF_RUNNING_STATE, ///< Running state of the ultrafiltration state machine - UF_OFF_STATE, ///< Completed/off state of the ultrafiltration state machine - UF_COMPLETED_STATE, ///< Completed state of ultrafiltration state machine NUM_OF_UF_STATES ///< Number of ultrafiltration states }; typedef enum UF_States UF_STATE_T; ///< Type for ultrafiltration states enumeration @@ -258,8 +371,8 @@ /// Enumeration of saline bolus command parameters. enum Saline_Commands { - SALINE_CMD_STOP = 0, ///< Start saline bolus command - SALINE_CMD_START, ///< Stop saline bolus command + SALINE_CMD_STOP = 0, ///< Stop saline bolus command + SALINE_CMD_START, ///< Start saline bolus command NUM_OF_SALINE_CMDS ///< Number of saline bolus command parameters }; typedef enum Saline_Commands SALINE_CMD_T; ///< Type for saline command enum. @@ -285,22 +398,23 @@ /**@}*/ /** - * @addtogroup Heparin + * @addtogroup SyringePump * @{ */ /// Enumeration of heparin states. enum Heparin_States { HEPARIN_STATE_OFF = 0, ///< No heparin delivery is in progress + HEPARIN_STATE_STOPPED, ///< Heparin delivery stopped by alarm or not yet started HEPARIN_STATE_PAUSED, ///< Heparin delivery paused HEPARIN_STATE_INITIAL_BOLUS, ///< Initial heparin bolus delivery in progress HEPARIN_STATE_DISPENSING, ///< Gradual heparin dispensing in progress HEPARIN_STATE_COMPLETED, ///< Heparin delivery stopped due to the set stop time before treatment end HEPARIN_STATE_EMPTY, ///< Heparin Syringe empty NUM_OF_HEPARIN_STATES ///< Number of saline bolus states }; -typedef enum Heparin_States HEPARIN_STATE_T; ///< Type for heparin state enumeration +typedef enum Heparin_States HEPARIN_STATE_T; ///< Type for heparin state enumeration /// Enumeration of heparin command IDs. enum Heparin_Commands