Mam proste wyliczenia w C w myenum.h:owijania C-enum w moduł Pythona z Swig
enum MyEnum {
ONE,
TWO,
THREE
};
Problem polega na tym, że kiedy na mapie, aby Python, można uzyskać dostęp tylko za pośrednictwem enum nazwa modułu, a nie przez MyEnum. Tak więc wartości JEDNEGO, DWÓCH, TRZECICH są zawarte w innych zdefiniowanych przeze mnie funkcjach, zamiast być zawarte w MyEnum.
Mój plik api.i jest:
%module api
%{
#include "myenum.h"
%}
%include "myenum.h"
wygenerować z SWIG
swig -builtin -python api.i
i zaimportować je w Pythonie
import _api
A teraz muszę używać wartości enum z modułu _api:
_api.ONE
_api.TWO
_api.THREE
Chociaż chcę używać ich jak
_api.MyEnum.ONE
_api.MyEnum.TWO
_api.MyEnum.THREE
Czy ktoś wie, w jaki sposób można to osiągnąć?
Thd Moduł _api jest prywatny. Nie powinieneś używać go bezpośrednio. – Flexo