summaryrefslogtreecommitdiff
path: root/py
diff options
context:
space:
mode:
Diffstat (limited to 'py')
-rw-r--r--py/pykms/pykmsomap.cpp19
-rwxr-xr-xpy/tests/rottest.py2
2 files changed, 15 insertions, 6 deletions
diff --git a/py/pykms/pykmsomap.cpp b/py/pykms/pykmsomap.cpp
index bad20fb..2074092 100644
--- a/py/pykms/pykmsomap.cpp
+++ b/py/pykms/pykmsomap.cpp
@@ -14,13 +14,22 @@ void init_pykmsomap(py::module &m)
.def(py::init<>())
;
- py::class_<OmapFramebuffer>(m, "OmapFramebuffer", py::base<MappedFramebuffer>())
- .def(py::init<OmapCard&, uint32_t, uint32_t, const string&, bool>(),
+ py::class_<OmapFramebuffer> omapfb(m, "OmapFramebuffer", py::base<MappedFramebuffer>());
+
+ // XXX we should use py::arithmetic() here to support or and and operators, but it's not supported in the pybind11 we use
+ py::enum_<OmapFramebuffer::Flags>(omapfb, "Flags")
+ .value("None", OmapFramebuffer::Flags::None)
+ .value("Tiled", OmapFramebuffer::Flags::Tiled)
+ .export_values()
+ ;
+
+ omapfb
+ .def(py::init<OmapCard&, uint32_t, uint32_t, const string&, OmapFramebuffer::Flags>(),
py::keep_alive<1, 2>(), // Keep Card alive until this is destructed
- py::arg("card"), py::arg("width"), py::arg("height"), py::arg("fourcc"), py::arg("tiled") = false)
- .def(py::init<OmapCard&, uint32_t, uint32_t, PixelFormat, bool>(),
+ py::arg("card"), py::arg("width"), py::arg("height"), py::arg("fourcc"), py::arg("flags") = OmapFramebuffer::None)
+ .def(py::init<OmapCard&, uint32_t, uint32_t, PixelFormat, OmapFramebuffer::Flags>(),
py::keep_alive<1, 2>(), // Keep OmapCard alive until this is destructed
- py::arg("card"), py::arg("width"), py::arg("height"), py::arg("pixfmt"), py::arg("tiled") = false)
+ py::arg("card"), py::arg("width"), py::arg("height"), py::arg("pixfmt"), py::arg("flags") = OmapFramebuffer::None)
.def_property_readonly("format", &OmapFramebuffer::format)
.def_property_readonly("num_planes", &OmapFramebuffer::num_planes)
.def("fd", &OmapFramebuffer::prime_fd)
diff --git a/py/tests/rottest.py b/py/tests/rottest.py
index d81a962..8988134 100755
--- a/py/tests/rottest.py
+++ b/py/tests/rottest.py
@@ -96,7 +96,7 @@ fb_h = 150
x_scale = 1
y_scale = 1
-fb = pykms.OmapFramebuffer(card, fb_w, fb_h, "NV12", tiled = True);
+fb = pykms.OmapFramebuffer(card, fb_w, fb_h, "NV12", flags = pykms.OmapFramebuffer.Tiled);
#fb = pykms.DumbFramebuffer(card, fb_w, fb_h, "NV12")
pykms.draw_test_pattern(fb);