PLCGenerator.py
changeset 1766 c1e5b9f19483
parent 1765 ccf59c1f0b45
child 1767 c74815729afd
equal deleted inserted replaced
1765:ccf59c1f0b45 1766:c1e5b9f19483
   715             for instance in body.getcontentInstances():
   715             for instance in body.getcontentInstances():
   716                 if isinstance(instance, (InVariableClass, OutVariableClass,
   716                 if isinstance(instance, (InVariableClass, OutVariableClass,
   717                                          InOutVariableClass)):
   717                                          InOutVariableClass)):
   718                     expression = instance.getexpression()
   718                     expression = instance.getexpression()
   719                     var_type = self.GetVariableType(expression)
   719                     var_type = self.GetVariableType(expression)
   720                     if (isinstance(pou, TransitionObjClass)
   720                     if isinstance(pou, TransitionObjClass) and expression == pou.getname():
   721                         and expression == pou.getname()):
       
   722                         var_type = "BOOL"
   721                         var_type = "BOOL"
   723                     elif (not isinstance(pou, (TransitionObjClass, ActionObjClass)) and
   722                     elif (not isinstance(pou, (TransitionObjClass, ActionObjClass)) and
   724                           pou.getpouType() == "function" and expression == pou.getname()):
   723                           pou.getpouType() == "function" and expression == pou.getname()):
   725                         returntype_content = pou.interface.getreturnType().getcontent()
   724                         returntype_content = pou.interface.getreturnType().getcontent()
   726                         returntype_content_type = returntype_content.getLocalTag()
   725                         returntype_content_type = returntype_content.getLocalTag()
  1156                         if output_parameter != "ENO":
  1155                         if output_parameter != "ENO":
  1157                             output_idx = output_names.index(output_parameter)
  1156                             output_idx = output_names.index(output_parameter)
  1158         else:
  1157         else:
  1159             for i, variable in enumerate(output_variables):
  1158             for i, variable in enumerate(output_variables):
  1160                 blockPointx, blockPointy = variable.connectionPointOut.getrelPositionXY()
  1159                 blockPointx, blockPointy = variable.connectionPointOut.getrelPositionXY()
  1161                 if (connectionPoint is None or
  1160                 if connectionPoint is None or \
  1162                     block.getx() + blockPointx == connectionPoint.getx() and
  1161                    block.getx() + blockPointx == connectionPoint.getx() and \
  1163                     block.gety() + blockPointy == connectionPoint.gety()):
  1162                    block.gety() + blockPointy == connectionPoint.gety():
  1164                     output_variable = variable
  1163                     output_variable = variable
  1165                     output_parameter = variable.getformalParameter()
  1164                     output_parameter = variable.getformalParameter()
  1166                     output_idx = i
  1165                     output_idx = i
  1167 
  1166 
  1168         if output_variable is not None:
  1167         if output_variable is not None: