検索して検索しましたが、必要なことを実行する例が見つかりませんでした。
Pythonで「列挙型」を表現するには
どうすればよいですか?
ここではSOですが、ctypes.Structureはカバーしていません。SOの ctypes.Structure で Using enumsも見つけまし
たが、よく知らないポインターが含まれています。
Python ファイルの ctypes.Structure で使用する必要がある typedef 列挙型を含むヘッダー ファイルがあります。
C++ ヘッダー ファイル:
typedef enum {
ID_UNUSED,
ID_DEVICE_NAME,
ID_SCSI,
ID_DEVICE_NUM,
} id_type_et;
Pythonファイル(私が現在行っている方法):
class IdTypeEt(ctypes.Structure):
_pack_ = 1
_fields_ = [ ("ID_UNUSED", ctypes.c_int32),
("ID_DEVICE_NAME", ctypes.c_char*64),
("ID_SCSI", ctypes.c_int32),
("ID_DEVICE_NUM", ctypes.c_int32) ]
アドバイスをいただければ幸いです。シンプルであればあるほど良い。