| #pragma once | |
| #define PY_SSIZE_T_CLEAN | |
| #include <Python.h> | |
| namespace ittapi | |
| { | |
| namespace pyext | |
| { | |
| template<typename T> | |
| T* pyobject_cast(PyObject* self) | |
| { | |
| return reinterpret_cast<T*>(self); | |
| } | |
| inline PyObject* new_ref(PyObject* obj); | |
| inline PyObject* xnew_ref(PyObject* obj); | |
| int add_type(PyObject* module, PyTypeObject* type); | |
| /* Implementation of inline functions */ | |
| PyObject* new_ref(PyObject* obj) | |
| { | |
| Py_INCREF(obj); | |
| return obj; | |
| } | |
| PyObject* xnew_ref(PyObject* obj) | |
| { | |
| Py_XINCREF(obj); | |
| return obj; | |
| } | |
| } // namespace pyext | |
| } // namespace ittapi |