private CodeExportMode writeModeFrom(FormulaExportMode formulaExportMode) { return(EnumHelper.ParseValue <CodeExportMode>(formulaExportMode.ToString())); }
public void ExportCppCode(IModelCoreSimulation modelCoreSimulation, string outputFolder, FormulaExportMode formulaExportMode) { exportToCode(modelCoreSimulation, outputFolder, formulaExportMode, CodeExportLanguage.Cpp); }
private void exportToCode(IModelCoreSimulation modelCoreSimulation, string outputFolder, FormulaExportMode formulaExportMode, CodeExportLanguage codeExportLanguage) { if (!Directory.Exists(outputFolder)) { Directory.CreateDirectory(outputFolder); } var simModelXml = ExportSimModelXml(modelCoreSimulation, SimModelExportMode.Full); var simModelSimulation = new Simulation(); //SimModel optionally caches XML used for loading a simulation as string. //This XML string was used e.g. by the old Matlab-/R-Toolbox when saving a simulation to XML. //C++ export also depends on the original XML string at the moment (not quite clear why). //Because per default XML is NOT cached, we need to set the KeepXML-option to true BEFORE loading a simulation. if (codeExportLanguage == CodeExportLanguage.Cpp) { simModelSimulation.Options.KeepXMLNodeAsString = true; } simModelSimulation.LoadFromXMLString(simModelXml); simModelSimulation.ExportToCode(outputFolder, codeExportLanguage, writeModeFrom(formulaExportMode)); }
public void ExportODEForMatlab(IModelCoreSimulation modelCoreSimulation, string outputFolder, FormulaExportMode formulaExportMode) { exportToCode(modelCoreSimulation, outputFolder, formulaExportMode, CodeExportLanguage.Matlab); }