diff --git a/java_console/ui/src/main/java/com/rusefi/sensor_logs/BinarySensorLog.java b/java_console/ui/src/main/java/com/rusefi/sensor_logs/BinarySensorLog.java new file mode 100644 index 0000000000..93db134426 --- /dev/null +++ b/java_console/ui/src/main/java/com/rusefi/sensor_logs/BinarySensorLog.java @@ -0,0 +1,72 @@ +package com.rusefi.sensor_logs; + +import com.rusefi.FileLog; +import com.rusefi.core.Sensor; + +import java.io.*; + +public class BinarySensorLog extends SensorLog { + private BufferedWriter stream; + + public static void main(String[] args) { + BinarySensorLog l = new BinarySensorLog(); + l.writeSensorLogLine(); + } + + @Override + public double getSecondsSinceFileStart() { + throw new UnsupportedOperationException(); + } + + @Override + void writeSensorLogLine() { + if (stream == null) { + FileLog.createFolderIfNeeded(); + String fileName = FileLog.DIR + "rusEFI_gauges_" + FileLog.getDate() + ".mlg"; + + try { + stream = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileName))); + } catch (IOException e) { + e.printStackTrace(); + stream = null; + } + + try { + for (char c : "MLVLG\0".toCharArray()) { + stream.write(c); + } + stream.write(0); + stream.write(1); + + + for (Sensor sensor : SensorLogger.SENSORS) { + String name = SensorLogger.getSensorName(sensor, 0); + String unit = sensor.getUnits(); + + writeLine(stream, name, 34); + writeLine(stream, unit, 11); + + stream.write(0); + stream.write(0); + stream.write(0); + stream.write(0); + + + } + + stream.close(); + + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + private void writeLine(BufferedWriter stream, String name, int length) throws IOException { + for (int i = 0; i < name.length(); i++) { + stream.write(name.charAt(i)); + } + for (int i = name.length(); i < length; i++) + stream.write(0); + } +} diff --git a/java_console/ui/src/main/java/com/rusefi/sensor_logs/PlainTextSensorLog.java b/java_console/ui/src/main/java/com/rusefi/sensor_logs/PlainTextSensorLog.java index c719b3ce56..7c287bc1d2 100644 --- a/java_console/ui/src/main/java/com/rusefi/sensor_logs/PlainTextSensorLog.java +++ b/java_console/ui/src/main/java/com/rusefi/sensor_logs/PlainTextSensorLog.java @@ -15,7 +15,7 @@ import java.io.IOException; import java.io.Writer; public class PlainTextSensorLog extends SensorLog { - Writer logFile; + private Writer logFile; private long fileStartTime;