src_c/rwobject.c

此扩展模块实现了将类似于对象的Python文件包装在 SDL_RWops 用于SDL文件访问的结构。

头文件:src_c/Include/pygame.h

SDL_RWops *pgRWops_FromObject(PyObject *obj)

将填充的SDL_RWop结构返回给Access obj 。如果 obj 是一个字符串,然后让SDL打开它命名的文件。否则,如果 obj 是一个类似于Python文件的对象,则使用其 readwriteseektell ,以及 close 方法:研究方法。如果线程可用,则在调用任何 obj 方法:研究方法。发生错误时,引发一个Python异常并返回 NULL

SDL_RWops *pgRWops_FromFileObject(PyObject *obj)

返回一个填充的SDL_RWop结构以访问类似Python文件的对象 obj 。使用其 readwriteseektell ,以及 close 方法:研究方法。如果线程可用,则在调用任何 obj 方法:研究方法。发生错误时,引发一个Python异常并返回 NULL

int pgRWops_IsFileObject(SDL_RWops *rw)

如果满足以下条件,则返回TRUE rw 是由返回的类似于Python文件的对象包装 pgRWops_FromObject()pgRWops_FromFileObject()

char *pgRWops_GetFileExtension(SDL_RWops *rw)

返回一个字符串,该字符串包含加载到SDL_RWops对象中的原始文件的文件扩展名,如果SDL_RWops对象来自文件对象,则返回NULL。

int pgRWops_ReleaseObject(SDL_RWops *context)

释放SDL_RWOPS结构。如果它附加到类似Python文件的对象,则递减其引用计数。否则,关闭文件句柄。如果成功,则返回0。出错时,引发一个Python异常并返回一个负值。

PyObject *pg_EncodeFilePath(PyObject *obj, PyObject *eclass)

返回文件路径 obj 作为为操作系统正确编码的字节字符串。编码的文件路径中禁止使用空字节。发生错误时,引发一个Python异常并返回 NULL ,使用 大理石 作为异常类型,如果它不是 NULL 。如果 objNULL 假设已经引发了异常,并将其传递。

PyObject *pg_EncodeString(PyObject *obj, const char *encoding, const char *errors, PyObject *eclass)

返回字符串 obj 作为编码的字节字符串。C字符串参数 编码错误 与用于的相同 PyUnicode_AsEncodedString() 。发生错误时,引发一个Python异常并返回 NULL ,使用 大理石 作为异常类型,如果它不是 NULL 。如果 objNULL 假设已经引发了异常,并将其传递。




Edit on GitHub