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)))
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
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
def getMeasurement(self): return Measurement.currentMeasurement(self.getData())