Index: firmware/App/Services/TDInterface.c =================================================================== diff -u -ra46f63725893e7645354c726ce9a91a0935c81d3 -r5064632166c39b6e716f6bd14a1d89603b30c088 --- firmware/App/Services/TDInterface.c (.../TDInterface.c) (revision a46f63725893e7645354c726ce9a91a0935c81d3) +++ firmware/App/Services/TDInterface.c (.../TDInterface.c) (revision 5064632166c39b6e716f6bd14a1d89603b30c088) @@ -346,17 +346,19 @@ return tdDialyzerBypass; } -/*********************************************************************//** + +/****************************************************************************** * @brief * The getTDAcidConcentrateType function gets the latest Acid concentrate * type. * @details \b Inputs: tdAcidTypeOverride - * @details \b Outputs: none - * @return Latest acid concentrate type. - *************************************************************************/ + * @details \b Outputs: None + * @return Latest acid concentrate type. . + ******************************************************************************/ DD_ACID_TYPES_T getTDAcidConcentrateType( void ) { - return ( DD_ACID_TYPES_T )tdAcidTypeOverride.data; + U32 value = getU32OverrideValue( &tdAcidTypeOverride ); + return (DD_ACID_TYPES_T)value; } /*********************************************************************//** @@ -369,7 +371,8 @@ *************************************************************************/ DD_BICARB_TYPES_T getTDBicarbConcentrateType( void ) { - return ( DD_BICARB_TYPES_T )tdBicarbTypeOverride.data; + U32 value = getU32OverrideValue( &tdBicarbTypeOverride ); + return (DD_BICARB_TYPES_T)value; } /*********************************************************************//** @@ -515,81 +518,50 @@ /****************************************************************************** - * @brief - * Handles TD treatment parameter override requests. - * @details - * Applies override values for treatment parameters when a tester is logged in. - * \b Inputs: TEST_OVERRIDE_ARRAY_PAYLOAD_T structure from Dialin. - * \b Outputs: Updated F32/U32 override values for applicable parameters. - * @param message Pointer to the override message received from Dialin. - * @return TRUE if the override is successfully applied, FALSE otherwise. - ******************************************************************************/ -static BOOL testTDTreatmentParamsOverride( MESSAGE_T *message ) +* @brief +* Processes TD treatment parameter override request from Dialin. +* @details \b Inputs: Override payload from Dialin (TEST_OVERRIDE_ARRAY_PAYLOAD_T) +* @details \b Outputs: Updated TD override structures and treatment parameter +* update flag. +* @param message Pointer to the override message received from Dialin. +* @return TRUE if the override is successfully applied, FALSE otherwise. +******************************************************************************/ +BOOL testTDTreatmentParamsOverride( MESSAGE_T *message ) { BOOL result = FALSE; TEST_OVERRIDE_ARRAY_PAYLOAD_T payload; - OVERRIDE_TYPE_T ovType; - ovType = getOverrideArrayPayloadFromMessage( message, &payload ); + getOverrideArrayPayloadFromMessage( message, &payload ); - if ( ( TRUE == isTestingActivated() ) && ( DD_MODE_GEND == getCurrentOperationMode() ) && ( ovType != OVERRIDE_INVALID ) && ( ovType < NUM_OF_OVERRIDE_TYPES ) ) + if ( DD_MODE_GEND == getCurrentOperationMode() ) { switch ( (TD_TREATMENT_OVERRIDE_INDEX_T)payload.index ) { case TD_TREATMENT_OVERRIDE_DIALYSATE_FLOWRATE: - { - F32 value = payload.state.f32; - if ( ( ovType == OVERRIDE_OVERRIDE ) && ( ( value < TD_DIALYSATE_FLOWRATE_MIN_ML_MIN ) || ( value > TD_DIALYSATE_FLOWRATE_MAX_ML_MIN ) ) ) - { - result = FALSE; - } - else - { - result = f32Override( message, &tdDialysateFlowrateOverride ); - } + result = f32Override( message, &tdDialysateFlowrateOverride ); break; - } case TD_TREATMENT_OVERRIDE_UF_RATE: - { - F32 value = payload.state.f32; - if ( ( ovType == OVERRIDE_OVERRIDE ) && ( ( value < TD_UF_RATE_MIN_ML_MIN ) || ( value > TD_UF_RATE_MAX_ML_MIN ) ) ) - { - result = FALSE; - } - else - { - result = f32Override( message, &tdDialysateFlowrateOverride ); - } + result = f32Override( message, &tdUFRateOverride ); break; - } case TD_TREATMENT_OVERRIDE_DIALYSATE_TEMP: - { - F32 value = payload.state.f32; - if ( ( ovType == OVERRIDE_OVERRIDE ) && ( ( value < TD_DIALYSATE_TEMP_MIN_DEGC ) || ( value > TD_DIALYSATE_TEMP_MAX_DEGC ) ) ) - { - result = FALSE; - } - else - { - result = f32Override( message, &tdDialysateTempOverride ); - } + result = f32Override( message, &tdDialysateTempOverride ); break; - } case TD_TREATMENT_OVERRIDE_ACID_TYPE: - result = u32Override( message, &tdAcidTypeOverride, TD_ACID_TYPE_MIN, TD_ACID_TYPE_MAX ); + result = u32Override( message,&tdAcidTypeOverride,TD_ACID_TYPE_MIN,TD_ACID_TYPE_MAX ); break; case TD_TREATMENT_OVERRIDE_BICARB_TYPE: - result = u32Override( message, &tdBicarbTypeOverride, TD_BICARB_TYPE_MIN, TD_BICARB_TYPE_MAX ); + result = u32Override( message,&tdBicarbTypeOverride,TD_BICARB_TYPE_MIN,TD_BICARB_TYPE_MAX ); break; default: result = FALSE; break; } + if ( TRUE == result ) { setTreatmentParamUpdate();