@@ -989,13 +989,13 @@ template simulationFile_inl(SimCode simCode)
989989 >>
990990end simulationFile_inl;
991991
992- template simulationFile(SimCode simCode, String guid, Boolean isModelExchangeFMU)
992+ template simulationFile(SimCode simCode, String guid, String isModelExchangeFMU)
993993 "Generates code for main C file for simulation target."
994994::=
995995 match simCode
996996 case simCode as SIMCODE(modelInfo=MODELINFO(varInfo=varInfo as VARINFO(__)), hpcomData=HPCOMDATA(__)) then
997997 let modelNamePrefixStr = modelNamePrefix(simCode)
998- let mainInit = if boolOr(isModelExchangeFMU, boolOr(Flags.isSet(Flags.PARMODAUTO), Flags.isSet(HPCOM))) then
998+ let mainInit = if boolOr(boolNot(stringEq("", isModelExchangeFMU)) , boolOr(Flags.isSet(Flags.PARMODAUTO), Flags.isSet(HPCOM))) then
999999 <<
10001000 mmc_init_nogc();
10011001 omc_alloc_interface = omc_alloc_interface_pooled;
@@ -1024,7 +1024,7 @@ template simulationFile(SimCode simCode, String guid, Boolean isModelExchangeFMU
10241024 <%simulationFileHeader(simCode.fileNamePrefix)%>
10251025 #include "simulation/solver/events.h"
10261026
1027- <% if boolNot( isModelExchangeFMU) then
1027+ <% if stringEq("", isModelExchangeFMU) then
10281028 <<
10291029 #define prefixedName_performSimulation <%symbolName(modelNamePrefixStr,"performSimulation")%>
10301030 #define prefixedName_updateContinuousSystem <%symbolName(modelNamePrefixStr,"updateContinuousSystem")%>
@@ -1139,7 +1139,7 @@ template simulationFile(SimCode simCode, String guid, Boolean isModelExchangeFMU
11391139 return 1;
11401140 }
11411141
1142- <% if boolNot( isModelExchangeFMU) then
1142+ <% if stringEq("", isModelExchangeFMU) then
11431143 <<
11441144 #if defined(threadData)
11451145 #undef threadData
@@ -1183,7 +1183,7 @@ template simulationFileHeader(String fileNamePrefix)
11831183 >>
11841184end simulationFileHeader;
11851185
1186- template populateModelInfo(ModelInfo modelInfo, String fileNamePrefix, String guid, DelayedExpression delayed, Boolean isModelExchangeFMU)
1186+ template populateModelInfo(ModelInfo modelInfo, String fileNamePrefix, String guid, DelayedExpression delayed, String isModelExchangeFMU)
11871187 "Generates information for data.modelInfo struct."
11881188::=
11891189 match modelInfo
@@ -1195,7 +1195,8 @@ template populateModelInfo(ModelInfo modelInfo, String fileNamePrefix, String gu
11951195 data->modelData->resultFileName = NULL;
11961196 data->modelData->modelDir = "<%directory%>";
11971197 data->modelData->modelGUID = "{ <% guid%> } ";
1198- <% if isModelExchangeFMU then
1198+ <% match isModelExchangeFMU
1199+ case "1.0" then
11991200 <<
12001201 data->modelData->initXMLData = NULL;
12011202 data->modelData->modelDataXml.infoXMLData =
@@ -1206,7 +1207,7 @@ template populateModelInfo(ModelInfo modelInfo, String fileNamePrefix, String gu
12061207 #endif
12071208 ;
12081209 >>
1209- else
1210+ case "" then
12101211 <<
12111212 #if defined(OPENMODELICA_XML_FROM_FILE_AT_RUNTIME)
12121213 data->modelData->initXMLData = NULL;
@@ -1235,6 +1236,11 @@ template populateModelInfo(ModelInfo modelInfo, String fileNamePrefix, String gu
12351236 #endif /* defined(_MSC_VER) */
12361237 #endif /* defined(OPENMODELICA_XML_FROM_FILE_AT_RUNTIME) */
12371238 >>
1239+ else
1240+ <<
1241+ data->modelData->initXMLData = NULL;
1242+ data->modelData->modelDataXml.infoXMLData = NULL;
1243+ >>
12381244 %>
12391245
12401246 data->modelData->nStates = <%varInfo.numStateVars%>;
@@ -1260,7 +1266,11 @@ template populateModelInfo(ModelInfo modelInfo, String fileNamePrefix, String gu
12601266 data->modelData->nRelations = <%varInfo.numRelations%>;
12611267 data->modelData->nMathEvents = <%varInfo.numMathEventFunctions%>;
12621268 data->modelData->nExtObjs = <%varInfo.numExternalObjects%>;
1263- data->modelData->modelDataXml.fileName = "<%fileNamePrefix%>_info.json";
1269+ <% match isModelExchangeFMU
1270+ case "1.0" then "data->modelData->modelDataXml.fileName = NULL;"
1271+ case "" then 'data->modelData->modelDataXml.fileName = "<%fileNamePrefix%>_info.json";'
1272+ else 'GC_asprintf(&data->modelData->modelDataXml.fileName, "%s/<%fileNamePrefix%>_info.json", data->modelData->resourcesDir);'
1273+ %>
12641274 data->modelData->modelDataXml.modelInfoXmlLength = 0;
12651275 data->modelData->modelDataXml.nFunctions = <%listLength(functions)%>;
12661276 data->modelData->modelDataXml.nProfileBlocks = 0;
@@ -1285,7 +1295,7 @@ template populateModelInfo(ModelInfo modelInfo, String fileNamePrefix, String gu
12851295 end match
12861296end populateModelInfo;
12871297
1288- template functionInitializeDataStruc(ModelInfo modelInfo, String fileNamePrefix, String guid, DelayedExpression delayed, String modelNamePrefix, Boolean isModelExchangeFMU)
1298+ template functionInitializeDataStruc(ModelInfo modelInfo, String fileNamePrefix, String guid, DelayedExpression delayed, String modelNamePrefix, String isModelExchangeFMU)
12891299 "Generates function in simulation file."
12901300::=
12911301 <<
0 commit comments