summaryrefslogtreecommitdiff
path: root/py/pykms/pykms.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'py/pykms/pykms.cpp')
-rw-r--r--py/pykms/pykms.cpp25
1 files changed, 4 insertions, 21 deletions
diff --git a/py/pykms/pykms.cpp b/py/pykms/pykms.cpp
index 2199039..7752f19 100644
--- a/py/pykms/pykms.cpp
+++ b/py/pykms/pykms.cpp
@@ -15,32 +15,15 @@ void init_pyvid(py::module &m);
void init_pykmsomap(py::module &m);
#endif
-class PyPageFlipHandlerBase : PageFlipHandlerBase
-{
-public:
- using PageFlipHandlerBase::PageFlipHandlerBase;
-
- virtual void handle_page_flip(uint32_t frame, double time)
- {
- PYBIND11_OVERLOAD_PURE(
- void, /* Return type */
- PageFlipHandlerBase, /* Parent class */
- handle_page_flip, /* Name of function */
- frame, time
- );
- }
-};
-
PYBIND11_PLUGIN(pykms) {
py::module m("pykms", "kms bindings");
init_pykmsbase(m);
- py::class_<PyPageFlipHandlerBase>(m, "PageFlipHandlerBase")
- .alias<PageFlipHandlerBase>()
- .def(py::init<>())
- .def("handle_page_flip", &PageFlipHandlerBase::handle_page_flip)
- ;
+ m.def("__ob_unpack_helper", [](uint64_t v) {
+ // AtomicReq::commit or Crtc::page_flip added a ref, so we can use borrowed = false
+ return py::object((PyObject*)v, false);
+ });
init_pykmstest(m);