X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=module_sigrokdecode.c;h=900f7fd105098f532c6a1d158a31e218f3c670ee;hp=eca8118862f3411212356002f65ec136234d0055;hb=14b42dad483c98b3dbf7b389e60b9cede1cd122f;hpb=d0a0ed032e0120140a28e93ac42753786bf0087b diff --git a/module_sigrokdecode.c b/module_sigrokdecode.c index eca8118..900f7fd 100644 --- a/module_sigrokdecode.c +++ b/module_sigrokdecode.c @@ -21,18 +21,17 @@ #include "sigrokdecode-internal.h" #include "config.h" +/* type_decoder.c */ +extern SRD_PRIV PyTypeObject srd_Decoder_type; -/* lives in type_decoder.c */ -extern PyTypeObject srd_Decoder_type; +/* type_logic.c */ +extern SRD_PRIV PyTypeObject srd_logic_type; -/* lives in type_logic.c */ -extern PyTypeObject srd_logic_type; - - -/* When initialized, a reference to this module inside the python interpreter +/* + * When initialized, a reference to this module inside the Python interpreter * lives here. */ -PyObject *mod_sigrokdecode = NULL; +SRD_PRIV PyObject *mod_sigrokdecode = NULL; static struct PyModuleDef sigrokdecode_module = { PyModuleDef_HEAD_INIT, @@ -41,12 +40,11 @@ static struct PyModuleDef sigrokdecode_module = { .m_size = -1, }; - -PyMODINIT_FUNC PyInit_sigrokdecode(void) +SRD_PRIV PyMODINIT_FUNC PyInit_sigrokdecode(void) { PyObject *mod; - /* tp_new needs to be assigned here for compiler portability */ + /* tp_new needs to be assigned here for compiler portability. */ srd_Decoder_type.tp_new = PyType_GenericNew; if (PyType_Ready(&srd_Decoder_type) < 0) return NULL; @@ -57,25 +55,25 @@ PyMODINIT_FUNC PyInit_sigrokdecode(void) mod = PyModule_Create(&sigrokdecode_module); Py_INCREF(&srd_Decoder_type); - if (PyModule_AddObject(mod, "Decoder", (PyObject *)&srd_Decoder_type) == -1) + if (PyModule_AddObject(mod, "Decoder", + (PyObject *)&srd_Decoder_type) == -1) return NULL; Py_INCREF(&srd_logic_type); - if (PyModule_AddObject(mod, "srd_logic", (PyObject *)&srd_logic_type) == -1) + if (PyModule_AddObject(mod, "srd_logic", + (PyObject *)&srd_logic_type) == -1) return NULL; /* expose output types as symbols in the sigrokdecode module */ - if(PyModule_AddObject(mod, "OUTPUT_ANN", - PyLong_FromLong(SRD_OUTPUT_ANN)) == -1) + if (PyModule_AddIntConstant(mod, "OUTPUT_ANN", SRD_OUTPUT_ANN) == -1) return NULL; - if(PyModule_AddObject(mod, "OUTPUT_PROTO", - PyLong_FromLong(SRD_OUTPUT_PROTO)) == -1) + if (PyModule_AddIntConstant(mod, "OUTPUT_PROTO", + SRD_OUTPUT_PROTO) == -1) return NULL; - if(PyModule_AddObject(mod, "OUTPUT_BINARY", - PyLong_FromLong(SRD_OUTPUT_BINARY)) == -1) + if (PyModule_AddIntConstant(mod, "OUTPUT_BINARY", + SRD_OUTPUT_BINARY) == -1) return NULL; mod_sigrokdecode = mod; return mod; } -