Skip to content

Commit a7b72f7

Browse files
committed
getStableValue improvements
1 parent acb8082 commit a7b72f7

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

python/shared/helper.py

+16-1
Original file line numberDiff line numberDiff line change
@@ -439,12 +439,15 @@ def getItemLastChange(itemOrName):
439439
raise NotInitialisedException("Item lastChange for '" + item.getName() + "' not found")
440440
return lastChange
441441

442-
def getStableItemState( now, itemName, checkTimeRange ):
442+
def getStableMinMaxItemState( now, itemName, checkTimeRange ):
443443

444444
currentEndTime = now
445445
currentEndTimeMillis = currentEndTime.toInstant().toEpochMilli()
446446
minTimeMillis = currentEndTimeMillis - ( checkTimeRange * 60 * 1000 )
447447

448+
minValue = None
449+
maxValue = None
450+
448451
value = 0.0
449452
duration = 0
450453

@@ -462,6 +465,12 @@ def getStableItemState( now, itemName, checkTimeRange ):
462465
_duration = currentEndTimeMillis - currentStartMillis
463466
_value = entry.getState().doubleValue()
464467

468+
if minValue == None or minValue > _value:
469+
minValue = _value
470+
471+
if maxValue == None or maxValue < _value:
472+
maxValue = _value
473+
465474
duration = duration + _duration
466475
value = value + ( _value * _duration )
467476

@@ -476,6 +485,12 @@ def getStableItemState( now, itemName, checkTimeRange ):
476485

477486
value = ( value / duration )
478487

488+
return [ value, minValue, maxValue ]
489+
490+
def getStableItemState( now, itemName, checkTimeRange ):
491+
492+
value, _, _ = getStableMinMaxItemState(now,itemName, checkTimeRange)
493+
479494
return value
480495

481496
# *** Notifications ***

0 commit comments

Comments
 (0)