1222 except ValueError, e: |
1222 except ValueError, e: |
1223 raise PLCGenException, e.message |
1223 raise PLCGenException, e.message |
1224 elif isinstance(next, ContinuationClass): |
1224 elif isinstance(next, ContinuationClass): |
1225 name = next.getname() |
1225 name = next.getname() |
1226 computed_value = self.ComputedConnectors.get(name, None) |
1226 computed_value = self.ComputedConnectors.get(name, None) |
1227 if computed_value != None: |
1227 if computed_value is not None: |
1228 paths.append(str(computed_value)) |
1228 paths.append(str(computed_value)) |
1229 else: |
1229 else: |
1230 connector = None |
1230 connector = None |
1231 for instance in body.getcontentInstances(): |
1231 for instance in body.getcontentInstances(): |
1232 if isinstance(instance, ConnectorClass) and instance.getname() == name: |
1232 if isinstance(instance, ConnectorClass) and instance.getname() == name: |
1585 |
1585 |
1586 def ComputeSFCTransition(self, transition): |
1586 def ComputeSFCTransition(self, transition): |
1587 if transition in self.SFCNetworks["Transitions"].keys(): |
1587 if transition in self.SFCNetworks["Transitions"].keys(): |
1588 transition_infos = self.SFCNetworks["Transitions"].pop(transition) |
1588 transition_infos = self.SFCNetworks["Transitions"].pop(transition) |
1589 self.Program += [("%sTRANSITION" % self.CurrentIndent, ())] |
1589 self.Program += [("%sTRANSITION" % self.CurrentIndent, ())] |
1590 if transition_infos["priority"] != None: |
1590 if transition_infos["priority"] is not None: |
1591 self.Program += [(" (PRIORITY := ", ()), |
1591 self.Program += [(" (PRIORITY := ", ()), |
1592 ("%d" % transition_infos["priority"], (self.TagName, "transition", transition_infos["id"], "priority")), |
1592 ("%d" % transition_infos["priority"], (self.TagName, "transition", transition_infos["id"], "priority")), |
1593 (")", ())] |
1593 (")", ())] |
1594 self.Program += [(" FROM ", ())] |
1594 self.Program += [(" FROM ", ())] |
1595 if len(transition_infos["from"]) > 1: |
1595 if len(transition_infos["from"]) > 1: |
1643 for var_type, var_name, var_address, var_initial in variables: |
1643 for var_type, var_name, var_address, var_initial in variables: |
1644 program += [(" ", ())] |
1644 program += [(" ", ())] |
1645 if var_name: |
1645 if var_name: |
1646 program += [(var_name, (self.TagName, variable_type, var_number, "name")), |
1646 program += [(var_name, (self.TagName, variable_type, var_number, "name")), |
1647 (" ", ())] |
1647 (" ", ())] |
1648 if var_address != None: |
1648 if var_address is not None: |
1649 program += [("AT ", ()), |
1649 program += [("AT ", ()), |
1650 (var_address, (self.TagName, variable_type, var_number, "location")), |
1650 (var_address, (self.TagName, variable_type, var_number, "location")), |
1651 (" ", ())] |
1651 (" ", ())] |
1652 program += [(": ", ()), |
1652 program += [(": ", ()), |
1653 (var_type, (self.TagName, variable_type, var_number, "type"))] |
1653 (var_type, (self.TagName, variable_type, var_number, "type"))] |
1654 if var_initial != None: |
1654 if var_initial is not None: |
1655 program += [(" := ", ()), |
1655 program += [(" := ", ()), |
1656 (self.ParentGenerator.ComputeValue(var_initial, var_type), (self.TagName, variable_type, var_number, "initial value"))] |
1656 (self.ParentGenerator.ComputeValue(var_initial, var_type), (self.TagName, variable_type, var_number, "initial value"))] |
1657 program += [(";\n", ())] |
1657 program += [(";\n", ())] |
1658 var_number += 1 |
1658 var_number += 1 |
1659 program += [(" END_VAR\n", ())] |
1659 program += [(" END_VAR\n", ())] |