/opt/alt/python311/include/python3.11
/* Memory view object. In Python this is available as "memoryview". */ #ifndef Py_MEMORYOBJECT_H #define Py_MEMORYOBJECT_H #ifdef __cplusplus extern "C" { #endif #ifndef Py_LIMITED_API PyAPI_DATA(PyTypeObject) _PyManagedBuffer_Type; #endif PyAPI_DATA(PyTypeObject) PyMemoryView_Type; #define PyMemoryView_Check(op) Py_IS_TYPE(op, &PyMemoryView_Type) #ifndef Py_LIMITED_API /* Get a pointer to the memoryview's private copy of the exporter's buffer. */ #define PyMemoryView_GET_BUFFER(op) (&((PyMemoryViewObject *)(op))->view) /* Get a pointer to the exporting object (this may be NULL!). */ #define PyMemoryView_GET_BASE(op) (((PyMemoryViewObject *)(op))->view.obj) #endif PyAPI_FUNC(PyObject *) PyMemoryView_FromObject(PyObject *base); #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 PyAPI_FUNC(PyObject *) PyMemoryView_FromMemory(char *mem, Py_ssize_t size, int flags); #endif #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030b0000 PyAPI_FUNC(PyObject *) PyMemoryView_FromBuffer(const Py_buffer *info); #endif PyAPI_FUNC(PyObject *) PyMemoryView_GetContiguous(PyObject *base, int buffertype, char order); /* The structs are declared here so that macros can work, but they shouldn't be considered public. Don't access their fields directly, use the macros and functions instead! */ #ifndef Py_LIMITED_API #define _Py_MANAGED_BUFFER_RELEASED 0x001 /* access to exporter blocked */ #define _Py_MANAGED_BUFFER_FREE_FORMAT 0x002 /* free format */ typedef struct { PyObject_HEAD int flags; /* state flags */ Py_ssize_t exports; /* number of direct memoryview exports */ Py_buffer master; /* snapshot buffer obtained from the original exporter */ } _PyManagedBufferObject; /* memoryview state flags */ #define _Py_MEMORYVIEW_RELEASED 0x001 /* access to master buffer blocked */ #define _Py_MEMORYVIEW_C 0x002 /* C-contiguous layout */ #define _Py_MEMORYVIEW_FORTRAN 0x004 /* Fortran contiguous layout */ #define _Py_MEMORYVIEW_SCALAR 0x008 /* scalar: ndim = 0 */ #define _Py_MEMORYVIEW_PIL 0x010 /* PIL-style layout */ typedef struct { PyObject_VAR_HEAD _PyManagedBufferObject *mbuf; /* managed buffer */ Py_hash_t hash; /* hash value for read-only views */ int flags; /* state flags */ Py_ssize_t exports; /* number of buffer re-exports */ Py_buffer view; /* private copy of the exporter's view */ PyObject *weakreflist; Py_ssize_t ob_array[1]; /* shape, strides, suboffsets */ } PyMemoryViewObject; #endif #ifdef __cplusplus } #endif #endif /* !Py_MEMORYOBJECT_H */
.
Edit
..
Edit
Python.h
Edit
abstract.h
Edit
bltinmodule.h
Edit
boolobject.h
Edit
bytearrayobject.h
Edit
bytesobject.h
Edit
ceval.h
Edit
codecs.h
Edit
compile.h
Edit
complexobject.h
Edit
cpython
Edit
datetime.h
Edit
descrobject.h
Edit
dictobject.h
Edit
dynamic_annotations.h
Edit
enumobject.h
Edit
errcode.h
Edit
exports.h
Edit
fileobject.h
Edit
fileutils.h
Edit
floatobject.h
Edit
frameobject.h
Edit
genericaliasobject.h
Edit
import.h
Edit
internal
Edit
intrcheck.h
Edit
iterobject.h
Edit
listobject.h
Edit
longobject.h
Edit
marshal.h
Edit
memoryobject.h
Edit
methodobject.h
Edit
modsupport.h
Edit
moduleobject.h
Edit
object.h
Edit
objimpl.h
Edit
opcode.h
Edit
osdefs.h
Edit
osmodule.h
Edit
patchlevel.h
Edit
py_curses.h
Edit
pybuffer.h
Edit
pycapsule.h
Edit
pyconfig-64.h
Edit
pyconfig.h
Edit
pydtrace.h
Edit
pyerrors.h
Edit
pyexpat.h
Edit
pyframe.h
Edit
pyhash.h
Edit
pylifecycle.h
Edit
pymacconfig.h
Edit
pymacro.h
Edit
pymath.h
Edit
pymem.h
Edit
pyport.h
Edit
pystate.h
Edit
pystrcmp.h
Edit
pystrtod.h
Edit
pythonrun.h
Edit
pythread.h
Edit
pytypedefs.h
Edit
rangeobject.h
Edit
setobject.h
Edit
sliceobject.h
Edit
structmember.h
Edit
structseq.h
Edit
sysmodule.h
Edit
token.h
Edit
traceback.h
Edit
tracemalloc.h
Edit
tupleobject.h
Edit
typeslots.h
Edit
unicodeobject.h
Edit
warnings.h
Edit
weakrefobject.h
Edit