plcopen/plcopen.py
changeset 1171 a506e4de8f84
parent 1142 8ded55ada6d6
child 1232 b6894285d4cc
equal deleted inserted replaced
1170:074e46cdedbc 1171:a506e4de8f84
   853             var_number += 1
   853             var_number += 1
   854     return search_result
   854     return search_result
   855 
   855 
   856 cls = PLCOpenClasses.get("configurations_configuration", None)
   856 cls = PLCOpenClasses.get("configurations_configuration", None)
   857 if cls:
   857 if cls:
       
   858     
       
   859     def addglobalVar(self, type, name, location="", description=""):
       
   860         globalvars = self.getglobalVars()
       
   861         if len(globalvars) == 0:
       
   862             globalvars.append(PLCOpenClasses["varList"]())
       
   863         var = PLCOpenClasses["varListPlain_variable"]()
       
   864         var.setname(name)
       
   865         var_type = PLCOpenClasses["dataType"]()
       
   866         if type in [x for x,y in TypeHierarchy_list if not x.startswith("ANY")]:
       
   867             if type == "STRING":
       
   868                 var_type.setcontent({"name" : "string", "value" : PLCOpenClasses["elementaryTypes_string"]()})
       
   869             elif type == "WSTRING":
       
   870                 var_type.setcontent({"name" : "wstring", "value" : PLCOpenClasses["elementaryTypes_wstring"]()})
       
   871             else:
       
   872                 var_type.setcontent({"name" : type, "value" : None})
       
   873         else:
       
   874             derived_type = PLCOpenClasses["derivedTypes_derived"]()
       
   875             derived_type.setname(type)
       
   876             var_type.setcontent({"name" : "derived", "value" : derived_type})
       
   877         var.settype(var_type)
       
   878         if location != "":
       
   879             var.setaddress(location)
       
   880         if description != "":
       
   881             ft = PLCOpenClasses["formattedText"]()
       
   882             ft.settext(description)
       
   883             var.setdocumentation(ft)
       
   884         globalvars[-1].appendvariable(var)
       
   885     setattr(cls, "addglobalVar", addglobalVar)
       
   886     
   858     def updateElementName(self, old_name, new_name):
   887     def updateElementName(self, old_name, new_name):
   859         _updateConfigurationResourceElementName(self, old_name, new_name)
   888         _updateConfigurationResourceElementName(self, old_name, new_name)
   860         for resource in self.getresource():
   889         for resource in self.getresource():
   861             resource.updateElementName(old_name, new_name)
   890             resource.updateElementName(old_name, new_name)
   862     setattr(cls, "updateElementName", updateElementName)
   891     setattr(cls, "updateElementName", updateElementName)