From 2db39869444ea37111134e027cfd839954653a07 Mon Sep 17 00:00:00 2001 From: scawful Date: Wed, 7 Aug 2024 11:26:15 -0400 Subject: [PATCH] remove yaze_py header, move all to src --- src/py/yaze_py.cc | 27 ++++++++++++++++++++++----- src/py/yaze_py.h | 21 --------------------- 2 files changed, 22 insertions(+), 26 deletions(-) delete mode 100644 src/py/yaze_py.h diff --git a/src/py/yaze_py.cc b/src/py/yaze_py.cc index 9d426a1b..c33e914a 100644 --- a/src/py/yaze_py.cc +++ b/src/py/yaze_py.cc @@ -1,11 +1,13 @@ -#include "yaze_py.h" - #include #include +#include "base/snes_color.h" +#include "base/sprite.h" #include "yaze.h" +static PyObject *yaze_init(PyObject *self, PyObject *args); + BOOST_PYTHON_MODULE(yaze) { using namespace boost::python; def("yaze_init", yaze_init); @@ -15,9 +17,24 @@ BOOST_PYTHON_MODULE(yaze) { .def_readonly("data", &Rom::data) .def_readonly("size", &Rom::size) .def_readonly("impl", &Rom::impl); -} -static PyObject *SpamError; +/** + * Python C API Example, in case I need more functionality than Boost.Python + */ +static PyMethodDef YazeMethods[] = { + {"system", yaze_init, METH_VARARGS, "Initialize the yaze lib."}, + {NULL, NULL, 0, NULL} /* Sentinel */ +}; + +static struct PyModuleDef yaze_module = {PyModuleDef_HEAD_INIT, + "yaze", // Module title + NULL, // Documentation + -1, // Interpreter state size + YazeMethods}; + +// PyMODINIT_FUNC PyInit_yaze(void) { return PyModule_Create(&yaze_module); } + +static PyObject *YazeError; static PyObject *yaze_init(PyObject *self, PyObject *args) { const char *command; @@ -26,7 +43,7 @@ static PyObject *yaze_init(PyObject *self, PyObject *args) { if (!PyArg_ParseTuple(args, "s", &command)) return NULL; sts = system(command); if (sts < 0) { - PyErr_SetString(SpamError, "System command failed"); + PyErr_SetString(YazeError, "System command failed"); return NULL; } return PyLong_FromLong(sts); diff --git a/src/py/yaze_py.h b/src/py/yaze_py.h deleted file mode 100644 index 9d6c459b..00000000 --- a/src/py/yaze_py.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef YAZE_PYTHON_H -#define YAZE_PYTHON_H - -#include - -static PyObject *yaze_init(PyObject *self, PyObject *args); - -static PyMethodDef YazeMethods[] = { - {"system", yaze_init, METH_VARARGS, "Initialize the yaze lib."}, - {NULL, NULL, 0, NULL} /* Sentinel */ -}; - -static struct PyModuleDef yaze_module = {PyModuleDef_HEAD_INIT, - "yaze", // Module title - NULL, // Documentation - -1, // Interpreter state size - YazeMethods}; - -// PyMODINIT_FUNC PyInit_yaze(void) { return PyModule_Create(&yaze_module); } - -#endif // YAZE_PYTHON_H \ No newline at end of file