Index: TDDefs.h =================================================================== diff -u -r413aa187b32921babc077451fb7c98578707497b -r8d16bba2e538dffbfa82d86fccd2a2696f1085ef --- TDDefs.h (.../TDDefs.h) (revision 413aa187b32921babc077451fb7c98578707497b) +++ TDDefs.h (.../TDDefs.h) (revision 8d16bba2e538dffbfa82d86fccd2a2696f1085ef) @@ -7,8 +7,8 @@ * * @file TDDefs.h * -* @author (last) Varshini Nagabooshanam -* @date (last) 10-Mar-2026 +* @author (last) Raghu Kallala +* @date (last) 28-Apr-2026 * * @author (original) Sean Nash * @date (original) 01-Aug-2024 @@ -206,24 +206,26 @@ /// Enumeration of dry self-tests sub-mode states. enum TD_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_CARTRIDGE_LOADED_CHECK_STATE, ///< Cartridge loaded check dry self-test state - DRY_SELF_TESTS_SYRINGE_PUMP_SEEK_STATE, ///< Seek syringe pumps state - DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_SETUP_STATE, ///< Pressure sensor setup state - DRY_SELF_TESTS_PRESSURE_SENSORS_VENOUS_SETUP_STATE, ///< Venous pressure sensor dry self-test setup valves and pump state - DRY_SELF_TESTS_PRESSURE_SENSORS_VENOUS, ///< Venous pressure sensor dry self-test - DRY_SELF_TESTS_PRESSURE_SENSORS_ARTERIAL_SETUP_STATE, ///< Arterial pressure sensor dry self-test setup valves and pump state - DRY_SELF_TESTS_PRESSURE_SENSORS_ARTERIAL, ///< Arterial pressure sensor dry self-test - DRY_SELF_TESTS_PRESSURE_SENSORS_DECAY_STATE, ///< Pressure sensors verify pressure loss state - DRY_SELF_TESTS_PRESSURE_SENSORS_STABILITY_STATE, ///< Pressure sensors verify pressure stability 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_SYRINGE_PUMP_OCCLUSION_DETECTION_STATE, ///< Occlusion detection 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 + DRY_SELF_TESTS_START_STATE = 0, ///< Dry self-tests start state + DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE = 0, ///< Wait for door close state + DRY_SELF_TESTS_USED_TUBE_SET_CHECK_STATE, ///< Used tube set check state + DRY_SELF_TESTS_TUBE_SET_LOADED_CHECK_STATE, ///< Tube set loaded check state + DRY_SELF_TESTS_TUBE_SET_AUTHENTICATION_STATE, ///< Tube set authentication state + DRY_SELF_TESTS_SYRINGE_PUMP_SEEK_STATE, ///< Syringe pump seek state + DRY_SELF_TESTS_PRESSURE_SENSOR_NORMAL_SETUP_STATE, ///< Pressure sensor normal setup state + DRY_SELF_TESTS_PRESSURE_VENOUS_SETUP_STATE, ///< Pressure venous setup state + DRY_SELF_TESTS_VENOUS_PRESSURE_STABILIZATION_STATE, ///< Venous pressure stabilization state + DRY_SELF_TESTS_VENOUS_PRESSURE_LEAK_CHECK_STATE, ///< Venous pressure leak check state + DRY_SELF_TESTS_VENOUS_PRESSURE_RELIEF_STATE, ///< Venous pressure relief state + DRY_SELF_TESTS_PRESSURE_ARTERIAL_SETUP_STATE, ///< Pressure arterial setup state + DRY_SELF_TESTS_ARTERIAL_PRESSURE_STABILIZATION_STATE, ///< Arterial pressure stabilization state + DRY_SELF_TESTS_ARTERIAL_PRESSURE_LEAK_CHECK_STATE, ///< Arterial pressure leak check state + DRY_SELF_TESTS_ARTERIAL_PRESSURE_RELIEF_STATE, ///< Arterial pressure relief state + DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE, ///< Syringe prime state + DRY_SELF_TESTS_SYRINGE_PUMP_OCCLUSION_CHECK_STATE, ///< Syringe pump occlusion check state + DRY_SELF_TESTS_COMPLETE_STATE, ///< Complete state + DRY_SELF_TESTS_STOPPED_STATE, ///< Stopped state + NUM_OF_DRY_SELF_TESTS_STATES ///< Number of dry self-tests states }; /// Type for dry self-tests enumeration. typedef enum TD_Pre_Treatment_Dry_Self_Tests_States DRY_SELF_TESTS_STATE_T; @@ -607,35 +609,99 @@ /// Enumeration of treatment parameters. enum Treatment_Params { - TREATMENT_PARAM_BLOOD_FLOW = 0, ///< Blood flow rate (in mL/min) - TREATMENT_PARAM_FIRST_UINT = TREATMENT_PARAM_BLOOD_FLOW, ///< First unsigned integer treatment parameter + TREATMENT_PARAM_TREATMENT_MODALITY = 0, ///< Treatment modality type (enum) + TREATMENT_PARAM_FIRST_UINT = TREATMENT_PARAM_TREATMENT_MODALITY, ///< First unsigned integer treatment parameter + TREATMENT_PARAM_HDF_DILUTION, ///< HDF dilution (enum) + TREATMENT_PARAM_BLOOD_FLOW, ///< Blood flow rate (in mL/min) TREATMENT_PARAM_DIALYSATE_FLOW, ///< Dialysate flow rate (in mL/min) TREATMENT_PARAM_TREATMENT_DURATION, ///< Treatment duration (in minutes) - TREATMENT_PARAM_SALINE_BOLUS_VOLUME, ///< Saline bolus volume (in mL) - TREATMENT_PARAM_HEPARIN_STOP_TIME, ///< Heparin stop time (in minutes) + TREATMENT_PARAM_HEPARIN_DELIVERY_DURATION, ///< Heparin delivery duration (in minutes) TREATMENT_PARAM_HEPARIN_TYPE, ///< Heparin type (enum) - TREATMENT_PARAM_ACID_CONCENTRATE, ///< Acid concentrate type (enum) - TREATMENT_PARAM_BICARB_CONCENTRATE, ///< Bicarbonate concentrate type (enum) + TREATMENT_PARAM_DRY_BICARB_CART_SIZE, ///< Dry bicarb cartrideg size (enum) + TREATMENT_PARAM_SODIUM, ///< Sodium concentrate (mEq/L) + TREATMENT_PARAM_BICARBONATE, ///< Bicarbonate concentrate (mEq/L) TREATMENT_PARAM_DIALYZER_TYPE, ///< Dialysate type (enum) + TREATMENT_PARAM_FLUID_BOLUS_VOLUME, ///< Fluid bolus volume (in mL) TREATMENT_PARAM_BP_MEAS_INTERVAL, ///< Blood pressure measurement interval (in minutes) - TREATMENT_PARAM_RINSEBACK_FLOW_RATE, ///< Rinseback flow rate (in mL/min) - TREATMENT_PARAM_RINSEBACK_VOLUME, ///< Rinseback volume (in mL) - TREATMENT_PARAM_LAST_UINT = TREATMENT_PARAM_RINSEBACK_VOLUME, ///< Last unsigned integer treatment parameter - TREATMENT_PARAM_ART_PRES_LIMIT_WINDOW, ///< Arterial pressure alarm limit window (in mmHg) - TREATMENT_PARAM_FIRST_INT = TREATMENT_PARAM_ART_PRES_LIMIT_WINDOW, ///< First integer treatment parameter - TREATMENT_PARAM_VEN_PRES_LIMIT_WINDOW, ///< Venous pressure alarm limit window (in mmHg) - TREATMENT_PARAM_VEN_PRES_LIMIT_ASYMMETRIC, ///< Venous pressure alarm limit asymmetric (in mmHg) - TREATMENT_PARAM_TMP_PRES_LIMIT_WINDOW, ///< TMP alarm limit window (in mmHg) - TREATMENT_PARAM_LAST_INT = TREATMENT_PARAM_TMP_PRES_LIMIT_WINDOW, ///< Last integer treatment parameter - TREATMENT_PARAM_DIALYSATE_TEMPERATURE, ///< Dialysate temperature (in degC) - TREATMENT_PARAM_FIRST_F32 = TREATMENT_PARAM_DIALYSATE_TEMPERATURE, ///< First floating point treatment parameter - TREATMENT_PARAM_HEPARIN_DISPENSE_RATE, ///< Heparin dispense rate (in mL/hr) + TREATMENT_PARAM_PRIME_RINSEBACK_VOLUME, ///< Prime rinseback volume (in mL) + TREATMENT_PARAM_HEPATITIS_B, ///< Hepatitis B status (enum) + TREATMENT_PARAM_ACID_CONCENTRATE, ///< Acid concentrate type (enum) + TREATMENT_PARAM_LAST_UINT = TREATMENT_PARAM_ACID_CONCENTRATE, ///< Last unsigned integer treatment parameter + TREATMENT_PARAM_SUBST_FLUID_VOLUME, ///< Substitution fluid volume (in liters) + TREATMENT_PARAM_FIRST_F32 = TREATMENT_PARAM_SUBST_FLUID_VOLUME, ///< First floating point treatment parameter TREATMENT_PARAM_HEPARIN_BOLUS_VOLUME, ///< Heparin bolus volume (in mL) + TREATMENT_PARAM_HEPARIN_DELIVERY_RATE, ///< Heparin delivery rate (in mL/hr) + TREATMENT_PARAM_DIALYSATE_TEMPERATURE, ///< Dialysate temperature (in degC) + TREATMENT_PARAM_ACID_CONCENTRATE_CONV_FACTOR, ///< Acid concentrate conversion factor + TREATMENT_PARAM_PRE_WEIGHT, ///< Weight of patient prior to treatment + TREATMENT_PARAM_EST_TARGET_WEIGHT, ///< Estimated target weight of patient post treatment TREATMENT_PARAM_UF_VOLUME, ///< Ultrafiltration volume (in liters) - provided separately by UI NUM_OF_TREATMENT_PARAMS ///< Total number of treatment parameters }; typedef enum Treatment_Params TREATMENT_PARAM_T; ///< Type for treatment parameters enumeration +/// Enumeration of system configured treatment parameters. +enum System_Config_Treatment_Params +{ + TREATMENT_PARAM_ART_PRES_LIMIT_WINDOW = 0, ///< Arterial pressure alarm limit window (in mmHg) + TREATMENT_PARAM_VEN_PRES_LIMIT_WINDOW, ///< Venous pressure alarm limit window (in mmHg) + TREATMENT_PARAM_VEN_PRES_LIMIT_ASYMMETRIC, ///< Venous pressure alarm limit asymmetric (in mmHg) + TREATMENT_PARAM_TMP_PRES_LIMIT_WINDOW, ///< TMP pressure alarm limit window (in mmHg) + TREATMENT_PARAM_RINSEBACK_FLOW_RATE, ///< Rinseback flow rate (in mL/min) + TREATMENT_PARAM_PRIME_DISCARD_VOLUME, ///< Prime discard volume (in mL) + TREATMENT_PARAM_SYSTOLIC_BP_LOW_ALARM_LIMIT, ///< Systolic BP low alarm limit (in mmHg) + TREATMENT_PARAM_SYSTOLIC_BP_HIGH_ALARM_LIMIT, ///< Systolic BP high alarm limit (in mmHg) + TREATMENT_PARAM_HEART_RATE_LOW_ALARM_LIMIT, ///< Heart rate low alarm limit (BPM) + TREATMENT_PARAM_HEART_RATE_HIGH_ALARM_LIMIT, ///< Heart rate high alarm limit (BPM) + TREATMENT_PARAM_PRES_ALARM_PERSISTENCE, ///< Pressure alarms persistence (seconds) + NUM_OF_SYS_CONFIG_TREATMENT_PARAMS ///< Total number of treatment parameters +}; +typedef enum System_Config_Treatment_Params SYS_CONFIG_TREATMENT_PARAM_T; ///< Type for system configured treatment parameters enumeration + +/// Enumeration of treatment modality type +enum Treatment_Modality_Types +{ + TREATMENT_MODALITY_HD = 0, ///< Treatment modality Hemodialysis + TREATMENT_MODALITY_HDF, ///< Treatment modality Hemodiafiltration +// TREATMENT_MODALITY_ISOLATED_UF, ///< Treatment modality Isolated UF // TODO uncomment in phase 3 when ISO UF feature is required + NUM_OF_TREATMENT_MODALITY_TYPES ///< Total number of treatment modality types +}; +typedef enum Treatment_Modality_Types TREATMENT_TYPE_T; ///< Type for treatment modality type enumeration + +/// Enumeration of HDF dilution +enum HDF_Dilution +{ + HDF_NOT_APPLICABLE = 0, ///< Treatment HDF not applicable + HDF_PRE_DILUTION, ///< Treatment HDF pre-dilution + HDF_POST_DILUTION, ///< Treatment HDF post-dilution + NUM_OF_TREATMENT_HDF_TYPES ///< Total number of HDF modes +}; +typedef enum HDF_Dilution HDF_MODE_T; ///< Type for HDF treatment dilution enumeration + +/// Enumeration of dry bicarb cartridge size. +enum Dry_Bicarb_Cart_Size +{ + DRY_BICARB_650_G = 0, ///< Dry bicarb cartridge of size 650 g + DRY_BICARB_720_G, ///< Dry bicarb cartridge of size 720 g + DRY_BICARB_760_G, ///< Dry bicarb cartridge of size 760 g + DRY_BICARB_900_G, ///< Dry bicarb cartridge of size 900 g + DRY_BICARB_1100_G, ///< Dry bicarb cartridge of size 1100 g + DRY_BICARB_1250_G, ///< Dry bicarb cartridge of size 1250 g + NUM_OF_DRY_BICARB_CART_SIZES ///< Number of dry bicarb cartridge sizes +}; +typedef enum Dry_Bicarb_Cart_Size DRY_BICARB_CART_SIZE_T; ///< Type for dry bicarb cartridge size enumeration + +/// Enumeration of Hepatitis B Status +enum Hepatitis_B_Status +{ + HEPATITIS_B_NOT_APPLICABLE = 0, ///< Hepatitis B status not applicable + HEPATITIS_B_UNKNOWN, ///< Hepatitis B status unknowm + HEPATITIS_B_POSITIVE, ///< Hepatitis B status positive + HEPATITIS_B_NEGATIVE, ///< Hepatitis B status negative + NUM_OF_HEPATITIS_B_STATUS ///< Total number of Hepatitis status types +}; +typedef enum Hepatitis_B_Status HEPATITIS_B_STATUS_T; ///< Type for hepatitis B status enumeration + /// Enumeration of dialyzer types. enum Dialyzer_Types { @@ -650,24 +716,6 @@ }; typedef enum Dialyzer_Types DIALYZER_TYPE_T; ///< Type for dialyzer types enumeration -/// Enumeration of acid concentrates. -enum Acid_Concentrates -{ - ACID_CONC_TYPE_FRESENIUS_08_1251_1 = 0, ///< Fresensius Naturalyte Acid Concentrate 08-1251-1 - ACID_CONC_TYPE_FRESENIUS_08_2251_0, ///< Fresensius Naturalyte Acid Concentrate 08-2251-0 - ACID_CONC_TYPE_FRESENIUS_08_3251_9, ///< Fresensius Naturalyte Acid Concentrate 08-3251-9 - NUM_OF_ACID_CONC_TYPES ///< Number of acid concentrates -}; -typedef enum Acid_Concentrates ACID_CONCENTRATE_TYPE_T; ///< Type for acid concentrates enumeration - -/// Enumeration of bicarbonate concentrates. -enum Bicarb_Concentrates -{ - BICARB_CONC_TYPE_FRESENIUS_CENTRISOL = 0, ///< Fresenius Centrisol Liquid Bicarbonate - NUM_OF_BICARB_CONC_TYPES ///< Number of bicarbonate concentrates -}; -typedef enum Bicarb_Concentrates BICARB_CONCENTRATE_TYPE_T; ///< Type for bicarbonate concentrates enumeration - /// Enumeration of Heparin types. enum Heparin_Types { @@ -718,7 +766,9 @@ TD_EVENT_STARTUP = 0, ///< TD startup event TD_EVENT_OP_MODE_CHANGE, ///< TD Op mode change event TD_EVENT_SUB_MODE_CHANGE, ///< TD Op sub-mode change event - TD_EVENT_DRY_SELF_TEST_CARTRIDGE_RESULT, ///< TD dry self test cartridge result + TD_EVENT_DRY_SELF_TEST_TUBESET_RESULT, ///< TD dry self test cartridge result + TD_EVENT_TUBING_SET_BARCODE_SCAN_REQUEST, ///< TD tubing set barcode scan request + TD_EVENT_TUBING_SET_BARCODE_SCAN_AUTHENTICATED, ///< TD tubing set barcode scan authenticated TD_EVENT_DRY_SELF_TEST_PRESSURE_RESULT, ///< TD dry self test pressure result TD_EVENT_WET_SELF_TEST_DISPLACEMENT_RESULT, ///< TD wet self test displacement result TD_EVENT_CPU_RAM_ERROR_STATUS, ///< TD CPU RAM error status @@ -735,7 +785,6 @@ TD_EVENT_AIR_TRAP_FILL, ///< TD started/stopped an air trap fill operation. TD_EVENT_AIR_TRAP_LOWER, ///< TD started/stopped an air trap lower level operation. TD_EVENT_AIR_PUMP_ON_OFF, ///< TD turned air pump on/off. - TD_EVENT_DRY_SELF_TEST_PRESSURE_DECAY_WAIT_PERIOD, ///< TD dry self test pressure decay waiting period. TD_EVENT_INSTIT_RECORD_UPDATE, ///< TD new institutional record has been updated. TD_EVENT_VALVE_POS_CHANGE, ///< TD pinch valve position change TD_EVENT_VALVE_HOMED_POS_SETTING, ///< TD pinch valve homed encoder positions for A/B/C.