diff --git a/src/org/hwo/ui/servicelink/ServiceLinkPlotProvider.java b/src/org/hwo/ui/servicelink/ServiceLinkPlotProvider.java index 7902103..b398ee7 100644 --- a/src/org/hwo/ui/servicelink/ServiceLinkPlotProvider.java +++ b/src/org/hwo/ui/servicelink/ServiceLinkPlotProvider.java @@ -24,7 +24,7 @@ public class ServiceLinkPlotProvider implements PlotProvider{ public void sample(int pos){ if (this.serviceRegister.getAsFloat()) - this.values[pos] = this.serviceRegister.readFloatValue(); + this.values[pos] = this.serviceRegister.readFloatValueSynchron(); else this.values[pos] = this.serviceRegister.readIntegerValue().floatValue(); } diff --git a/src/org/hwo/ui/servicelink/register/ServiceRegister.java b/src/org/hwo/ui/servicelink/register/ServiceRegister.java index b89b088..82f5fe7 100644 --- a/src/org/hwo/ui/servicelink/register/ServiceRegister.java +++ b/src/org/hwo/ui/servicelink/register/ServiceRegister.java @@ -1,6 +1,7 @@ package org.hwo.ui.servicelink.register; import java.awt.Component; +import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.HashSet; @@ -13,6 +14,7 @@ import org.hwo.interactiveobjects.InteractiveObject; import org.hwo.io.servicelink.ServiceLink; import org.hwo.io.servicelink.ServiceLink.ServiceTelegram; import org.hwo.io.servicelink.ServiceLinkException; +import org.hwo.io.servicelink.ServiceLinkRequestFailedException; import org.hwo.io.servicelink.ServiceRegisterListener; import org.hwo.models.TableMapper.TableColumn; import org.hwo.ui.servicelink.register.bitfield.BitFieldEditor; @@ -201,6 +203,18 @@ public abstract class ServiceRegister implements ServiceRegisterListener { e.printStackTrace(); } } + + public Float readFloatValueSynchron() + { + try { + return serviceLink.readFloat(ax.byteValue(), node.byteValue(), register); + } catch (ServiceLinkRequestFailedException e) { + } catch (IOException e) { + } catch (ServiceLinkException e) { + } + return null; + } + public Integer readIntegerValue() {