diff -r c02818d7e29f -r 7e61baa047f0 PLCGenerator.py --- a/PLCGenerator.py Mon Aug 14 22:30:41 2017 +0300 +++ b/PLCGenerator.py Mon Aug 14 23:27:15 2017 +0300 @@ -45,8 +45,9 @@ "VAR_INOUT": "var_inout", } -# Helper function for reindenting text + def ReIndentText(text, nb_spaces): + """ Helper function for reindenting text """ compute = "" lines = text.splitlines() if len(lines) > 0: @@ -67,6 +68,7 @@ compute += "\n" return compute + def SortInstances(a, b): ax, ay = int(a.getx()), int(a.gety()) bx, by = int(b.getx()), int(b.gety()) @@ -75,8 +77,9 @@ else: return cmp(ay, by) -# Helper for emulate join on element list + def JoinList(separator, mylist): + """ Helper for emulate join on element list """ if len(mylist) > 0 : return reduce(lambda x, y: x + separator + y, mylist) else : @@ -500,6 +503,7 @@ TransitionObjClass = PLCOpenParser.GetElementClass("transition", "transitions") ActionObjClass = PLCOpenParser.GetElementClass("action", "actions") + class PouProgramGenerator: # Create a new POU program generator @@ -1658,6 +1662,7 @@ program += [("END_%s\n\n" % self.Type, ())] return program + def GenerateCurrentProgram(controler, project, errors, warnings): generator = ProgramGenerator(controler, project, errors, warnings) generator.GenerateProgram()