/* Generated by Cython 0.29.35 */

#ifndef __PYX_HAVE__dpctl__memory___memory
#define __PYX_HAVE__dpctl__memory___memory

#include "Python.h"
struct Py_MemoryObject;
struct PyMemoryUSMSharedObject;
struct PyMemoryUSMHostObject;
struct PyMemoryUSMDeviceObject;

/* "dpctl/memory/_memory.pxd":35
 * 
 * 
 * cdef public api class _Memory [object Py_MemoryObject, type Py_MemoryType]:             # <<<<<<<<<<<<<<
 *     cdef DPCTLSyclUSMRef memory_ptr
 *     cdef Py_ssize_t nbytes
 */
struct Py_MemoryObject {
  PyObject_HEAD
  struct __pyx_vtabstruct_5dpctl_6memory_7_memory__Memory *__pyx_vtab;
  DPCTLSyclUSMRef memory_ptr;
  Py_ssize_t nbytes;
  struct PySyclQueueObject *queue;
  PyObject *refobj;
};

/* "dpctl/memory/_memory.pxd":70
 * 
 * 
 * cdef public api class MemoryUSMShared(_Memory) [object PyMemoryUSMSharedObject,             # <<<<<<<<<<<<<<
 *                                             type PyMemoryUSMSharedType]:
 *     pass
 */
struct PyMemoryUSMSharedObject {
  struct Py_MemoryObject __pyx_base;
};

/* "dpctl/memory/_memory.pxd":75
 * 
 * 
 * cdef public api class MemoryUSMHost(_Memory) [object PyMemoryUSMHostObject,             # <<<<<<<<<<<<<<
 *                                           type PyMemoryUSMHostType]:
 *     pass
 */
struct PyMemoryUSMHostObject {
  struct Py_MemoryObject __pyx_base;
};

/* "dpctl/memory/_memory.pxd":80
 * 
 * 
 * cdef public api class MemoryUSMDevice(_Memory) [object PyMemoryUSMDeviceObject,             # <<<<<<<<<<<<<<
 *                                             type PyMemoryUSMDeviceType]:
 *     pass
 */
struct PyMemoryUSMDeviceObject {
  struct Py_MemoryObject __pyx_base;
};

#ifndef __PYX_HAVE_API__dpctl__memory___memory

#ifndef __PYX_EXTERN_C
  #ifdef __cplusplus
    #define __PYX_EXTERN_C extern "C"
  #else
    #define __PYX_EXTERN_C extern
  #endif
#endif

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

__PYX_EXTERN_C DL_IMPORT(PyTypeObject) Py_MemoryType;
__PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyMemoryUSMSharedType;
__PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyMemoryUSMHostType;
__PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyMemoryUSMDeviceType;

#endif /* !__PYX_HAVE_API__dpctl__memory___memory */

/* 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_memory(void);
#else
PyMODINIT_FUNC PyInit__memory(void);
#endif

#endif /* !__PYX_HAVE__dpctl__memory___memory */
