Skip to content

Commit

Permalink
Fixed Presized Arrays.
Browse files Browse the repository at this point in the history
  • Loading branch information
JulianFeinauer committed Sep 27, 2018
1 parent 5bae276 commit d02b88e
Showing 1 changed file with 9 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -489,53 +489,53 @@ private PlcResponse decodeReadResponse(S7ResponseMessage responseMessage, PlcReq
break;
}
case USINT: {
Long[] longs = readAllValues(field, i -> (long)data.readUnsignedByte()).toArray(new Long[0()]);
Long[] longs = readAllValues(field, i -> (long)data.readUnsignedByte()).toArray(new Long[0]);
fieldItem = new S7IntegerFieldItem(field.getDataType(), longs);
break;
}
// 16 bit:
case INT: {
Long[] longs = readAllValues(field, i -> (long)data.readShort()).toArray(new Long[0()]);
Long[] longs = readAllValues(field, i -> (long)data.readShort()).toArray(new Long[0]);
fieldItem = new S7IntegerFieldItem(field.getDataType(), longs);
break;
}
case UINT: {
Long[] longs = readAllValues(field, i -> (long)data.readUnsignedShort()).toArray(new Long[0()]);
Long[] longs = readAllValues(field, i -> (long)data.readUnsignedShort()).toArray(new Long[0]);
fieldItem = new S7IntegerFieldItem(field.getDataType(), longs);
break;
}
// 32 bit:
case DINT: {
Long[] longs = readAllValues(field, i -> (long)data.readInt()).toArray(new Long[0()]);
Long[] longs = readAllValues(field, i -> (long)data.readInt()).toArray(new Long[0]);
fieldItem = new S7IntegerFieldItem(field.getDataType(), longs);
break;
}
case UDINT: {
Long[] longs = readAllValues(field, i -> data.readUnsignedInt()).toArray(new Long[0()]);
Long[] longs = readAllValues(field, i -> data.readUnsignedInt()).toArray(new Long[0]);
fieldItem = new S7IntegerFieldItem(field.getDataType(), longs);
break;
}
// 64 bit:
case LINT: {
BigInteger[] bigIntegers = readAllValues(field, i -> readSigned64BitInteger(data)).toArray(new BigInteger[0()]);
BigInteger[] bigIntegers = readAllValues(field, i -> readSigned64BitInteger(data)).toArray(new BigInteger[0]);
fieldItem = new S7BigIntegerFieldItem(field.getDataType(), bigIntegers);
break;
}
case ULINT: {
BigInteger[] bigIntegers = readAllValues(field, i -> readUnsigned64BitInteger(data)).toArray(new BigInteger[0()]);
BigInteger[] bigIntegers = readAllValues(field, i -> readUnsigned64BitInteger(data)).toArray(new BigInteger[0]);
fieldItem = new S7BigIntegerFieldItem(field.getDataType(), bigIntegers);
break;
}
// -----------------------------------------
// Floating point values
// -----------------------------------------
case REAL: {
Double[] doubles = readAllValues(field, i -> (double)data.readFloat()).toArray(new Double[0()]);
Double[] doubles = readAllValues(field, i -> (double)data.readFloat()).toArray(new Double[0]);
fieldItem = new S7FloatingPointFieldItem(field.getDataType(), doubles);
break;
}
case LREAL: {
Double[] doubles = readAllValues(field, i -> data.readDouble()).toArray(new Double[0()]);
Double[] doubles = readAllValues(field, i -> data.readDouble()).toArray(new Double[0]);
fieldItem = new S7FloatingPointFieldItem(field.getDataType(), doubles);
break;
}
Expand Down

0 comments on commit d02b88e

Please sign in to comment.