Mercurial > cpython-lru_cache-weakref
diff Include/bufferobject.h @ 9278:c39218a68df1 legacy-trunk
Add Greg Stein's buffer object API.
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Wed, 07 Oct 1998 14:36:10 +0000 |
| parents | |
| children | 60fdb1db1175 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Include/bufferobject.h Wed Oct 07 14:36:10 1998 +0000 @@ -0,0 +1,61 @@ +#ifndef Py_BUFFEROBJECT_H +#define Py_BUFFEROBJECT_H +#ifdef __cplusplus +extern "C" { +#endif + +/*********************************************************** +Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, +The Netherlands. + + All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the names of Stichting Mathematisch +Centrum or CWI or Corporation for National Research Initiatives or +CNRI not be used in advertising or publicity pertaining to +distribution of the software without specific, written prior +permission. + +While CWI is the initial source for this software, a modified version +is made available by the Corporation for National Research Initiatives +(CNRI) at the Internet address ftp://ftp.python.org. + +STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH +CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL +DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR +PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + +******************************************************************/ + +/* Buffer object interface */ + +/* Note: the object's structure is private */ + + +extern DL_IMPORT(PyTypeObject) PyBuffer_Type; + +#define PyBuffer_Check(op) ((op)->ob_type == &PyBuffer_Type) + +#define Py_END_OF_BUFFER (-1) + +extern PyObject *PyBuffer_FromObject Py_PROTO((PyObject *base, int offset, int size)); +extern PyObject *PyBuffer_FromReadWriteObject Py_PROTO((PyObject *base, int offset, int size)); + +extern PyObject *PyBuffer_FromMemory Py_PROTO((void *ptr, int size)); +extern PyObject *PyBuffer_FromReadWriteMemory Py_PROTO((void *ptr, int size)); + +extern PyObject *PyBuffer_New Py_PROTO((int size)); + +#ifdef __cplusplus +} +#endif +#endif /* !Py_BUFFEROBJECT_H */ +
