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 9 extern "C" { 10 #endif 11 12 13 PyAPI_DATA(PyTypeObject) PyBuffer_Type; 14 15 #define PyBuffer_Check(op) (Py_TYPE(op) == &PyBuffer_Type) 16 17 #define Py_END_OF_BUFFER (-1) 18 19 PyAPI_FUNC(PyObject *) PyBuffer_FromObject(PyObject *base, 20 Py_ssize_t offset, Py_ssize_t size); 21 PyAPI_FUNC(PyObject *) PyBuffer_FromReadWriteObject(PyObject *base, 22 Py_ssize_t offset, 23 Py_ssize_t size); 24 25 PyAPI_FUNC(PyObject *) PyBuffer_FromMemory(void *ptr, Py_ssize_t size); 26 PyAPI_FUNC(PyObject *) PyBuffer_FromReadWriteMemory(void *ptr, Py_ssize_t size); 27 28 PyAPI_FUNC(PyObject *) PyBuffer_New(Py_ssize_t size); 29 30 #ifdef __cplusplus 31 } 32 #endif 33 #endif /* !Py_BUFFEROBJECT_H */ 34