public void pvChanged(PVReaderEvent<VNumberArray> event) { if (event.isValueChanged()) { // Do something with the value System.out.println(event.getPvReader().getValue()); } } })
void firePvValueChanged() { int notificationMask = 0; PVReaderEvent<T> event; synchronized(lock) { if (connectionToNotify) { notificationMask += PVReaderEvent.CONNECTION_MASK; } if (valueToNotify) { notificationMask += PVReaderEvent.VALUE_MASK; } if (exceptionToNotify) { notificationMask += PVReaderEvent.EXCEPTION_MASK; } connectionToNotify = false; valueToNotify = false; exceptionToNotify = false; sentFirstEvent = true; event = new PVReaderEvent<>(notificationMask, readerForNotification); } for (PVReaderListener<T> listener : pvReaderListeners) { listener.pvChanged(event); } }
@Override public String toString() { StringBuilder builder = new StringBuilder(); builder.append("[ "); boolean first = true; if (isConnectionChanged()) { builder.append("CONN"); first = false; } if (isValueChanged()) { if (!first) { builder.append(" | "); } builder.append("VAL"); first = false; } if (isExceptionChanged()) { if (!first) { builder.append(" | "); } builder.append("EXC"); } builder.append(" ]"); return builder.toString(); }
@Override public void pvChanged(PVReaderEvent<VType> event) { // We can switch on the full type if (event.getPvReader().getValue() instanceof VDouble) { VDouble vDouble = (VDouble) event.getPvReader().getValue(); // Do something with a VDouble } // ... } })
@Override public void pvChanged(PVReaderEvent<VDouble> event) { if (event.isValueChanged()) { valueLabel.setText(Double.toString(pv.getValue().getValue())); overallCounter++; Instant now = Instant.now(); double avgRage = overallCounter / (overallTimestamp.until(now, ChronoUnit.SECONDS)); avgRateLabel.setText("" + avgRage); if (now.compareTo(lastPeriodTimestamp.plus(measureInterval)) >= 0) { double currentRate = (overallCounter - lastPeriodCounter) / (lastPeriodTimestamp.until(now, ChronoUnit.SECONDS)); currentRateLabel.setText("" + currentRate); lastPeriodTimestamp = now; lastPeriodCounter = overallCounter; } } } }).maxRate(TimeDuration.ofHertz(scanRate));
@Override public void pvChanged(PVReaderEvent<Map<String, Object>> event) { // Print the values if any Map<String, Object> map = event.getPvReader().getValue(); if (map != null) { System.out.println("setpoint: " + map.get("setpoint") + " - readback: " + map.get("readback") + " - difference: " + map.get("difference")); } } })
@Override public void pvChanged(PVReaderEvent<List<VNumber>> event) { if (event.isValueChanged()) { System.out.println("... values are " + event.getPvReader().getValue()); } } })
@Override public void pvChanged(PVReaderEvent<Object> event) { // Do something with each value Object newValue = event.getPvReader().getValue(); System.out.println(newValue); } })
@Override public void pvChanged(PVReaderEvent<VNumber> event) { if (event.isValueChanged()) { System.out.println("... value is " + event.getPvReader().getValue().getValue()); } } })
@Override public void pvChanged(PVReaderEvent<Map<String, Object>> event) { // Print the values if any Map<String, Object> map = event.getPvReader().getValue(); if (map != null) { System.out.println("one: " + map.get("one") + " - two: " + map.get("two") + " - three: " + map.get("three")); } } })
@Override public void pvChanged(PVReaderEvent<VNumber> event) { if (event.isValueChanged()) { System.out.println("... value is " + event.getPvReader().getValue().getValue()); } } })
@Override public void pvChanged(PVReaderEvent<Object> event) { // Do something with each value Object newValue = event.getPvReader().getValue(); System.out.println(newValue); } })
public void pvChanged(PVReaderEvent<VNumberArray> event) { if (event.isValueChanged()) { // New value VNumberArray value = event.getPvReader().getValue(); ListNumber data = value.getData(); for (int i = 0; i < data.size(); i++) { // Get the double representation of the value, // converting it if needed double iValue = data.getDouble(i); System.out.println(iValue); } } } })
@Override public void pvChanged(PVReaderEvent<Object> event) { // Timeout are passed as exceptions. This allows you to // treat them as any other error conditions. Exception ex = event.getPvReader().lastException(); if (ex instanceof TimeoutException) { System.out.println("Didn't connected after 5 seconds"); } } })
@Override public void pvChanged(PVReaderEvent<Object> event) { System.out.println(event.getPvReader().getValue()); } })
@Override public void pvChanged(PVReaderEvent<List<Object>> event) { // Do something with each value for (Object newValue : event.getPvReader().getValue()) { System.out.println(newValue); } } })
@Override public void pvChanged(PVReaderEvent<Object> event) { // By default, read exceptions are made available // on the reader itself. // This will give you only the last exception, so if // more then one exception was generated after the last read, // some will be lost. Exception ex = event.getPvReader().lastException(); // Note that taking the exception, clears it // so next call you'll get null. if (event.getPvReader().lastException() == null) { // Always true } } })
@Override public void pvChanged(PVReaderEvent<Object> event) { field.setText(format.format(event.getPvReader().getValue())); } })
@Override public void pvChanged(PVReaderEvent<Graph2DResult> event) { setLastError(event.getPvReader().lastException()); if (event.getPvReader().getValue() != null) { BufferedImage image = ValueUtil.toImage(event.getPvReader().getValue().getImage()); imagePanels.get(i).setImage(image); } } })
@Override public void pvChanged(PVReaderEvent<VNumber> event) { VNumber value = event.getPvReader().getValue(); if (value != null) { System.out.println(value.getValue() + " " + value.getAlarmSeverity()); } } })