1 2/* Buffer object interface */ 3 4/* Note: the object's structure is private */ 5 6#ifndef Py_BUFFEROBJECT_H 7#define Py_BUFFEROBJECT_H 8#ifdef __cplusplus 9extern "C" { 10#endif 11 12 13PyAPI_DATA(PyTypeObject) PyBuffer_Type; 14 15#define PyBuffer_Check(op) (Py_TYPE(op) == &PyBuffer_Type) 16 17#define Py_END_OF_BUFFER (-1) 18 19PyAPI_FUNC(PyObject *) PyBuffer_FromObject(PyObject *base, 20 Py_ssize_t offset, Py_ssize_t size); 21PyAPI_FUNC(PyObject *) PyBuffer_FromReadWriteObject(PyObject *base, 22 Py_ssize_t offset, 23 Py_ssize_t size); 24 25PyAPI_FUNC(PyObject *) PyBuffer_FromMemory(void *ptr, Py_ssize_t size); 26PyAPI_FUNC(PyObject *) PyBuffer_FromReadWriteMemory(void *ptr, Py_ssize_t size); 27 28PyAPI_FUNC(PyObject *) PyBuffer_New(Py_ssize_t size); 29 30#ifdef __cplusplus 31} 32#endif 33#endif /* !Py_BUFFEROBJECT_H */ 34