public void TestMethod1() { const string filename = @"c:\Users\dim\Projects\fb2smv\tests\full_fb\fb\pnp\PNP_PLANT_MS_CONTROL_FOR_SMV.fbt"; FBClassParcer parcer = new FBClassParcer(del, s); parcer.ParseRecursive(filename, del); List <ExecutionModel> executionModels = ExecutionModelsList.Generate(parcer, true); Settings settings = new Settings(); SmvCodeGenerator translator = new SmvCodeGenerator(parcer.Storage, executionModels, settings, del); foreach (string fbSmv in translator.TranslateAll()) { Tester.Test(fbSmv); } }
private void loadFbSystem(string filename) { try { _parcer.ParseRecursive(filename, ShowMessage); } catch (Exception exception) { Program.ErrorMessage(exception.Message); return; } //fillTreeView(); var compositeBlocks = _parcer.Storage.Types.Where((fbType) => fbType.Type == FBClass.Composite); bool solveDispatchingProblem = true; //_dispatchers = DispatchersCreator.Create(compositeBlocks, _parcer.Storage.Instances, solveDispatchingProblem); _executionModels = ExecutionModelsList.Generate(_parcer, solveDispatchingProblem); }
private static void Main(string[] args) { var filename = args[0]; var settings = new Settings(); var parser = new FBClassParcer(Console.WriteLine, settings); parser.ParseRecursive(filename, Console.WriteLine); var executionModels = ExecutionModelsList.Generate(parser, true); var translator = new SmvCodeGenerator(parser.Storage, executionModels, settings, Console.WriteLine); var outFileName = Path.Combine(Path.GetDirectoryName(filename), Path.GetFileNameWithoutExtension(filename) + ".smv"); var wr = new StreamWriter(outFileName); foreach (var fbSmv in translator.TranslateAll()) { wr.Write(fbSmv + "\n"); } wr.Close(); }