prepating for epics 7.0.9
This commit is contained in:
+243
-212
@@ -1,5 +1,5 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- Generated by Cython 0.29.30 -->
|
||||
<!-- Generated by Cython 0.29.2 -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
@@ -286,29 +286,24 @@ body.cython { font-family: courier; font-size: 12; }
|
||||
.cython.score-252 {background-color: #FFFF09;}
|
||||
.cython.score-253 {background-color: #FFFF09;}
|
||||
.cython.score-254 {background-color: #FFFF09;}
|
||||
pre { line-height: 125%; }
|
||||
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
||||
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
||||
.cython .hll { background-color: #ffffcc }
|
||||
.cython { background: #f8f8f8; }
|
||||
.cython .c { color: #3D7B7B; font-style: italic } /* Comment */
|
||||
.cython { background: #f8f8f8; }
|
||||
.cython .c { color: #408080; font-style: italic } /* Comment */
|
||||
.cython .err { border: 1px solid #FF0000 } /* Error */
|
||||
.cython .k { color: #008000; font-weight: bold } /* Keyword */
|
||||
.cython .o { color: #666666 } /* Operator */
|
||||
.cython .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
|
||||
.cython .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
|
||||
.cython .cp { color: #9C6500 } /* Comment.Preproc */
|
||||
.cython .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
|
||||
.cython .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
|
||||
.cython .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
|
||||
.cython .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
|
||||
.cython .cm { color: #408080; font-style: italic } /* Comment.Multiline */
|
||||
.cython .cp { color: #BC7A00 } /* Comment.Preproc */
|
||||
.cython .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
|
||||
.cython .c1 { color: #408080; font-style: italic } /* Comment.Single */
|
||||
.cython .cs { color: #408080; font-style: italic } /* Comment.Special */
|
||||
.cython .gd { color: #A00000 } /* Generic.Deleted */
|
||||
.cython .ge { font-style: italic } /* Generic.Emph */
|
||||
.cython .gr { color: #E40000 } /* Generic.Error */
|
||||
.cython .gr { color: #FF0000 } /* Generic.Error */
|
||||
.cython .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||
.cython .gi { color: #008400 } /* Generic.Inserted */
|
||||
.cython .go { color: #717171 } /* Generic.Output */
|
||||
.cython .gi { color: #00A000 } /* Generic.Inserted */
|
||||
.cython .go { color: #888888 } /* Generic.Output */
|
||||
.cython .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
|
||||
.cython .gs { font-weight: bold } /* Generic.Strong */
|
||||
.cython .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||
@@ -321,15 +316,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
.cython .kt { color: #B00040 } /* Keyword.Type */
|
||||
.cython .m { color: #666666 } /* Literal.Number */
|
||||
.cython .s { color: #BA2121 } /* Literal.String */
|
||||
.cython .na { color: #687822 } /* Name.Attribute */
|
||||
.cython .na { color: #7D9029 } /* Name.Attribute */
|
||||
.cython .nb { color: #008000 } /* Name.Builtin */
|
||||
.cython .nc { color: #0000FF; font-weight: bold } /* Name.Class */
|
||||
.cython .no { color: #880000 } /* Name.Constant */
|
||||
.cython .nd { color: #AA22FF } /* Name.Decorator */
|
||||
.cython .ni { color: #717171; font-weight: bold } /* Name.Entity */
|
||||
.cython .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
|
||||
.cython .ni { color: #999999; font-weight: bold } /* Name.Entity */
|
||||
.cython .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
|
||||
.cython .nf { color: #0000FF } /* Name.Function */
|
||||
.cython .nl { color: #767600 } /* Name.Label */
|
||||
.cython .nl { color: #A0A000 } /* Name.Label */
|
||||
.cython .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
|
||||
.cython .nt { color: #008000; font-weight: bold } /* Name.Tag */
|
||||
.cython .nv { color: #19177C } /* Name.Variable */
|
||||
@@ -346,11 +341,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
.cython .dl { color: #BA2121 } /* Literal.String.Delimiter */
|
||||
.cython .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
|
||||
.cython .s2 { color: #BA2121 } /* Literal.String.Double */
|
||||
.cython .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
|
||||
.cython .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
|
||||
.cython .sh { color: #BA2121 } /* Literal.String.Heredoc */
|
||||
.cython .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
|
||||
.cython .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
|
||||
.cython .sx { color: #008000 } /* Literal.String.Other */
|
||||
.cython .sr { color: #A45A77 } /* Literal.String.Regex */
|
||||
.cython .sr { color: #BB6688 } /* Literal.String.Regex */
|
||||
.cython .s1 { color: #BA2121 } /* Literal.String.Single */
|
||||
.cython .ss { color: #19177C } /* Literal.String.Symbol */
|
||||
.cython .bp { color: #008000 } /* Name.Builtin.Pseudo */
|
||||
@@ -363,7 +358,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
</style>
|
||||
</head>
|
||||
<body class="cython">
|
||||
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.30</span></p>
|
||||
<p><span style="border-bottom: solid 1px grey;">Generated by Cython 0.29.2</span></p>
|
||||
<p>
|
||||
<span style="background-color: #FFFF00">Yellow lines</span> hint at Python interaction.<br />
|
||||
Click on a line that starts with a "<code>+</code>" to see the C code that Cython generated for it.
|
||||
@@ -480,8 +475,6 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<pre class="cython line score-13" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">018</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_data_event_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
<pre class='cython code score-13 '>void cy_data_event_handler_wrapper(void *__pyx_v_callback, unsigned int __pyx_v_handle, std::string __pyx_v_pvname, PVDataHolder __pyx_v_pvd) {
|
||||
struct __pyx_obj_6PyCafe_pvdata *__pyx_v_data = 0;
|
||||
HandleHelper __pyx_v_hh;
|
||||
CYTHON_UNUSED unsigned int __pyx_v_mpid;
|
||||
#ifdef WITH_THREAD
|
||||
PyGILState_STATE __pyx_gilstate_save = <span class='pyx_c_api'>__Pyx_PyGILState_Ensure</span>();
|
||||
#endif
|
||||
@@ -492,11 +485,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
goto __pyx_L0;
|
||||
__pyx_L1_error:;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_3);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_4);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_6);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_7);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_8);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_10);
|
||||
<span class='pyx_c_api'>__Pyx_WriteUnraisable</span>("PyCafe.cy_data_event_handler_wrapper", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0);
|
||||
__pyx_L0:;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>((PyObject *)__pyx_v_data);
|
||||
@@ -510,91 +503,129 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<pre class="cython line score-0"> <span class="">021</span>: <span class="n">PVDataHolder</span> <span class="n">pvd</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">022</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">023</span>: <span class="k">global</span> <span class="n">py_cb</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">024</span>: <span class="c">#print(" cy_data_event_handler_wrapper=====+++++++++++++++PVDATA++++++(1)= Handle/PVNAME :", handle, pvname) </span></pre>
|
||||
<pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">025</span>: <span class="k">cdef</span> <span class="kt">pvdata</span> <span class="nf">data</span> <span class="o">=</span> <span class="n">PVDataHolderToStruct</span><span class="p">(</span><span class="n">pvd</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-0 '> __pyx_t_1 = ((PyObject *)__pyx_f_6PyCafe_PVDataHolderToStruct(__pyx_v_pvd, NULL));<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 25, __pyx_L1_error)</span>
|
||||
<pre class="cython line score-0"> <span class="">024</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">025</span>: <span class="c">#print(" cy_data_event_handler_wrapper=====+++++++++++++++PVDATA++++++(1)= Handle/PVNAME :", handle, pvname) </span></pre>
|
||||
<pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">026</span>: <span class="k">cdef</span> <span class="kt">pvdata</span> <span class="nf">data</span> <span class="o">=</span> <span class="n">PVDataHolderToStruct</span><span class="p">(</span><span class="n">pvd</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-0 '> __pyx_t_1 = ((PyObject *)__pyx_f_6PyCafe_PVDataHolderToStruct(__pyx_v_pvd, NULL));<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 26, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
__pyx_v_data = ((struct __pyx_obj_6PyCafe_pvdata *)__pyx_t_1);
|
||||
__pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">026</span>: <span class="c">#data.show() </span></pre>
|
||||
<pre class="cython line score-7" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">027</span>: <span class="n">py_cb</span> <span class="o">=</span> <span class="p"><</span><span class="kt">object</span><span class="p">>(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-7 '> __pyx_t_1 = ((PyObject *)((void *)__pyx_v_callback));
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_1);
|
||||
if (<span class='py_c_api'>PyDict_SetItem</span>(__pyx_d, __pyx_n_s_py_cb, __pyx_t_1) < 0) <span class='error_goto'>__PYX_ERR(3, 27, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">028</span>: <span class="c">#print(" cy_data_event_handler_wrapper=====+++++++++++++++PVDATA++++++(2)= Handle/PVNAME :", handle, pvname)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">029</span>: <span class="k">cdef</span> <span class="kt">HandleHelper</span> <span class="nf">hh</span></pre>
|
||||
<pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">030</span>: <span class="n">mpid</span> <span class="o">=</span> <span class="n">hh</span><span class="o">.</span><span class="n">getUsrArgsAsUInt</span><span class="p">(</span><span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-0 '> __pyx_v_mpid = __pyx_v_hh.getUsrArgsAsUInt(__pyx_v_handle);
|
||||
</pre><pre class="cython line score-0"> <span class="">031</span>: <span class="c">#print("monitorId", mpid)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">032</span>: <span class="c">#monDictGlobal[mpid](handle, pvname, data)</span></pre>
|
||||
<pre class="cython line score-48" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">033</span>: <span class="p"><</span><span class="kt">object</span><span class="p">></span><span class="n">py_cb</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-48 '> <span class='pyx_c_api'>__Pyx_GetModuleGlobalName</span>(__pyx_t_2, __pyx_n_s_py_cb);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 33, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
__pyx_t_3 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 33, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_3);
|
||||
__pyx_t_4 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_4)) __PYX_ERR(3, 33, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_4);
|
||||
__pyx_t_5 = NULL;
|
||||
__pyx_t_6 = 0;
|
||||
if (CYTHON_UNPACK_METHODS && unlikely(<span class='py_c_api'>PyMethod_Check</span>(__pyx_t_2))) {
|
||||
__pyx_t_5 = <span class='py_macro_api'>PyMethod_GET_SELF</span>(__pyx_t_2);
|
||||
if (likely(__pyx_t_5)) {
|
||||
PyObject* function = <span class='py_macro_api'>PyMethod_GET_FUNCTION</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_5);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(function);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF_SET</span>(__pyx_t_2, function);
|
||||
__pyx_t_6 = 1;
|
||||
</pre><pre class="cython line score-13" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">027</span>: <span class="k">try</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-13 '> {
|
||||
/*try:*/ {
|
||||
/* … */
|
||||
}
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
goto __pyx_L8_try_end;
|
||||
__pyx_L3_error:;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_8); __pyx_t_8 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_6); __pyx_t_6 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_10); __pyx_t_10 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
/* … */
|
||||
<span class='refnanny'>__Pyx_XGIVEREF</span>(__pyx_t_2);
|
||||
<span class='refnanny'>__Pyx_XGIVEREF</span>(__pyx_t_3);
|
||||
<span class='refnanny'>__Pyx_XGIVEREF</span>(__pyx_t_4);
|
||||
<span class='pyx_c_api'>__Pyx_ExceptionReset</span>(__pyx_t_2, __pyx_t_3, __pyx_t_4);
|
||||
goto __pyx_L1_error;
|
||||
__pyx_L4_exception_handled:;
|
||||
<span class='refnanny'>__Pyx_XGIVEREF</span>(__pyx_t_2);
|
||||
<span class='refnanny'>__Pyx_XGIVEREF</span>(__pyx_t_3);
|
||||
<span class='refnanny'>__Pyx_XGIVEREF</span>(__pyx_t_4);
|
||||
<span class='pyx_c_api'>__Pyx_ExceptionReset</span>(__pyx_t_2, __pyx_t_3, __pyx_t_4);
|
||||
__pyx_L8_try_end:;
|
||||
}
|
||||
#if CYTHON_FAST_PYCALL
|
||||
if (<span class='py_c_api'>PyFunction_Check</span>(__pyx_t_2)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_t_3, __pyx_t_4, ((PyObject *)__pyx_v_data)};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_2, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 33, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
} else
|
||||
#endif
|
||||
#if CYTHON_FAST_PYCCALL
|
||||
if (<span class='pyx_c_api'>__Pyx_PyFastCFunction_Check</span>(__pyx_t_2)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_t_3, __pyx_t_4, ((PyObject *)__pyx_v_data)};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_2, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 33, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
__pyx_t_7 = <span class='py_c_api'>PyTuple_New</span>(3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_7)) __PYX_ERR(3, 33, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_7);
|
||||
if (__pyx_t_5) {
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_5); <span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
|
||||
</pre><pre class="cython line score-0"> <span class="">028</span>: <span class="c">#data.show() </span></pre>
|
||||
<pre class="cython line score-7" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">029</span>: <span class="n">py_cb</span> <span class="o">=</span> <span class="p"><</span><span class="kt">object</span><span class="p">>(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-7 '> __pyx_t_1 = ((PyObject *)((void *)__pyx_v_callback));
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_1);
|
||||
if (<span class='py_c_api'>PyDict_SetItem</span>(__pyx_d, __pyx_n_s_py_cb, __pyx_t_1) < 0) <span class='error_goto'>__PYX_ERR(3, 29, __pyx_L3_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">030</span>: <span class="c">#print(" cy_data_event_handler_wrapper=====+++++++++++++++PVDATA++++++(2)= Handle/PVNAME :", handle, pvname)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">031</span>: <span class="c">##cdef HandleHelper hh</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">032</span>: <span class="c">## mpid = hh.getUsrArgsAsUInt(handle)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">033</span>: <span class="c">#print("monitorId", mpid)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">034</span>: <span class="c">#monDictGlobal[mpid](handle, pvname, data)</span></pre>
|
||||
<pre class="cython line score-48" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">035</span>: <span class="p"><</span><span class="kt">object</span><span class="p">></span><span class="n">py_cb</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-48 '> <span class='pyx_c_api'>__Pyx_GetModuleGlobalName</span>(__pyx_t_5, __pyx_n_s_py_cb);<span class='error_goto'> if (unlikely(!__pyx_t_5)) __PYX_ERR(3, 35, __pyx_L3_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_5);
|
||||
__pyx_t_6 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_6)) __PYX_ERR(3, 35, __pyx_L3_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_6);
|
||||
__pyx_t_7 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_7)) __PYX_ERR(3, 35, __pyx_L3_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_7);
|
||||
__pyx_t_8 = NULL;
|
||||
__pyx_t_9 = 0;
|
||||
if (CYTHON_UNPACK_METHODS && unlikely(<span class='py_c_api'>PyMethod_Check</span>(__pyx_t_5))) {
|
||||
__pyx_t_8 = <span class='py_macro_api'>PyMethod_GET_SELF</span>(__pyx_t_5);
|
||||
if (likely(__pyx_t_8)) {
|
||||
PyObject* function = <span class='py_macro_api'>PyMethod_GET_FUNCTION</span>(__pyx_t_5);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_8);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(function);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF_SET</span>(__pyx_t_5, function);
|
||||
__pyx_t_9 = 1;
|
||||
}
|
||||
}
|
||||
#if CYTHON_FAST_PYCALL
|
||||
if (<span class='py_c_api'>PyFunction_Check</span>(__pyx_t_5)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_6, __pyx_t_7, ((PyObject *)__pyx_v_data)};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_5, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 35, __pyx_L3_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_8); __pyx_t_8 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_6); __pyx_t_6 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
} else
|
||||
#endif
|
||||
#if CYTHON_FAST_PYCCALL
|
||||
if (<span class='pyx_c_api'>__Pyx_PyFastCFunction_Check</span>(__pyx_t_5)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_8, __pyx_t_6, __pyx_t_7, ((PyObject *)__pyx_v_data)};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_5, __pyx_temp+1-__pyx_t_9, 3+__pyx_t_9);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 35, __pyx_L3_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_8); __pyx_t_8 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_6); __pyx_t_6 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
__pyx_t_10 = <span class='py_c_api'>PyTuple_New</span>(3+__pyx_t_9);<span class='error_goto'> if (unlikely(!__pyx_t_10)) __PYX_ERR(3, 35, __pyx_L3_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_10);
|
||||
if (__pyx_t_8) {
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_8); <span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_10, 0, __pyx_t_8); __pyx_t_8 = NULL;
|
||||
}
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_6);
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_10, 0+__pyx_t_9, __pyx_t_6);
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_7);
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_10, 1+__pyx_t_9, __pyx_t_7);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(((PyObject *)__pyx_v_data));
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(((PyObject *)__pyx_v_data));
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_10, 2+__pyx_t_9, ((PyObject *)__pyx_v_data));
|
||||
__pyx_t_6 = 0;
|
||||
__pyx_t_7 = 0;
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_5, __pyx_t_10, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 35, __pyx_L3_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_10); __pyx_t_10 = 0;
|
||||
}
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
(void)(((PyObject *)__pyx_t_1));
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">036</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">037</span>: <span class="c">#if monDictGlobal[mpid] != <object>py_cb:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">038</span>: <span class="c"># print( monDictGlobal[mpid])</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">039</span>: <span class="c"># print( <object>py_cb)</span></pre>
|
||||
<pre class="cython line score-4" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">040</span>: <span class="k">except</span> <span class="ne">TypeError</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-4 '> __pyx_t_9 = <span class='pyx_c_api'>__Pyx_PyErr_ExceptionMatches</span>(__pyx_builtin_TypeError);
|
||||
if (__pyx_t_9) {
|
||||
<span class='pyx_c_api'>__Pyx_ErrRestore</span>(0,0,0);
|
||||
goto __pyx_L4_exception_handled;
|
||||
}
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_3);
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 0+__pyx_t_6, __pyx_t_3);
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_4);
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 1+__pyx_t_6, __pyx_t_4);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(((PyObject *)__pyx_v_data));
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(((PyObject *)__pyx_v_data));
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 2+__pyx_t_6, ((PyObject *)__pyx_v_data));
|
||||
__pyx_t_3 = 0;
|
||||
__pyx_t_4 = 0;
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_2, __pyx_t_7, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 33, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
}
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
(void)(((PyObject *)__pyx_t_1));
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">034</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">035</span>: <span class="c">#if monDictGlobal[mpid] != <object>py_cb:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">036</span>: <span class="c"># print( monDictGlobal[mpid])</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">037</span>: <span class="c"># print( <object>py_cb)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">038</span>: </pre>
|
||||
<pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">039</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
goto __pyx_L5_except_error;
|
||||
__pyx_L5_except_error:;
|
||||
</pre><pre class="cython line score-0"> <span class="">041</span>: <span class="k">pass</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">042</span>: </pre>
|
||||
<pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">043</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-6 '> {
|
||||
#ifdef WITH_THREAD
|
||||
PyThreadState *_save;
|
||||
@@ -609,24 +640,24 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='pyx_c_api'>__Pyx_FastGIL_Forget</span>();
|
||||
Py_BLOCK_THREADS
|
||||
#endif
|
||||
goto __pyx_L5;
|
||||
goto __pyx_L11;
|
||||
}
|
||||
__pyx_L3_return: {
|
||||
__pyx_L9_return: {
|
||||
#ifdef WITH_THREAD
|
||||
<span class='pyx_c_api'>__Pyx_FastGIL_Forget</span>();
|
||||
Py_BLOCK_THREADS
|
||||
#endif
|
||||
goto __pyx_L0;
|
||||
}
|
||||
__pyx_L5:;
|
||||
__pyx_L11:;
|
||||
}
|
||||
}
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">040</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L3_return;
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">044</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L9_return;
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">041</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">042</span>: </pre>
|
||||
<pre class="cython line score-14" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">043</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_ctrl_event_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">045</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">046</span>: </pre>
|
||||
<pre class="cython line score-14" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">047</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_ctrl_event_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
<pre class='cython code score-14 '>void cy_ctrl_event_handler_wrapper(void *__pyx_v_callback, unsigned int __pyx_v_handle, std::string __pyx_v_pvname, PVCtrlHolder __pyx_v_pvc) {
|
||||
struct __pyx_obj_6PyCafe_pvctrl *__pyx_v_data = 0;
|
||||
PyObject *__pyx_v_cbobjt = NULL;
|
||||
@@ -654,25 +685,25 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='pyx_c_api'>__Pyx_PyGILState_Release</span>(__pyx_gilstate_save);
|
||||
#endif
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">044</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">045</span>: <span class="n">string</span> <span class="n">pvname</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">046</span>: <span class="n">PVCtrlHolder</span> <span class="n">pvc</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">047</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">048</span>: <span class="c">#print(" cy_data_event_handler_wrapper=====+++++++++++++++PVCTRL++++++= Handle/PVNAME :", handle, pvname)</span></pre>
|
||||
<pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">049</span>: <span class="k">cdef</span> <span class="kt">pvctrl</span> <span class="nf">data</span> <span class="o">=</span> <span class="n">PVCtrlHolderToStruct</span><span class="p">(</span><span class="n">pvc</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-0 '> __pyx_t_1 = ((PyObject *)__pyx_f_6PyCafe_PVCtrlHolderToStruct(__pyx_v_pvc, NULL));<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 49, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-0"> <span class="">048</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">049</span>: <span class="n">string</span> <span class="n">pvname</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">050</span>: <span class="n">PVCtrlHolder</span> <span class="n">pvc</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">051</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">052</span>: <span class="c">#print(" cy_data_event_handler_wrapper=====+++++++++++++++PVCTRL++++++= Handle/PVNAME :", handle, pvname)</span></pre>
|
||||
<pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">053</span>: <span class="k">cdef</span> <span class="kt">pvctrl</span> <span class="nf">data</span> <span class="o">=</span> <span class="n">PVCtrlHolderToStruct</span><span class="p">(</span><span class="n">pvc</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-0 '> __pyx_t_1 = ((PyObject *)__pyx_f_6PyCafe_PVCtrlHolderToStruct(__pyx_v_pvc, NULL));<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 53, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
__pyx_v_data = ((struct __pyx_obj_6PyCafe_pvctrl *)__pyx_t_1);
|
||||
__pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">050</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="p">(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
</pre><pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">054</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="p">(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-1 '> __pyx_t_1 = ((PyObject *)((void *)__pyx_v_callback));
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_1);
|
||||
__pyx_v_cbobjt = __pyx_t_1;
|
||||
__pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-47" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">051</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-47 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 51, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-47" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">055</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-47 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 55, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
__pyx_t_3 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 51, __pyx_L1_error)</span>
|
||||
__pyx_t_3 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 55, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_3);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_v_cbobjt);
|
||||
__pyx_t_4 = __pyx_v_cbobjt; __pyx_t_5 = NULL;
|
||||
@@ -690,7 +721,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
#if CYTHON_FAST_PYCALL
|
||||
if (<span class='py_c_api'>PyFunction_Check</span>(__pyx_t_4)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_t_2, __pyx_t_3, ((PyObject *)__pyx_v_data)};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 51, __pyx_L1_error)</span>
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 55, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
@@ -700,7 +731,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
#if CYTHON_FAST_PYCCALL
|
||||
if (<span class='pyx_c_api'>__Pyx_PyFastCFunction_Check</span>(__pyx_t_4)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_5, __pyx_t_2, __pyx_t_3, ((PyObject *)__pyx_v_data)};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 51, __pyx_L1_error)</span>
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 55, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
@@ -708,7 +739,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
__pyx_t_7 = <span class='py_c_api'>PyTuple_New</span>(3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_7)) __PYX_ERR(3, 51, __pyx_L1_error)</span>
|
||||
__pyx_t_7 = <span class='py_c_api'>PyTuple_New</span>(3+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_7)) __PYX_ERR(3, 55, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_7);
|
||||
if (__pyx_t_5) {
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_5); <span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
|
||||
@@ -722,13 +753,13 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 2+__pyx_t_6, ((PyObject *)__pyx_v_data));
|
||||
__pyx_t_2 = 0;
|
||||
__pyx_t_3 = 0;
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_4, __pyx_t_7, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 51, __pyx_L1_error)</span>
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_4, __pyx_t_7, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 55, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
}
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">052</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">056</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-6 '> {
|
||||
#ifdef WITH_THREAD
|
||||
PyThreadState *_save;
|
||||
@@ -755,12 +786,12 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_L5:;
|
||||
}
|
||||
}
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">053</span>: <span class="k">return</span></pre>
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">057</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L3_return;
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">054</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">055</span>: </pre>
|
||||
<pre class="cython line score-13" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">056</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_event_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">058</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">059</span>: </pre>
|
||||
<pre class="cython line score-13" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">060</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_event_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
<pre class='cython code score-13 '>void cy_event_handler_wrapper(void *__pyx_v_callback, unsigned int __pyx_v_handle, std::string __pyx_v_pvname) {
|
||||
PyObject *__pyx_v_cbobjt = NULL;
|
||||
#ifdef WITH_THREAD
|
||||
@@ -786,20 +817,20 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='pyx_c_api'>__Pyx_PyGILState_Release</span>(__pyx_gilstate_save);
|
||||
#endif
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">057</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">058</span>: <span class="n">string</span> <span class="n">pvname</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">059</span>: <span class="c">#print(" cy_event_handler_wrapper=====+++++++++++++++HANDLEPV++++++= Handle/PVNAME :", handle, pvname)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">060</span>: <span class="c">#(<object>args[0])(<int>args[1], <string>args[2]) </span></pre>
|
||||
<pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">061</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="n">callback</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">061</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">062</span>: <span class="n">string</span> <span class="n">pvname</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">063</span>: <span class="c">#print(" cy_event_handler_wrapper=====+++++++++++++++HANDLEPV++++++= Handle/PVNAME :", handle, pvname)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">064</span>: <span class="c">#(<object>args[0])(<int>args[1], <string>args[2]) </span></pre>
|
||||
<pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">065</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="n">callback</span></pre>
|
||||
<pre class='cython code score-1 '> __pyx_t_1 = ((PyObject *)__pyx_v_callback);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_1);
|
||||
__pyx_v_cbobjt = __pyx_t_1;
|
||||
__pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">062</span>: <span class="c">#cbobjt=<object>args[0]</span></pre>
|
||||
<pre class="cython line score-45" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">063</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-45 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 63, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-0"> <span class="">066</span>: <span class="c">#cbobjt=<object>args[0]</span></pre>
|
||||
<pre class="cython line score-45" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">067</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-45 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 67, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
__pyx_t_3 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 63, __pyx_L1_error)</span>
|
||||
__pyx_t_3 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 67, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_3);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_v_cbobjt);
|
||||
__pyx_t_4 = __pyx_v_cbobjt; __pyx_t_5 = NULL;
|
||||
@@ -817,7 +848,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
#if CYTHON_FAST_PYCALL
|
||||
if (<span class='py_c_api'>PyFunction_Check</span>(__pyx_t_4)) {
|
||||
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_2, __pyx_t_3};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 63, __pyx_L1_error)</span>
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 67, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
@@ -827,7 +858,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
#if CYTHON_FAST_PYCCALL
|
||||
if (<span class='pyx_c_api'>__Pyx_PyFastCFunction_Check</span>(__pyx_t_4)) {
|
||||
PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_2, __pyx_t_3};
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 63, __pyx_L1_error)</span>
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_4, __pyx_temp+1-__pyx_t_6, 2+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 67, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_5); __pyx_t_5 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
@@ -835,7 +866,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
__pyx_t_7 = <span class='py_c_api'>PyTuple_New</span>(2+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_7)) __PYX_ERR(3, 63, __pyx_L1_error)</span>
|
||||
__pyx_t_7 = <span class='py_c_api'>PyTuple_New</span>(2+__pyx_t_6);<span class='error_goto'> if (unlikely(!__pyx_t_7)) __PYX_ERR(3, 67, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_7);
|
||||
if (__pyx_t_5) {
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_5); <span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
|
||||
@@ -846,15 +877,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_7, 1+__pyx_t_6, __pyx_t_3);
|
||||
__pyx_t_2 = 0;
|
||||
__pyx_t_3 = 0;
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_4, __pyx_t_7, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 63, __pyx_L1_error)</span>
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_4, __pyx_t_7, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 67, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
}
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">064</span>: <span class="c">#cbobjt=<object>(<int>args[0], pvname)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">065</span>: </pre>
|
||||
<pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">066</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">068</span>: <span class="c">#cbobjt=<object>(<int>args[0], pvname)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">069</span>: </pre>
|
||||
<pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">070</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-6 '> {
|
||||
#ifdef WITH_THREAD
|
||||
PyThreadState *_save;
|
||||
@@ -881,11 +912,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_L5:;
|
||||
}
|
||||
}
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">067</span>: <span class="k">return</span></pre>
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">071</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L3_return;
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">068</span>: </pre>
|
||||
<pre class="cython line score-11" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">069</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_handle_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">072</span>: </pre>
|
||||
<pre class="cython line score-11" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">073</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_handle_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
<pre class='cython code score-11 '>void cy_handle_handler_wrapper(void *__pyx_v_callback, unsigned int __pyx_v_handle) {
|
||||
PyObject *__pyx_v_cbobjt = NULL;
|
||||
#ifdef WITH_THREAD
|
||||
@@ -909,16 +940,16 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='pyx_c_api'>__Pyx_PyGILState_Release</span>(__pyx_gilstate_save);
|
||||
#endif
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">070</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">071</span>: <span class="c">#print(" cy_handle_handler_wrapper=====+++++++++++++++HANDLEPV++++++= Handle:", handle)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">072</span>: </pre>
|
||||
<pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">073</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="n">callback</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">074</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">075</span>: <span class="c">#print(" cy_handle_handler_wrapper=====+++++++++++++++HANDLEPV++++++= Handle:", handle)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">076</span>: </pre>
|
||||
<pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">077</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="n">callback</span></pre>
|
||||
<pre class='cython code score-1 '> __pyx_t_1 = ((PyObject *)__pyx_v_callback);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_1);
|
||||
__pyx_v_cbobjt = __pyx_t_1;
|
||||
__pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-19" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">074</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-19 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 74, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-19" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">078</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-19 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 78, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_v_cbobjt);
|
||||
__pyx_t_3 = __pyx_v_cbobjt; __pyx_t_4 = NULL;
|
||||
@@ -934,11 +965,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_t_1 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_4, __pyx_t_2) : <span class='pyx_c_api'>__Pyx_PyObject_CallOneArg</span>(__pyx_t_3, __pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
if (unlikely(!__pyx_t_1)) <span class='error_goto'>__PYX_ERR(3, 74, __pyx_L1_error)</span>
|
||||
if (unlikely(!__pyx_t_1)) <span class='error_goto'>__PYX_ERR(3, 78, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">075</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">079</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-6 '> {
|
||||
#ifdef WITH_THREAD
|
||||
PyThreadState *_save;
|
||||
@@ -965,11 +996,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_L5:;
|
||||
}
|
||||
}
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">076</span>: <span class="k">return</span></pre>
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">080</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L3_return;
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">077</span>: </pre>
|
||||
<pre class="cython line score-14" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">078</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_connect_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">081</span>: </pre>
|
||||
<pre class="cython line score-14" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">082</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_connect_handler_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span></pre>
|
||||
<pre class='cython code score-14 '>void cy_connect_handler_wrapper(void *__pyx_v_callback, unsigned int __pyx_v_handle, std::string __pyx_v_pvname, int __pyx_v_status) {
|
||||
PyObject *__pyx_v_cbobjt = NULL;
|
||||
#ifdef WITH_THREAD
|
||||
@@ -996,28 +1027,28 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='pyx_c_api'>__Pyx_PyGILState_Release</span>(__pyx_gilstate_save);
|
||||
#endif
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">079</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">080</span>: <span class="n">string</span> <span class="n">pvname</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">081</span>: <span class="nb">int</span> <span class="n">status</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">082</span>: <span class="c">#print(" cy_connect_handler_wrapper ====+++CONNECT++++++++++= Handle/PV/Status:", handle, pvname, status)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">083</span>: <span class="c">#print(" callback is ", <object> callback)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">084</span>: </pre>
|
||||
<pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">085</span>: <span class="k">if</span> <span class="n">callback</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">083</span>: <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">084</span>: <span class="n">string</span> <span class="n">pvname</span><span class="p">,</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">085</span>: <span class="nb">int</span> <span class="n">status</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">086</span>: <span class="c">#print(" cy_connect_handler_wrapper ====+++CONNECT++++++++++= Handle/PV/Status:", handle, pvname, status)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">087</span>: <span class="c">#print(" callback is ", <object> callback)</span></pre>
|
||||
<pre class="cython line score-0"> <span class="">088</span>: </pre>
|
||||
<pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">089</span>: <span class="k">if</span> <span class="n">callback</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-0 '> __pyx_t_1 = (__pyx_v_callback != 0);
|
||||
if (__pyx_t_1) {
|
||||
/* … */
|
||||
}
|
||||
</pre><pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">086</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="n">callback</span></pre>
|
||||
</pre><pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">090</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="n">callback</span></pre>
|
||||
<pre class='cython code score-1 '> __pyx_t_2 = ((PyObject *)__pyx_v_callback);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_2);
|
||||
__pyx_v_cbobjt = __pyx_t_2;
|
||||
__pyx_t_2 = 0;
|
||||
</pre><pre class="cython line score-50" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">087</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">,</span> <span class="n">status</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-50 '> __pyx_t_3 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 87, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-50" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">091</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">,</span> <span class="n">pvname</span><span class="p">,</span> <span class="n">status</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-50 '> __pyx_t_3 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_3)) __PYX_ERR(3, 91, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_3);
|
||||
__pyx_t_4 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_4)) __PYX_ERR(3, 87, __pyx_L1_error)</span>
|
||||
__pyx_t_4 = <span class='pyx_c_api'>__pyx_convert_PyStr_string_to_py_std__in_string</span>(__pyx_v_pvname);<span class='error_goto'> if (unlikely(!__pyx_t_4)) __PYX_ERR(3, 91, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_4);
|
||||
__pyx_t_5 = <span class='pyx_c_api'>__Pyx_PyInt_From_int</span>(__pyx_v_status);<span class='error_goto'> if (unlikely(!__pyx_t_5)) __PYX_ERR(3, 87, __pyx_L1_error)</span>
|
||||
__pyx_t_5 = <span class='pyx_c_api'>__Pyx_PyInt_From_int</span>(__pyx_v_status);<span class='error_goto'> if (unlikely(!__pyx_t_5)) __PYX_ERR(3, 91, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_5);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_v_cbobjt);
|
||||
__pyx_t_6 = __pyx_v_cbobjt; __pyx_t_7 = NULL;
|
||||
@@ -1035,7 +1066,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
#if CYTHON_FAST_PYCALL
|
||||
if (<span class='py_c_api'>PyFunction_Check</span>(__pyx_t_6)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_t_3, __pyx_t_4, __pyx_t_5};
|
||||
__pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 87, __pyx_L1_error)</span>
|
||||
__pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyFunction_FastCall</span>(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 91, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
@@ -1046,7 +1077,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
#if CYTHON_FAST_PYCCALL
|
||||
if (<span class='pyx_c_api'>__Pyx_PyFastCFunction_Check</span>(__pyx_t_6)) {
|
||||
PyObject *__pyx_temp[4] = {__pyx_t_7, __pyx_t_3, __pyx_t_4, __pyx_t_5};
|
||||
__pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 87, __pyx_L1_error)</span>
|
||||
__pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyCFunction_FastCall</span>(__pyx_t_6, __pyx_temp+1-__pyx_t_8, 3+__pyx_t_8);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 91, __pyx_L1_error)</span>
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_7); __pyx_t_7 = 0;
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
@@ -1055,7 +1086,7 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
__pyx_t_9 = <span class='py_c_api'>PyTuple_New</span>(3+__pyx_t_8);<span class='error_goto'> if (unlikely(!__pyx_t_9)) __PYX_ERR(3, 87, __pyx_L1_error)</span>
|
||||
__pyx_t_9 = <span class='py_c_api'>PyTuple_New</span>(3+__pyx_t_8);<span class='error_goto'> if (unlikely(!__pyx_t_9)) __PYX_ERR(3, 91, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_9);
|
||||
if (__pyx_t_7) {
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_7); <span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL;
|
||||
@@ -1069,14 +1100,14 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_t_3 = 0;
|
||||
__pyx_t_4 = 0;
|
||||
__pyx_t_5 = 0;
|
||||
__pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_6, __pyx_t_9, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 87, __pyx_L1_error)</span>
|
||||
__pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_t_6, __pyx_t_9, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 91, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_9); __pyx_t_9 = 0;
|
||||
}
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_6); __pyx_t_6 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
</pre><pre class="cython line score-0"> <span class="">088</span>: </pre>
|
||||
<pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">089</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">092</span>: </pre>
|
||||
<pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">093</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-6 '> {
|
||||
#ifdef WITH_THREAD
|
||||
PyThreadState *_save;
|
||||
@@ -1103,12 +1134,12 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_L6:;
|
||||
}
|
||||
}
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">090</span>: <span class="k">return</span></pre>
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">094</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L4_return;
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">091</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">092</span>: </pre>
|
||||
<pre class="cython line score-11" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">093</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_cb_handle_get_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span> <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">095</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">096</span>: </pre>
|
||||
<pre class="cython line score-11" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">097</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_cb_handle_get_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span> <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-11 '>void cy_cb_handle_get_wrapper(void *__pyx_v_callback, unsigned int __pyx_v_handle) {
|
||||
PyObject *__pyx_v_cbobjt = NULL;
|
||||
#ifdef WITH_THREAD
|
||||
@@ -1132,10 +1163,10 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='pyx_c_api'>__Pyx_PyGILState_Release</span>(__pyx_gilstate_save);
|
||||
#endif
|
||||
}
|
||||
</pre><pre class="cython line score-14" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">094</span>: <span class="k">print</span><span class="p">(</span><span class="s">" py_cb_handle_get_wrapper+++++++++++++GET++++++++++= Handle:"</span><span class="p">,</span> <span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-14 '> __pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 94, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-14" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">098</span>: <span class="k">print</span><span class="p">(</span><span class="s">" py_cb_handle_get_wrapper+++++++++++++GET++++++++++= Handle:"</span><span class="p">,</span> <span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-14 '> __pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 98, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
__pyx_t_2 = <span class='py_c_api'>PyTuple_New</span>(2);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 94, __pyx_L1_error)</span>
|
||||
__pyx_t_2 = <span class='py_c_api'>PyTuple_New</span>(2);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 98, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_kp_u_py_cb_handle_get_wrapper_GET_Ha);
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_kp_u_py_cb_handle_get_wrapper_GET_Ha);
|
||||
@@ -1143,17 +1174,17 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='refnanny'>__Pyx_GIVEREF</span>(__pyx_t_1);
|
||||
<span class='py_macro_api'>PyTuple_SET_ITEM</span>(__pyx_t_2, 1, __pyx_t_1);
|
||||
__pyx_t_1 = 0;
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_builtin_print, __pyx_t_2, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 94, __pyx_L1_error)</span>
|
||||
__pyx_t_1 = <span class='pyx_c_api'>__Pyx_PyObject_Call</span>(__pyx_builtin_print, __pyx_t_2, NULL);<span class='error_goto'> if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 98, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">095</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="p">(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
</pre><pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">099</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="p">(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-1 '> __pyx_t_1 = ((PyObject *)((void *)__pyx_v_callback));
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_1);
|
||||
__pyx_v_cbobjt = __pyx_t_1;
|
||||
__pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-19" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">096</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-19 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 96, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-19" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">100</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-19 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 100, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_v_cbobjt);
|
||||
__pyx_t_3 = __pyx_v_cbobjt; __pyx_t_4 = NULL;
|
||||
@@ -1169,11 +1200,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_t_1 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_4, __pyx_t_2) : <span class='pyx_c_api'>__Pyx_PyObject_CallOneArg</span>(__pyx_t_3, __pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
if (unlikely(!__pyx_t_1)) <span class='error_goto'>__PYX_ERR(3, 96, __pyx_L1_error)</span>
|
||||
if (unlikely(!__pyx_t_1)) <span class='error_goto'>__PYX_ERR(3, 100, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">097</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">101</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-6 '> {
|
||||
#ifdef WITH_THREAD
|
||||
PyThreadState *_save;
|
||||
@@ -1200,12 +1231,12 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_L5:;
|
||||
}
|
||||
}
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">098</span>: <span class="k">return</span></pre>
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">102</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L3_return;
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">099</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">100</span>: </pre>
|
||||
<pre class="cython line score-11" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">101</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_cb_handle_put_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span> <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">103</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">104</span>: </pre>
|
||||
<pre class="cython line score-11" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">105</span>: <span class="k">cdef</span> <span class="kr">public</span> <span class="kt">void</span> <span class="nf">cy_cb_handle_put_wrapper</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span> <span class="n">callback</span><span class="p">,</span> <span class="nb">unsigned</span> <span class="nb">int</span> <span class="n">handle</span><span class="p">)</span> <span class="k">with</span> <span class="k">gil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-11 '>void cy_cb_handle_put_wrapper(void *__pyx_v_callback, unsigned int __pyx_v_handle) {
|
||||
PyObject *__pyx_v_cbobjt = NULL;
|
||||
#ifdef WITH_THREAD
|
||||
@@ -1229,14 +1260,14 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
<span class='pyx_c_api'>__Pyx_PyGILState_Release</span>(__pyx_gilstate_save);
|
||||
#endif
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">102</span>: <span class="c">#print(" py_cb_handle_put_wrapper+++++++++++++PUT++++++++++= Handle:", handle)</span></pre>
|
||||
<pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">103</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="p">(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">106</span>: <span class="c">#print(" py_cb_handle_put_wrapper+++++++++++++PUT++++++++++= Handle:", handle)</span></pre>
|
||||
<pre class="cython line score-1" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">107</span>: <span class="n">cbobjt</span><span class="o">=</span><span class="p"><</span><span class="kt">object</span><span class="p">></span> <span class="p">(</span><span class="o"><</span><span class="n">void</span> <span class="o">*></span> <span class="n">callback</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-1 '> __pyx_t_1 = ((PyObject *)((void *)__pyx_v_callback));
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_t_1);
|
||||
__pyx_v_cbobjt = __pyx_t_1;
|
||||
__pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-19" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">104</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-19 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 104, __pyx_L1_error)</span>
|
||||
</pre><pre class="cython line score-19" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">108</span>: <span class="n">cbobjt</span><span class="p">(</span><span class="n">handle</span><span class="p">)</span></pre>
|
||||
<pre class='cython code score-19 '> __pyx_t_2 = <span class='pyx_c_api'>__Pyx_PyInt_From_unsigned_int</span>(__pyx_v_handle);<span class='error_goto'> if (unlikely(!__pyx_t_2)) __PYX_ERR(3, 108, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_INCREF</span>(__pyx_v_cbobjt);
|
||||
__pyx_t_3 = __pyx_v_cbobjt; __pyx_t_4 = NULL;
|
||||
@@ -1252,11 +1283,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_t_1 = (__pyx_t_4) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_4, __pyx_t_2) : <span class='pyx_c_api'>__Pyx_PyObject_CallOneArg</span>(__pyx_t_3, __pyx_t_2);
|
||||
<span class='pyx_macro_api'>__Pyx_XDECREF</span>(__pyx_t_4); __pyx_t_4 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_2); __pyx_t_2 = 0;
|
||||
if (unlikely(!__pyx_t_1)) <span class='error_goto'>__PYX_ERR(3, 104, __pyx_L1_error)</span>
|
||||
if (unlikely(!__pyx_t_1)) <span class='error_goto'>__PYX_ERR(3, 108, __pyx_L1_error)</span>
|
||||
<span class='refnanny'>__Pyx_GOTREF</span>(__pyx_t_1);
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_3); __pyx_t_3 = 0;
|
||||
<span class='pyx_macro_api'>__Pyx_DECREF</span>(__pyx_t_1); __pyx_t_1 = 0;
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">105</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
</pre><pre class="cython line score-6" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">109</span>: <span class="k">with</span> <span class="k">nogil</span><span class="p">:</span></pre>
|
||||
<pre class='cython code score-6 '> {
|
||||
#ifdef WITH_THREAD
|
||||
PyThreadState *_save;
|
||||
@@ -1283,10 +1314,10 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
|
||||
__pyx_L5:;
|
||||
}
|
||||
}
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">106</span>: <span class="k">return</span></pre>
|
||||
</pre><pre class="cython line score-0" onclick="(function(s){s.display=s.display==='block'?'none':'block'})(this.nextElementSibling.style)">+<span class="">110</span>: <span class="k">return</span></pre>
|
||||
<pre class='cython code score-0 '> goto __pyx_L3_return;
|
||||
}
|
||||
</pre><pre class="cython line score-0"> <span class="">107</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">108</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">109</span>: <span class="c"># ***********public***************</span></pre>
|
||||
</pre><pre class="cython line score-0"> <span class="">111</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">112</span>: </pre>
|
||||
<pre class="cython line score-0"> <span class="">113</span>: <span class="c"># ***********public***************</span></pre>
|
||||
</div></body></html>
|
||||
|
||||
Reference in New Issue
Block a user