@Override public Object calculate(final List<Object> args) { if (NullUtils.containsNull(args)) { return null; } VNumberArray array = (VNumberArray) args.get(0); if (array.getSizes().size() != args.size() - 1) { throw new IllegalArgumentException("Dimension of the array must match the number of ListNumberProvider"); } List<ArrayDimensionDisplay> dimDisplay = new ArrayList<>(); for (int i = 1; i < args.size(); i++) { ListNumberProvider numberGenerator = (ListNumberProvider) args.get(i); dimDisplay.add(ValueFactory.newDisplay(numberGenerator.createListNumber(array.getSizes().getInt(i-1) + 1), "")); } return ValueFactory.newVNumberArray(array.getData(), array.getSizes(), dimDisplay, array, array, array); }
@Override public final Object calculate(List<Object> args) { if (NullUtils.containsNull(args)) { return null; } VNumberArray arg1 = (VNumberArray) args.get(0); VNumber arg2 = (VNumber) args.get(1); return newVNumberArray( calculate(arg1.getData(), arg2.getValue().doubleValue()), ValueUtil.highestSeverityOf(args, false), ValueUtil.latestValidTimeOrNowOf(args), displayNone()); }
@Override public Object calculate(final List<Object> args) { if (NullUtils.containsNull(args)) { return null; } VNumberArray arg1 = (VNumberArray) args.get(0); VNumber arg2 = (VNumber) args.get(1); VNumber arg3 = (VNumber) args.get(2); return newVNumberArray( ListMath.rescale(arg1.getData(), arg2.getValue().doubleValue(), arg3.getValue().doubleValue()), ValueUtil.highestSeverityOf(args, false), ValueUtil.latestValidTimeOrNowOf(args), displayNone()); } }
@Override public final Object calculate(List<Object> args) { if (NullUtils.containsNull(args)) { return null; } VNumber arg1 = (VNumber) args.get(0); VNumberArray arg2 = (VNumberArray) args.get(1); return newVNumberArray( calculate(arg1.getValue().doubleValue(), arg2.getData()), ValueUtil.highestSeverityOf(args, false), ValueUtil.latestValidTimeOrNowOf(args), displayNone()); }
@Override public Object calculate(List<Object> args) { if (NullUtils.containsNull(args)) { return null; } VNumberArray numberArray = (VNumberArray) args.get(0); int fromIndex = ((VNumber) args.get(1)).getValue().intValue(); int toIndex = ((VNumber) args.get(2)).getValue().intValue(); return newVNumberArray( ListMath.limit(numberArray.getData(), fromIndex, toIndex), ValueUtil.highestSeverityOf(args, false), ValueUtil.latestValidTimeOrNowOf(args), displayNone()); }
@Override public final Object calculate(List<Object> args) { if (NullUtils.containsNull(args)) { return null; } VNumberArray arg1 = (VNumberArray) args.get(0); VNumberArray arg2 = (VNumberArray) args.get(1); return newVNumberArray( calculate(arg1.getData(), arg2.getData()), ValueUtil.highestSeverityOf(args, false), ValueUtil.latestValidTimeOrNowOf(args), displayNone()); }
@Override public Object calculate(List<Object> args) { if (NullUtils.containsNull(args)) { return null; } VNumberArray numberArray = (VNumberArray) args.get(0); double min = numberArray.getDimensionDisplay().get(0).getCellBoundaries().getDouble(0); double max = numberArray.getDimensionDisplay().get(0).getCellBoundaries().getDouble(numberArray.getSizes().getInt(0)); return newVNumberArray( new ArrayDouble(min, max), ValueUtil.highestSeverityOf(args, false), ValueUtil.latestValidTimeOrNowOf(args), displayNone()); }
return ValueFactory.newVNumberArray(array.getData(), array.getSizes(), Arrays.asList(ValueFactory.newDisplay(VTableFactory.range(lowerRange.getValue().doubleValue(), upperRange.getValue().doubleValue()).createListNumber(array.getSizes().getInt(0)+1), "")), array, array, array);
return ValueFactory.newVNumberArray(data, new ArrayInt(sizes), dimensionDisplay, atd, atd, atd);
static VNumberArray toVNumberArray(JsonObject json) { VTypeJsonMapper mapper = new VTypeJsonMapper(json); ListNumber value; switch(mapper.getTypeName()) { case "VDoubleArray": value = mapper.getListDouble("value"); break; case "VFloatArray": value = mapper.getListFloat("value"); break; case "VLongArray": value = mapper.getListLong("value"); break; case "VIntArray": value = mapper.getListInt("value"); break; case "VShortArray": value = mapper.getListShort("value"); break; case "VByteArray": value = mapper.getListByte("value"); break; default: throw new UnsupportedOperationException("Not implemented yet"); } return newVNumberArray(value, mapper.getAlarm(), mapper.getTime(), mapper.getDisplay()); }
previousXRange = xRange; previousValue = numberArray; previousResult = newVNumberArray(new ArrayInt(binData), new ArrayInt(nBins), Arrays.asList(newDisplay(xBoundaries, unit)), numberArray, numberArray, newDisplay(0.0, 0.0, 0.0, "count", NumberFormats.format(0), maxCount, maxCount, maxCount, Double.NaN, Double.NaN));
previousXData = xData; previousYData = yData; previousResult = newVNumberArray(new ArrayInt(binData), new ArrayInt(nYBins, nXBins), Arrays.asList(newDisplay(yBoundaries, ""), newDisplay(xBoundaries, "")), alarmNone(), timeNow(), newDisplay(0.0, 0.0, 0.0, "count", NumberFormats.format(0), maxCount, maxCount, maxCount, Double.NaN, Double.NaN));
return ValueFactory.newVNumberArray(new ListDouble() {
return ValueFactory.newVNumberArray(data, ValueUtil.highestSeverityOf(args, false), ValueUtil.latestValidTimeOrNowOf(args),