Как получить PyBindGen PyObject для данного указателя C ++? - PullRequest
1 голос
/ 13 июня 2011

Учитывая PyObject, созданный PyBindGen, легко получить указатель на обернутый объект C ++, просто используйте член obj в структуре:

typedef struct {
    PyObject_HEAD
    MyWrappedClass *obj;
    PyObject *inst_dict;
    PyBindGenWrapperFlags flags:8;
} PyMyWrappedClass;

Однако, скажем,У меня есть только MyWrappedClass*, и я хочу получить PyObject (если он есть, он может не существовать), который оборачивает его.Есть ли способ сделать это, не поддерживая свой собственный словарь обратных ссылок?

1 Ответ

0 голосов
/ 13 июня 2011

Я бы добавил это как комментарий, если бы у меня было достаточно репутации, поскольку я не знаком с PyBindGen, но если inst_dict не является словарем обратных указателей (как можно предположить из названия), я думаю, что вы вышлиудачи (если вы не хотите пробираться через кучу Python, чтобы увидеть, есть ли там экземпляры вашего класса).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...