Объекты MemureView¶
Объект memoryview
представляет буферный интерфейс
уровня C как объект Python, который затем может быть передан как любой другой объект.
-
PyObject *
PyMemoryView_FromObject
(PyObject *obj)¶ - Return value: New reference.
Создать объект memoryview из объекта, предоставляющего интерфейс буфера. Если obj поддерживает экспорт буфера с возможностью записи, объект memoryview будет считываться/записываться, в противном случае он может быть доступен только для чтения или считываться/записываться по усмотрению экспортера.
-
PyObject *
PyMemoryView_FromMemory
(char *mem, Py_ssize_t size, int flags)¶ - Return value: New reference.
Создать объект memoryview, используя mem в качестве базового буфера. flags может быть одним из
PyBUF_READ
илиPyBUF_WRITE
.Добавлено в версии 3.3.
-
PyObject *
PyMemoryView_FromBuffer
(Py_buffer *view)¶ - Return value: New reference.
Создать объект memoryview, переносящий заданный view буферной структуры. Для простых байтовых буферов предпочтительной функцией является
PyMemoryView_FromMemory()
.
-
PyObject *
PyMemoryView_GetContiguous
(PyObject *obj, int buffertype, char order)¶ - Return value: New reference.
Создать объект memoryview в смежный чанке памяти (в «C» или «F» ortran порядке) из объекта, определяющего интерфейс буфера. Если память является смежной, объект memoryview указывает на исходную память. В противном случае выполняется копирование, и вид памяти указывает на новый байтовый объект.
-
int
PyMemoryView_Check
(PyObject *obj)¶ Возвращает true, если obj объект является объектом memoryview. В настоящее время создание подклассов
memoryview
запрещено.
-
Py_buffer *
PyMemoryView_GET_BUFFER
(PyObject *mview)¶ Возвращает указатель на закрытую копию памяти буфера экспортера. mview должен быть сущностью memoryview; этот макрос не проверяет его тип, необходимо сделать это самостоятельно или вы рискуете сбоями.
-
Py_buffer *
PyMemoryView_GET_BASE
(PyObject *mview)¶ Возвращает либо указатель на экспортируемый объект, на котором основано memoryview, либо
NULL
, было ли memoryview создано одной из функцийPyMemoryView_FromMemory()
илиPyMemoryView_FromBuffer()
. mview должен быть memoryview сущностью.