@Override
  public void deserialize(final ByteBuffer byteBuffer) throws IOException {
    outPutDataType = TSDataType.deserializeFrom(byteBuffer);
    switch (outPutDataType) {
      case INT32:
        intValue = ReadWriteIOUtils.readInt(byteBuffer);
        break;
      case INT64:
        longValue = ReadWriteIOUtils.readLong(byteBuffer);
        break;
      case FLOAT:
        floatValue = ReadWriteIOUtils.readFloat(byteBuffer);
        break;
      case DOUBLE:
        doubleValue = ReadWriteIOUtils.readDouble(byteBuffer);
        break;
      case TEXT:
      case BLOB:
      case BOOLEAN:
      case STRING:
      case DATE:
      case TIMESTAMP:
      default:
        throw new IOException(String.format("Unsupported output datatype %s", outPutDataType));
    }
  }
{@link AbstractSameTypeNumericOperator} is the parent class of all the operators where there
value type is the same as the input data type, the input data type is a numeric type, and the
initial value equals to the first input value.
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/processor/aggregate/operator/intermediateresult/sametype/numeric/AbstractSameTypeNumericOperator.java