##### pygame documentation | Pygame Home || Help Contents || Reference Index Most useful stuff: Color | display | draw | event | font | image | key | locals | mixer | mouse | Rect | Surface | time | music | pygame Advanced stuff: cursors | joystick | mask | sprite | transform | BufferProxy | freetype | gfxdraw | midi | PixelArray | pixelcopy | sndarray | surfarray | math Other: camera | controller | examples | fastevent | scrap | tests | touch | version

## src_c/bufferproxy.c

This extension module defines Python type `pygame.BufferProxy` pygame object to export a surface buffer through an array protocol.

Header file: src_c/include/pygame_bufferproxy.h

PyTypeObject *pgBufproxy_Type

  The pygame buffer proxy object type pygame.BufferProxy.

int pgBufproxy_Check(PyObject *x)

  Return true if Python object x is a `pygame.BufferProxy` instance, false otherwise. This will return false on `pygame.BufferProxy` subclass instances as well.

PyObject *pgBufproxy_New(PyObject *obj, getbufferproc get_buffer)

  Return a new `pygame.BufferProxy` instance. Argument obj is the Python object that has its data exposed. It may be `NULL`. Argument get_buffer is the `pg_buffer` get callback. It must not be `NULL`. On failure raise a Python error and return `NULL`.

PyObject *pgBufproxy_GetParent(PyObject *obj)

  Return the Python object wrapped by buffer proxy obj. Argument obj must not be `NULL`. On failure, raise a Python error and return `NULL`.

int pgBufproxy_Trip(PyObject *obj)

  Cause the buffer proxy object obj to create a `pg_buffer` view of its parent. Argument obj must not be `NULL`. Return `0` on success, otherwise raise a Python error and return `-1`.

Edit on GitHub