File tree 1 file changed +3
-2
lines changed
examples/all-clusters-app/all-clusters-common/src
1 file changed +3
-2
lines changed Original file line number Diff line number Diff line change @@ -317,7 +317,8 @@ uint16_t WaterHeaterManagementDelegate::GetActiveTargetWaterTemperature() const
317
317
uint8_t WaterHeaterManagementDelegate::CalculateTankPercentage () const
318
318
{
319
319
int16_t tankPercentage =
320
- 100 * (mWaterTemperature - mColdWaterTemperature ) / (GetActiveTargetWaterTemperature () - mColdWaterTemperature );
320
+ 100 * (static_cast <int16_t >(mWaterTemperature ) - static_cast <int16_t >(mColdWaterTemperature )) /
321
+ (static_cast <int16_t >(GetActiveTargetWaterTemperature ()) - static_cast <int16_t >(mColdWaterTemperature ));
321
322
322
323
tankPercentage = std::min (tankPercentage, static_cast <int16_t >(100 ));
323
324
tankPercentage = std::max (tankPercentage, static_cast <int16_t >(0 ));
@@ -355,7 +356,7 @@ void WaterHeaterManagementDelegate::SetTargetWaterTemperature(uint16_t targetWat
355
356
void WaterHeaterManagementDelegate::DrawOffHotWater (Percent percentageReplaced, uint16_t replacedWaterTemperature)
356
357
{
357
358
// First calculate the new average water temperature
358
- mWaterTemperature = (mWaterTemperature * (100 - percentageReplaced) + replacedWaterTemperature * percentageReplaced) / 100 ;
359
+ mWaterTemperature = (mWaterTemperature * static_cast < uint16_t > (100 - percentageReplaced) + replacedWaterTemperature * percentageReplaced) / 100 ;
359
360
360
361
// Replaces percentageReplaced% of the water in the tank with water of a temperature replacedWaterTemperature
361
362
// Only supported if the kTankPercent feature is supported.
You can’t perform that action at this time.
0 commit comments