tests/python/python@py_ext/pyfile.xml
branch1.1 Korean release
changeset 1280 72a826dfcfbb
parent 1145 203f4eff3313
child 1401 611fded24ce4
equal deleted inserted replaced
977:c8e008b8cefe 1280:72a826dfcfbb
       
     1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
       
     2 <PyFile>
       
     3   <variables>
       
     4     <variable name="Test_Python_Var" type="INT" initial="4"/>
       
     5     <variable name="Second_Python_Var" type="INT" initial="5"/>
       
     6   </variables>
       
     7   <globals>
       
     8 <![CDATA[
       
     9 import time,sys,ctypes
       
    10 Python_to_C_Call = PLCBinary.Python_to_C_Call
       
    11 Python_to_C_Call.restype = ctypes.c_int
       
    12 Python_to_C_Call.argtypes = [ctypes.c_int, ctypes.POINTER(ctypes.c_int)]
       
    13 
       
    14 def MyPythonFunc(arg):
       
    15     i = ctypes.c_int()
       
    16     if(Python_to_C_Call(arg, i)):
       
    17         res = i.value
       
    18         print "toC:", arg, "from C:", res, "FBID:", FBID
       
    19     else:
       
    20         print "Failed Python_to_C_Call failed"
       
    21         res = None
       
    22     print "Python read PLC global :",PLCGlobals.Test_Python_Var
       
    23     PLCGlobals.Second_Python_Var = 789
       
    24     sys.stdout.flush()
       
    25     return res
       
    26 
       
    27 async_error_test_code = """
       
    28 def badaboom():
       
    29     tuple()[0]
       
    30 
       
    31 import wx
       
    32 def badaboomwx():
       
    33     wx.CallAfter(badaboom)
       
    34 
       
    35 from threading import Timer
       
    36 a = Timer(3, badaboom)
       
    37 a.start()
       
    38 
       
    39 b = Timer(6, badaboomwx)
       
    40 b.start()
       
    41 """
       
    42 ]]>
       
    43   </globals>
       
    44   <init>
       
    45 <![CDATA[
       
    46 global x, y
       
    47 x = 2
       
    48 y = 5
       
    49 print "py_runtime init:", x, ",", y
       
    50 ]]>
       
    51   </init>
       
    52   <cleanup>
       
    53 <![CDATA[
       
    54 print "py_runtime cleanup"
       
    55 ]]>
       
    56   </cleanup>
       
    57   <start>
       
    58 <![CDATA[
       
    59 global x, y
       
    60 print "py_runtime start", x * x + y * y
       
    61 ]]>
       
    62   </start>
       
    63   <stop>
       
    64 <![CDATA[
       
    65 print "py_runtime stop"
       
    66 ]]>
       
    67   </stop>
       
    68 </PyFile>