diff --git a/include/libdap_chain_type_python.h b/include/libdap_chain_type_python.h new file mode 100644 index 0000000000000000000000000000000000000000..9693dc8ffb1830cb78c7e69d73f893b6c9f1d157 --- /dev/null +++ b/include/libdap_chain_type_python.h @@ -0,0 +1,64 @@ +#include "Python.h" +#include "dap_chain.h" + +typedef struct PyChainType{ + PyObject_HEAD +} PyChainTypeObject; + +PyObject* CHAIN_TYPE_FIRST_PY(); +PyObject* CHAIN_TYPE_TOKEN_PY(); +PyObject* CHAIN_TYPE_EMISSION_PY(); +PyObject* CHAIN_TYPE_TX_PY(); +PyObject* CHAIN_TYPE_LAST_PY(); + +static PyMethodDef DapChainTypeMethods[] = { + {"CHAIN_TYPE_FIRST", (PyCFunction)CHAIN_TYPE_FIRST_PY, METH_NOARGS|METH_STATIC, ""}, + {"CHAIN_TYPE_TOKEN", (PyCFunction)CHAIN_TYPE_TOKEN_PY, METH_NOARGS|METH_STATIC, ""}, + {"CHAIN_TYPE_EMISSION", (PyCFunction)CHAIN_TYPE_EMISSION_PY, METH_NOARGS|METH_STATIC, ""}, + {"CHAIN_TYPE_TX", (PyCFunction)CHAIN_TYPE_TX_PY, METH_NOARGS|METH_STATIC, ""}, + {"CHAIN_TYPE_LAST", (PyCFunction)CHAIN_TYPE_LAST_PY, METH_NOARGS|METH_STATIC, ""}, + {NULL, NULL, 0, NULL} +}; + +static PyTypeObject dapChainTypeObject_dapChainTypeType = { + PyVarObject_HEAD_INIT(NULL, 0) + "CellFrame.ChainType", /* tp_name */ + sizeof(PyChainTypeObject), /* tp_basicsize */ + 0, /* tp_itemsize */ + 0, /* tp_dealloc */ + 0, /* tp_print */ + 0, /* tp_getattr */ + 0, /* tp_setattr */ + 0, /* tp_reserved */ + 0, /* tp_repr */ + 0, /* tp_as_number */ + 0, /* tp_as_sequence */ + 0, /* tp_as_mapping */ + 0, /* tp_hash */ + 0, /* tp_call */ + 0, /* tp_str */ + 0, /* tp_getattro */ + 0, /* tp_setattro */ + 0, /* tp_as_buffer */ + Py_TPFLAGS_DEFAULT | + Py_TPFLAGS_BASETYPE, /* tp_flags */ + "Chain type objects", /* tp_doc */ + 0, /* tp_traverse */ + 0, /* tp_clear */ + 0, /* tp_richcompare */ + 0, /* tp_weaklistoffset */ + 0, /* tp_iter */ + 0, /* tp_iternext */ + DapChainTypeMethods, /* tp_methods */ + 0, /* tp_members */ + 0, /* tp_getset */ + 0, /* tp_base */ + 0, /* tp_dict */ + 0, /* tp_descr_get */ + 0, /* tp_descr_set */ + 0, /* tp_dictoffset */ + 0, /* tp_init */ + 0, /* tp_alloc */ + PyType_GenericNew, /* tp_new */ + +}; diff --git a/src/libdap_chain_type_python.c b/src/libdap_chain_type_python.c new file mode 100644 index 0000000000000000000000000000000000000000..7ba65602d0f11cee60556e805b723e319cfe758d --- /dev/null +++ b/src/libdap_chain_type_python.c @@ -0,0 +1,17 @@ +#include "libdap_chain_type_python.h" + +PyObject* CHAIN_TYPE_FIRST_PY(){ + return PyLong_FromLong(CHAIN_TYPE_FIRST); +} +PyObject* CHAIN_TYPE_TOKEN_PY(){ + return PyLong_FromLong(CHAIN_TYPE_TOKEN); +} +PyObject* CHAIN_TYPE_EMISSION_PY(){ + return PyLong_FromLong(CHAIN_TYPE_EMISSION); +} +PyObject* CHAIN_TYPE_TX_PY(){ + return PyLong_FromLong(CHAIN_TYPE_TX); +} +PyObject* CHAIN_TYPE_LAST_PY(){ + return PyLong_FromLong(CHAIN_TYPE_LAST); +}