src_c/base.c

该扩展模块定义了启动和停止SDL的通用例程,以及在pyGame中其他地方使用的各种转换例程。

C标头:src_c/Include/pygame.h

PyObject *pgExc_SDLError

这是 pygame.error ,用于引发SDL错误的异常类型。

int pg_mod_autoinit(const char *modname)

Inits是一个pyGame模块,其名称为 modname 返回 1 关于成功, 0 On Error,设置了PYTHON错误。

void pg_mod_autoquit(const char *modname)

退出一个名为 modname

void pg_RegisterQuit(void (*f)(void))

寄存器功能 f 作为对PyGame终止的回调。可以注册多个功能。函数的调用顺序与它们注册的顺序相反。

int pg_IntFromObj(PyObject *obj, int *val)

转换类似数字的对象 obj 到C,int,并放在论点中 val 。返回 1 关于成功,否则 0 。不会引发任何Python异常。

int pg_IntFromObjIndex(PyObject *obj, int index, int *val)

在位置上转换类似对象的数字 i 按顺序 obj 到C,int,并放在论点中 val 。返回 1 关于成功, 0 在失败时。不会引发任何Python异常。

int pg_TwoIntsFromObj(PyObject *obj, int *val1, int *v2)

在长度为2的序列中转换两个类似数字的对象 obj 到C、int并放在参数中 val1val2 分别为。返回 1 关于成功, 0 在失败时。不会引发任何Python异常。

int pg_FloatFromObj(PyObject *obj, float *val)

转换类似数字的对象 obj TO C浮点型并放置在参数中 val 。退货 1 关于成功, 0 在失败时。不会引发任何Python异常。

int pg_FloatFromObjIndex(PyObject *obj, int index, float *val)

在位置上转换类似对象的数字 i 按顺序 obj TO C浮点型并放置在参数中 val 。返回 1 关于成功,否则 0 。不会引发任何Python异常。

int pg_TwoFloatsFromObj(PyObject *obj, float *val1, float *val2)

在长度为2的序列中转换两个类似数字的对象 obj TO C浮点型并置于参数中 val1val2 分别为。返回 1 关于成功,否则 0 。不会引发任何Python异常。

int pg_UintFromObj(PyObject *obj, Uint32 *val)

转换类似数字的对象 obj 设置为无符号32位整数并放入参数 val 。返回 1 关于成功,否则 0 。不会引发任何Python异常。

int pg_UintFromObjIndex(PyObject *obj, int _index, Uint32 *val)

在位置上转换类似对象的数字 i 按顺序 obj 设置为无符号32位整数并放入参数 val 。返回 1 关于成功,否则 0 。不会引发任何Python异常。

int pg_RGBAFromObj(PyObject *obj, Uint8 *RGBA)

转换对象表示的颜色 obj 变成红、绿、蓝、阿尔法长度为4 C的阵列 RGBA 。对象必须是一个长度为3或4的数字序列,其值介于0和255之间(包括0和255)。对于长度为3的序列,假定alpha值为255。返回 1 关于成功, 0 否则的话。不会引发任何Python异常。

type pg_buffer
Py_buffer view

标准缓冲区描述

PyObject *consumer

保存缓冲区的对象

pybuffer_releaseproc release_buffer

缓冲区释放回调。

PyObject *pgExc_BufferError

任何与PG_BUFFER相关的错误引发的Python异常类型。

PyObject *pgBuffer_AsArrayInterface(Py_buffer *view_p)

返回缓冲区的Python数组接口对象表示形式 view_p 。失败时,引发一个Python异常并返回 NULL

PyObject *pgBuffer_AsArrayStruct(Py_buffer *view_p)

返回缓冲区的Python数组结构对象表示形式 view_p 。失败时,引发一个Python异常并返回 NULL

int pgObject_GetBuffer(PyObject *obj, pg_buffer *pg_view_p, int flags)

请求对象的缓冲区 obj 。论据 旗帜 是PyBUF选项。在中返回缓冲区描述 pg_view_p 。对象可以支持Python缓冲区接口、NumPy数组接口或NumPy数组结构接口。返回 0 如果成功,则引发一个Python异常并返回 -1 在失败的时候。

void pgBuffer_Release(Pg_buffer *pg_view_p)

发布电子游戏 pg_view_p 缓冲。

int pgDict_AsBuffer(Pg_buffer *pg_view_p, PyObject *dict, int flags)

编写数组接口字典缓冲区描述 dict 转换为一个PYGAME缓冲区描述结构 pg_view_p 。这个 旗帜 PyBUF选项描述所请求的视图类型。返回 0 在成功时,或引发一个Python异常并返回 -1 在失败的时候。

void import_pygame_base()

将pygame.base模块C API导入到扩展模块中。如果失败,则引发一个Python异常。

SDL_Window *pg_GetDefaultWindow(void)

返回由pygame.display.set_mode()调用创建的PyGame默认SDL窗口,或者 NULL

可用性:SDL2。

void pg_SetDefaultWindow(SDL_Window *win)

用以下内容替换PyGame默认窗口 win 。上一个窗口(如果有)将被销毁。论据 win 可能是 NULL 。此函数由pygame.display.set_mode()调用。

可用性:SDL2。

pgSurfaceObject *pg_GetDefaultWindowSurface(void)

返回对PYGAME默认窗口显示表面的借用引用,或者 NULL 如果没有打开任何默认窗口。

可用性:SDL2。

void pg_SetDefaultWindowSurface(pgSurfaceObject *screen)

将PYGAME默认显示表面替换为Object 筛网 。上一个曲面对象(如果有)将无效。论据 筛网 可能是 NULL 。此函数由pygame.display.set_mode()调用。

可用性:SDL2。




Edit on GitHub