@Override public Object finalizeData(Object data) { return new ArrayDouble((double[]) data); } });
/** * Convert the list of arguments to a ListDouble. Returns * null if it's not possible. * * @param objects a list of arguments * @return the converted list or null */ public static ListDouble asListDouble(List<Object> objects) { double[] data = new double[objects.size()]; for (int i = 0; i < objects.size(); i++) { Object value = objects.get(i); if (value instanceof Double) { data[i] = (Double) value; } else { return null; } } return new ArrayDouble(data); }
@Override public ListDouble getData() { return new ArrayDouble(dbrValue.getDoubleValue()); }
List<ListNumber> fft = ListMath.dft(array.getData(), new ArrayDouble(new double[array.getData().size()])); final ListNumber real = fft.get(0); final ListNumber imaginary = fft.get(1);
public PVFieldToVDoubleArray(PVField field, PVStructure pvParent, boolean disconnected) { super(pvParent, disconnected); if (field instanceof PVDoubleArray) { PVDoubleArray valueField = (PVDoubleArray)field; DoubleArrayData data = new DoubleArrayData(); valueField.get(0, valueField.getLength(), data); this.size = new ArrayInt(data.data.length); this.list = new ArrayDouble(data.data); } else { size = null; list = null; } }
/** * Converts the given numeric JSON array to a ListDouble. * * @param array an array of numbers * @return a new ListDouble */ public static ListDouble toListDouble(JsonArray array) { double[] values = new double[array.size()]; for (int i = 0; i < values.length; i++) { if (array.isNull(i)) { values[i] = Double.NaN; } else { values[i] = array.getJsonNumber(i).doubleValue(); } } return new ArrayDouble(values); }
/** * A constant representing a double array. Alarm will be none, timestamp now * and no display information. * * @param values the constant values * @return a double array expression */ public static DesiredRateExpression<VDoubleArray> vConst(double... values) { return constant(newVDoubleArray(new ArrayDouble(values), alarmNone(), timeNow(), 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()); }
((PVDoubleArray) scalarArray).get(0, numCols, data); for (int i = 0; i < numCols; i++) values.add(new ArrayDouble(data.data[i]));
/** * @param pvField * @param disconnected */ public PVFieldNTHistogramToVShortArray(PVStructure pvField, boolean disconnected) { super(pvField, disconnected); PVShortArray valueField = (PVShortArray)pvField.getScalarArrayField("value", ScalarType.pvShort); if (valueField != null) { ShortArrayData data = new ShortArrayData(); valueField.get(0, valueField.getLength(), data); this.size = new ArrayInt(data.data.length); this.list = new ArrayShort(data.data); } else { size = null; list = null; } PVDoubleArray rangesField = (PVDoubleArray)pvField.getScalarArrayField("ranges", ScalarType.pvDouble); if (rangesField != null) { DoubleArrayData data = new DoubleArrayData(); rangesField.get(0, rangesField.getLength(), data); ArrayDimensionDisplay display = ValueFactory.newDisplay(new ArrayDouble(data.data), RANGES_UNIT); displays.add(display); } }
/** * @param pvField * @param disconnected */ public PVFieldNTHistogramToVLongArray(PVStructure pvField, boolean disconnected) { super(pvField, disconnected); PVLongArray valueField = (PVLongArray)pvField.getScalarArrayField("value", ScalarType.pvLong); if (valueField != null) { LongArrayData data = new LongArrayData(); valueField.get(0, valueField.getLength(), data); this.size = new ArrayInt(data.data.length); this.list = new ArrayLong(data.data); } else { size = null; list = null; } PVDoubleArray rangesField = (PVDoubleArray)pvField.getScalarArrayField("ranges", ScalarType.pvDouble); if (rangesField != null) { DoubleArrayData data = new DoubleArrayData(); rangesField.get(0, rangesField.getLength(), data); ArrayDimensionDisplay display = ValueFactory.newDisplay(new ArrayDouble(data.data), RANGES_UNIT); displays.add(display); } }
if (data.getSizes().size() == 1) { this.xBoundaries = data.getDimensionDisplay().get(0).getCellBoundaries(); this.yBoundaries = new ArrayDouble(0, 1); this.array2D = new Array2DDouble(new ArrayInt(1, xBoundaries.size() - 1), false, data.getDimensionDisplay().get(0).isReversed()); } else if (data.getSizes().size() == 2) {
/** * @param pvField * @param disconnected */ public PVFieldNTHistogramToVIntArray(PVStructure pvField, boolean disconnected) { super(pvField, disconnected); PVIntArray valueField = (PVIntArray)pvField.getScalarArrayField("value", ScalarType.pvInt); if (valueField != null) { IntArrayData data = new IntArrayData(); valueField.get(0, valueField.getLength(), data); this.size = new ArrayInt(data.data.length); this.list = new ArrayInt(data.data); } else { size = null; list = null; } PVDoubleArray rangesField = (PVDoubleArray)pvField.getScalarArrayField("ranges", ScalarType.pvDouble); if (rangesField != null) { DoubleArrayData data = new DoubleArrayData(); rangesField.get(0, rangesField.getLength(), data); ArrayDimensionDisplay display = ValueFactory.newDisplay(new ArrayDouble(data.data), RANGES_UNIT); displays.add(display); } }
return new ArrayDouble(data.data, readOnly);