Интеграция pygame с модулем C

В моем каталоге Python2_6/include есть папка с заголовками pygame. Я предположил, что мой модуль Python C может получить доступ к материалам pygame непосредственно в C. Так ли это? Как интегрировать модуль C, который хочет использовать pygame, со скриптом python, использующим pygame? Сейчас мой мозг видит:

pygame ‹-- MyCModule ‹-- MyScript --> pygame

т.е. Два экземпляра pygame. Так можно ли их интегрировать, чтобы мой модуль и мое приложение использовали один и тот же экземпляр? Почему в моем каталоге python include есть заголовки pygame, могу ли я как-то их использовать для прямого доступа?

Спасибо за любую помощь.


person Dogman    schedule 31.01.2010    source источник


Ответы (2)


Я предположил, что мой модуль Python C может получить доступ к материалам pygame непосредственно в C. Так ли это?

Нет, это, скорее всего, просто потому, что нужно было скомпилировать расширение pygame для Python.

Я не понимаю, что вы имеете в виду, когда говорите, что видите 2 экземпляра pygame. Существует столько экземпляров, сколько вы создаете, не больше и не меньше. Если у вас есть скрипт, который создает объекты pygame, и ваше расширение также создает объекты pygame, то, конечно, у вас будет 2 набора объектов. Как автор приложения, вы должны решить, какая его часть будет нести ответственность за взаимодействие с pygame. Если другой части требуется доступ к этим объектам pygame, вы передаете их в качестве аргументов.

person Kylotan    schedule 01.02.2010

См. этот вопрос. Код, приведенный в принятом ответе, проверяет, был ли уже загружен Pygame, поэтому у вас не будет двух наборов материалов Pygame.

Кроме того, эти заголовки не предназначены для пользовательских модулей C. Они, вероятно, необходимы для некоторых вещей SDL.

person Javier    schedule 21.02.2010