2022-06-26 09:15:18 -07:00
|
|
|
package com.rusefi.can;
|
|
|
|
|
2022-09-12 16:59:10 -07:00
|
|
|
import com.rusefi.can.reader.ReaderType;
|
2022-06-26 09:15:18 -07:00
|
|
|
import com.rusefi.can.reader.dbc.DbcFile;
|
2022-11-12 09:29:20 -08:00
|
|
|
import com.rusefi.mlv.LoggingStrategy;
|
2022-06-26 09:15:18 -07:00
|
|
|
|
|
|
|
import java.io.IOException;
|
2022-06-26 09:54:11 -07:00
|
|
|
import java.util.List;
|
2022-06-26 09:15:18 -07:00
|
|
|
|
2022-09-12 16:59:10 -07:00
|
|
|
import static com.rusefi.can.reader.CANLineReader.getReader;
|
|
|
|
|
2022-06-26 09:15:18 -07:00
|
|
|
public class TrcToMlq {
|
2022-11-10 15:12:02 -08:00
|
|
|
public static ReaderType parseCurrentReaderTypeSetting() {
|
2024-02-09 18:25:39 -08:00
|
|
|
String property = System.getProperty("TRACE_READER", ReaderType.AUTO.name());
|
2022-09-12 23:26:02 -07:00
|
|
|
ReaderType readerType = ReaderType.valueOf(property);
|
|
|
|
System.out.println("getCurrentReaderType: " + readerType + " for [" + property + "]");
|
|
|
|
return readerType;
|
2022-09-12 16:59:10 -07:00
|
|
|
}
|
|
|
|
|
2022-06-26 09:15:18 -07:00
|
|
|
public static void main(String[] args) throws IOException {
|
2022-08-26 17:11:21 -07:00
|
|
|
LoggingStrategy.LOG_ONLY_TRANSLATED_FIELDS = true;
|
|
|
|
|
|
|
|
if (args.length == 3) {
|
|
|
|
String dbcFileName = args[0];
|
|
|
|
String inputFolder = args[1];
|
2022-08-26 18:23:03 -07:00
|
|
|
String outputFolder = args[2];
|
2022-11-10 05:14:49 -08:00
|
|
|
ConvertTrcToMegaLogViewerWithDBC.doJob(dbcFileName, inputFolder, outputFolder);
|
2022-08-26 17:11:21 -07:00
|
|
|
} else if (args.length != 2) {
|
2022-09-16 13:20:58 -07:00
|
|
|
System.err.println("Two or three arguments expected:");
|
|
|
|
System.err.println(" either");
|
|
|
|
System.err.println("fileName.DBC traceFile.name");
|
|
|
|
System.err.println(" it would output to gauges.mlg");
|
|
|
|
System.err.println(" or");
|
|
|
|
System.err.println("fileName.DBC tracesInputFolder outputFolder");
|
|
|
|
System.err.println("");
|
|
|
|
System.err.println("");
|
|
|
|
System.err.println("By default PCAN format is used");
|
|
|
|
System.err.println("For can hacker format:");
|
|
|
|
System.err.println(" java -DTRACE_READER=CANHACKER");
|
2022-06-26 09:15:18 -07:00
|
|
|
System.exit(-1);
|
2022-08-26 17:11:21 -07:00
|
|
|
} else {
|
|
|
|
String dbcFileName = args[0];
|
|
|
|
String inputFileName = args[1];
|
2022-06-26 09:15:18 -07:00
|
|
|
|
2022-08-26 17:11:21 -07:00
|
|
|
DbcFile dbc = DbcFile.readFromFile(dbcFileName);
|
2022-06-26 09:15:18 -07:00
|
|
|
|
2022-09-12 16:59:10 -07:00
|
|
|
List<CANPacket> packets = getReader().readFile(inputFileName);
|
2022-06-26 09:54:11 -07:00
|
|
|
|
2022-08-26 17:11:21 -07:00
|
|
|
String outputFileName = System.getProperty("mlq_file_name", "gauges.mlg");
|
|
|
|
LoggingStrategy.writeLog(dbc, packets, outputFileName);
|
|
|
|
}
|
2022-06-26 09:15:18 -07:00
|
|
|
}
|
|
|
|
}
|