+DEFINE_REF(TestObj);
+
+TestObj::TestObj()
+{
+ eDebug("create %p", this);
+}
+
+TestObj::~TestObj()
+{
+ eDebug("destroy %p", this);
+}
+
+#if 0
+ePyObject::ePyObject(void *ptr): m_object(ptr)
+{
+ Py_XINCREF((PyObject*)ptr);
+}
+
+ePyObject::ePyObject(ePyObject &p)
+{
+ m_object = p.m_object;
+ Py_XINCREF((PyObject*)m_object);
+}
+
+ePyObject::ePyObject(): m_object(0)
+{
+}
+
+ePyObject::~ePyObject()
+{
+ Py_XDECREF((PyObject*)m_object);
+}
+
+ePyObject &ePyObject::operator=(ePyObject &p)
+{
+ Py_XDECREF((PyObject*)m_object);
+ m_object = p.m_object;
+ Py_XINCREF((PyObject*)m_object);
+ return *this;
+}
+
+ePyObject &ePyObject::operator=(void *object)
+{
+ Py_XDECREF((PyObject*)m_object);
+ m_object = object;
+ Py_XINCREF((PyObject*)m_object);
+ return *this;
+}
+#endif
+