J'ai une structure dans une DLL qui contient uniquement des pointeurs de fonction (ie un vtable) avec lesquels j'aimerais interagir avec python (à des fins de test). J'ai un peu de mal à savoir comment faire cela en utilisant ctypes.Interagir avec un struct struct contenant uniquement des pointeurs de fonction utilisant ctypes en python
Ce que j'est:
struct ITest
{
virtual char const *__cdecl GetName() = 0;
virtual void __cdecl SetName(char const *name) = 0;
};
/* Factory function to create 'real' Test object */
extern "C" __declspec(dllexport) struct ITest * CALLCONV make_Test(char const * name);
A 'réel' objet de test remplira le struct selon le cas. Cela est compilé dans une DLL (test.dll). Je voudrais, en python, pouvoir appeler la méthode factory pour récupérer un pointeur sur ma structure de test, puis appeler les pointeurs de fonction contenus dans la structure, mais je n'arrive pas à comprendre comment fonctionnerait en utilisant ctypes. Est-ce que quelqu'un a des indicateurs/exemples de faire quelque chose de similaire ou devrais-je utiliser quelque chose comme SWIG ou Boost?
Merci pour toute aide.