public ProcessStateVisualization(ProcessSystem ast, BaseFormatter formatter) { _ast = ast; _formatter = formatter; foreach (ProcessDefinition pd in _ast.ChildNodes) { _procConstants.Add(pd.Name, pd.Process); } }
private static void CheckPrintout(CompileOptions options, ProcessSystem system) { //Check whether we want to print out a formatted version of the source if (options["p"] != "") { string format = options["p"]; BaseFormatter formatter = null; if (format.ToLower() == "html") { formatter = new BaseFormatter(); } else if (format.ToLower() == "latex" || format.ToLower() == "tex") { format = "tex"; formatter = new LaTeXFormatter(); } else if (format.ToLower() == "txt" || format.ToLower() == "ccs") { format = "formatted_ccs"; //So we don't overwrite the original file... formatter = new BaseFormatter(); } else { DieIf(true, "Format for /print options must be one of ccs,html,latex"); } formatter.Start(system); string result = formatter.GetFormatted(); string filename = Path.ChangeExtension(options.OutputFile, format); File.WriteAllText(filename, result); Console.WriteLine("Formatted source written to {0}", filename); } }