/* Generated by Cython 3.0.12 */

#ifndef __PYX_HAVE__thinqpbo___qpbo
#define __PYX_HAVE__thinqpbo___qpbo

#include "Python.h"
struct PyObject_QPBOInt;
struct PyObject_QPBOFloat;
struct PyObject_QPBODouble;

/* "thinqpbo/src/_qpbo.pyx":6
 * 
 * 
 * cdef public class QPBOInt[object PyObject_QPBOInt, type QPBOInt]:             # <<<<<<<<<<<<<<
 *     cdef QPBO[int]* c_qpbo
 * 
 */
struct PyObject_QPBOInt {
  PyObject_HEAD
  QPBO<int>  *c_qpbo;
};

/* "thinqpbo/src/_qpbo.pyx":195
 * 
 * 
 * cdef public class QPBOFloat[object PyObject_QPBOFloat, type QPBOFloat]:             # <<<<<<<<<<<<<<
 *     cdef QPBO[float]* c_qpbo
 * 
 */
struct PyObject_QPBOFloat {
  PyObject_HEAD
  QPBO<float>  *c_qpbo;
};

/* "thinqpbo/src/_qpbo.pyx":384
 * 
 * 
 * cdef public class QPBODouble[object PyObject_QPBODouble, type QPBODouble]:             # <<<<<<<<<<<<<<
 *     cdef QPBO[double]* c_qpbo
 * 
 */
struct PyObject_QPBODouble {
  PyObject_HEAD
  QPBO<double>  *c_qpbo;
};

#ifndef __PYX_HAVE_API__thinqpbo___qpbo

#ifdef CYTHON_EXTERN_C
    #undef __PYX_EXTERN_C
    #define __PYX_EXTERN_C CYTHON_EXTERN_C
#elif defined(__PYX_EXTERN_C)
    #ifdef _MSC_VER
    #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.")
    #else
    #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.
    #endif
#else
    #define __PYX_EXTERN_C extern "C++"
#endif

#ifndef DL_IMPORT
  #define DL_IMPORT(_T) _T
#endif

__PYX_EXTERN_C DL_IMPORT(PyTypeObject) QPBOInt;
__PYX_EXTERN_C DL_IMPORT(PyTypeObject) QPBOFloat;
__PYX_EXTERN_C DL_IMPORT(PyTypeObject) QPBODouble;

#endif /* !__PYX_HAVE_API__thinqpbo___qpbo */

/* WARNING: the interface of the module init function changed in CPython 3.5. */
/* It now returns a PyModuleDef instance instead of a PyModule instance. */

#if PY_MAJOR_VERSION < 3
PyMODINIT_FUNC init_qpbo(void);
#else
/* WARNING: Use PyImport_AppendInittab("_qpbo", PyInit__qpbo) instead of calling PyInit__qpbo directly from Python 3.5 */
PyMODINIT_FUNC PyInit__qpbo(void);

#if PY_VERSION_HEX >= 0x03050000 && (defined(__GNUC__) || defined(__clang__) || defined(_MSC_VER) || (defined(__cplusplus) && __cplusplus >= 201402L))
#if defined(__cplusplus) && __cplusplus >= 201402L
[[deprecated("Use PyImport_AppendInittab(\"_qpbo\", PyInit__qpbo) instead of calling PyInit__qpbo directly.")]] inline
#elif defined(__GNUC__) || defined(__clang__)
__attribute__ ((__deprecated__("Use PyImport_AppendInittab(\"_qpbo\", PyInit__qpbo) instead of calling PyInit__qpbo directly."), __unused__)) __inline__
#elif defined(_MSC_VER)
__declspec(deprecated("Use PyImport_AppendInittab(\"_qpbo\", PyInit__qpbo) instead of calling PyInit__qpbo directly.")) __inline
#endif
static PyObject* __PYX_WARN_IF_PyInit__qpbo_INIT_CALLED(PyObject* res) {
  return res;
}
#define PyInit__qpbo() __PYX_WARN_IF_PyInit__qpbo_INIT_CALLED(PyInit__qpbo())
#endif
#endif

#endif /* !__PYX_HAVE__thinqpbo___qpbo */
