bufferobject.h 922 Bytes
Newer Older
1 2 3 4 5

/* Buffer object interface */

/* Note: the object's structure is private */

6 7 8 9 10 11
#ifndef Py_BUFFEROBJECT_H
#define Py_BUFFEROBJECT_H
#ifdef __cplusplus
extern "C" {
#endif

12

13
PyAPI_DATA(PyTypeObject) PyBuffer_Type;
14

15
#define PyBuffer_Check(op) (Py_TYPE(op) == &PyBuffer_Type)
16 17 18

#define Py_END_OF_BUFFER	(-1)

19
PyAPI_FUNC(PyObject *) PyBuffer_FromObject(PyObject *base,
Martin v. Löwis's avatar
Martin v. Löwis committed
20
                                           Py_ssize_t offset, Py_ssize_t size);
21
PyAPI_FUNC(PyObject *) PyBuffer_FromReadWriteObject(PyObject *base,
Martin v. Löwis's avatar
Martin v. Löwis committed
22 23
                                                    Py_ssize_t offset,
                                                    Py_ssize_t size);
24

Martin v. Löwis's avatar
Martin v. Löwis committed
25 26
PyAPI_FUNC(PyObject *) PyBuffer_FromMemory(void *ptr, Py_ssize_t size);
PyAPI_FUNC(PyObject *) PyBuffer_FromReadWriteMemory(void *ptr, Py_ssize_t size);
27

Martin v. Löwis's avatar
Martin v. Löwis committed
28
PyAPI_FUNC(PyObject *) PyBuffer_New(Py_ssize_t size);
29 30 31 32 33

#ifdef __cplusplus
}
#endif
#endif /* !Py_BUFFEROBJECT_H */