예제 #1
0
 def updateReceivedData(self, dataIdentifier, value):
     if self.lastValueMapping[dataIdentifier] is None or self.lastValueMapping[dataIdentifier] != value:
         self.lastValueMapping[dataIdentifier] = value
         measurement = Measurement.currentMeasurement({dataIdentifier: value})
         self.measurementBuffer.append(measurement)
     else:
         logging.getLogger().error(
             "New data are equals to previous one ({}: {}). Skipping...".format(dataIdentifier, repr(value)))
예제 #2
0
 def tryBuffer(self, updateBuffer, dataIdentifier, data):
     try:
         updateBuffer.updateReceivedData(dataIdentifier, data)
         if updateBuffer.isComplete():
             d = updateBuffer.getData()
             updateBuffer.reset()
             measurement = Measurement.currentMeasurement(d)
             self.channelUpdateSupervisor.dataAvailable(updateBuffer.channel, measurement)
     except TopicException as ex:
         pass
예제 #3
0
 def tryBuffer(self, updateBuffer, dataIdentifier, data):
     try:
         updateBuffer.updateReceivedData(dataIdentifier, data)
         if updateBuffer.isComplete():
             d = updateBuffer.getData()
             updateBuffer.reset()
             measurement = Measurement.currentMeasurement(d)
             self.channelUpdateSupervisor.dataAvailable(
                 updateBuffer.channel, measurement)
     except TopicException as ex:
         pass
예제 #4
0
 def getMeasurement(self):
     return Measurement.currentMeasurement(self.getData())