PSignal::PSignal()
{
- m_list = PyList_New(0);
- Py_INCREF(m_list);
}
PSignal::~PSignal()
{
- Py_DECREF(m_list);
+ Py_XDECREF(m_list);
}
void PSignal::callPython(ePyObject tuple)
PyObject *PSignal::get()
{
+ if (!m_list)
+ m_list = PyList_New(0);
Py_INCREF(m_list);
return m_list;
}
+
+PyObject *PSignal::getSteal(bool clear)
+{
+ if (clear)
+ {
+ ePyObject ret = m_list;
+ m_list = (PyObject*)0;
+ return ret;
+ }
+ return m_list;
+}