Home | History | Annotate | Download | only in Include
      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