diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 3ed0dd0302..e1af853833 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -44,7 +44,6 @@ ! all the sub-structures are going to be nested within the primary structure, that's ! needed to get a proper TunerStudio file - struct persistent_config_s struct_no_prefix engine_configuration_s diff --git a/java_tools/ConfigDefinition.jar b/java_tools/ConfigDefinition.jar index 8a839018d1..5563da07d4 100644 Binary files a/java_tools/ConfigDefinition.jar and b/java_tools/ConfigDefinition.jar differ diff --git a/java_tools/configuration_definition/src/com/rusefi/ConfigStructure.java b/java_tools/configuration_definition/src/com/rusefi/ConfigStructure.java index cf86eb5fbe..9cb7a45b47 100644 --- a/java_tools/configuration_definition/src/com/rusefi/ConfigStructure.java +++ b/java_tools/configuration_definition/src/com/rusefi/ConfigStructure.java @@ -25,7 +25,7 @@ public class ConfigStructure { public final List cFields = new ArrayList<>(); public final List tsFields = new ArrayList<>(); - public int totalSize; + private int totalSize; public final BitState readingBitState = new BitState(); @@ -97,4 +97,8 @@ public class ConfigStructure { } readingBitState.reset(); } + + public int getTotalSize() { + return totalSize; + } } diff --git a/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java b/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java index f10fe2d16e..2425f12c9a 100644 --- a/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java +++ b/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java @@ -21,7 +21,7 @@ public class TypesHelper { if (type == null) return 0; if (state != null && state.structures.containsKey(type)) - return state.structures.get(type).totalSize; + return state.structures.get(type).getTotalSize(); if (state != null && state.tsCustomSize.containsKey(type)) return state.tsCustomSize.get(type); Integer primitiveSize = getPrimitiveSize(type); diff --git a/java_tools/configuration_definition/src/com/rusefi/output/TSProjectConsumer.java b/java_tools/configuration_definition/src/com/rusefi/output/TSProjectConsumer.java index ec012fbc53..6477a855f1 100644 --- a/java_tools/configuration_definition/src/com/rusefi/output/TSProjectConsumer.java +++ b/java_tools/configuration_definition/src/com/rusefi/output/TSProjectConsumer.java @@ -210,6 +210,7 @@ public class TSProjectConsumer implements ConfigurationConsumer { @Override public void handleEndStruct(ConfigStructure structure) throws IOException { + VariableRegistry.INSTANCE.register(structure.name + "_size", structure.getTotalSize()); if (state.stack.isEmpty()) { totalTsSize = writeTunerStudio(structure, "", tsWriter, 0); tsWriter.write("; total TS size = " + totalTsSize + EOL);