Index: MsgDefs.h =================================================================== diff -u -r459815ccb77591605b7c88467fae2f7a3b73d6ef -rf3717038f64ab1c8c0b1a01b473601d2f8680283 --- MsgDefs.h (.../MsgDefs.h) (revision 459815ccb77591605b7c88467fae2f7a3b73d6ef) +++ MsgDefs.h (.../MsgDefs.h) (revision f3717038f64ab1c8c0b1a01b473601d2f8680283) @@ -92,10 +92,10 @@ MSG_ID_TD_TREATMENT_STATE_DATA = 0x3C, ///< TD treatment state data broadcast MSG_ID_TD_SALINE_BOLUS_DATA = 0x3D, ///< TD saline bolus status data broadcast MSG_ID_TD_ULTRAFILTRATION_DATA = 0x3E, ///< TD ultrafiltration status data broadcast - MSG_ID_UI_TREATMENT_PARAMS_TO_VALIDATE = 0x3F, ///< UI treatment parameters (except UF volume) to be validated by TD + MSG_ID_TD_VALIDATED_TREATMENT_PARAMS = 0x3F, ///< Treatment parameters validated and confirmed from TD MSG_ID_TD_RESP_TREATMENT_PARAMS_TO_VALIDATE = 0x40, ///< TD response to treatment parameter validation request - MSG_ID_UI_ULTRAFILTRATION_VOLUME_TO_VALIDATE = 0x41, ///< UI ultrafiltration volume parameter to be validated by TD - MSG_ID_TD_RESP_ULTRAFILTRATION_VOLUME_TO_VALIDATE = 0x42, ///< TD response to ultrafiltration volume validation request + MSG_ID_AVAILABLE_2 = 0x41, ///< Available message ID 2 + MSG_ID_AVAILABLE_4 = 0x42, ///< Available message ID 3 MSG_ID_TD_TREATMENT_PARAM_RANGES = 0x43, ///< TD treatment parameter ranges for UI MSG_ID_UI_TREATMENT_PARAMS_CONFIRMED = 0x44, ///< UI treatment parameters confirmed/rejected MSG_ID_UI_INITIATE_TREATMENT_WORKFLOW = 0x45, ///< UI initiate/cancel treatment workflow request @@ -513,6 +513,9 @@ REQUEST_REJECT_REASON_HEPARIN_PAUSE_INVALID_IN_THIS_STATE = 50, ///< Heparin cannot be paused if not currently deliverying Heparin REQUEST_REJECT_REASON_HEPARIN_NOT_PAUSED = 51, ///< Heparin cannot be resumed if not paused REQUEST_REJECT_REASON_HEPARIN_VOLUME_EXCEEDS_10_ML = 52, ///< Heparin volume needed for treatment exceeds 10 mL maximum. + REQUEST_REJECT_REASON_PARAM_NOT_APPLICABLE = 53, ///< Treatment parameter not applicable for current treatment modality type + REQUEST_REJECT_REASON_ACID_CONV_FACTOR_MISMATCH = 54, ///< Acid conversion factor from UI mismatch with FW + REQUEST_REJECT_REASON_INVALID_PATIENT_WEIGHTS = 55, ///< Patient pre and estimated target weights are invalid NUM_OF_REQUEST_REJECT_REASONS ///< Number of settings change reject codes }; typedef enum Request_Reject_Reasons REQUEST_REJECT_REASON_CODE_T; ///< Type for settings change rejection reason codes enumeration Index: TDDefs.h =================================================================== diff -u -r413aa187b32921babc077451fb7c98578707497b -rf3717038f64ab1c8c0b1a01b473601d2f8680283 --- TDDefs.h (.../TDDefs.h) (revision 413aa187b32921babc077451fb7c98578707497b) +++ TDDefs.h (.../TDDefs.h) (revision f3717038f64ab1c8c0b1a01b473601d2f8680283) @@ -604,38 +604,134 @@ * @{ */ +///// 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_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_TYPE, ///< Heparin type (enum) +// TREATMENT_PARAM_ACID_CONCENTRATE, ///< Acid concentrate type (enum) +// TREATMENT_PARAM_BICARB_CONCENTRATE, ///< Bicarbonate concentrate type (enum) +// TREATMENT_PARAM_DIALYZER_TYPE, ///< Dialysate type (enum) +// 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_HEPARIN_BOLUS_VOLUME, ///< Heparin bolus volume (in mL) +// 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 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_DISCARD_VOLUME, ///< Prime discard volume (in mL) + 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_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 +746,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 {