From fab9bb700372008130e5026fa9fe5fd22ac6ec4e Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Tue, 3 Oct 2017 12:32:52 +0300 Subject: Rework framebuffer classes Drop (I)MappedFramebuffer, as it doesn't really provide any value, and have most of the methods be present in IFramebuffer with default exception throwing implementation. This gives us simpler way to use the framebuffers, as almost always we can just use a pointer to IFramebuffer. --- py/pykms/pykmsbase.cpp | 10 +++++----- py/pykms/pykmsomap.cpp | 2 +- py/pykms/pykmsutil.cpp | 10 +++++----- 3 files changed, 11 insertions(+), 11 deletions(-) (limited to 'py/pykms') diff --git a/py/pykms/pykmsbase.cpp b/py/pykms/pykmsbase.cpp index e53fe54..258167a 100644 --- a/py/pykms/pykmsbase.cpp +++ b/py/pykms/pykmsbase.cpp @@ -102,12 +102,12 @@ void init_pykmsbase(py::module &m) py::class_(m, "Framebuffer", py::base()) ; - py::class_(m, "MappedFramebuffer", py::base()) - .def_property_readonly("width", &MappedFramebuffer::width) - .def_property_readonly("height", &MappedFramebuffer::height) + py::class_(m, "Framebuffer", py::base()) + .def_property_readonly("width", &Framebuffer::width) + .def_property_readonly("height", &Framebuffer::height) ; - py::class_(m, "DumbFramebuffer", py::base()) + py::class_(m, "DumbFramebuffer", py::base()) .def(py::init(), py::keep_alive<1, 2>()) // Keep Card alive until this is destructed .def(py::init(), @@ -119,7 +119,7 @@ void init_pykmsbase(py::module &m) .def("offset", &DumbFramebuffer::offset) ; - py::class_(m, "ExtFramebuffer", py::base()) + py::class_(m, "ExtFramebuffer", py::base()) .def(py::init, vector, vector>(), py::keep_alive<1, 2>()) // Keep Card alive until this is destructed ; diff --git a/py/pykms/pykmsomap.cpp b/py/pykms/pykmsomap.cpp index 0c3a8ee..2662a18 100644 --- a/py/pykms/pykmsomap.cpp +++ b/py/pykms/pykmsomap.cpp @@ -14,7 +14,7 @@ void init_pykmsomap(py::module &m) .def(py::init<>()) ; - py::class_ omapfb(m, "OmapFramebuffer", py::base()); + py::class_ omapfb(m, "OmapFramebuffer", py::base()); // 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_(omapfb, "Flags") diff --git a/py/pykms/pykmsutil.cpp b/py/pykms/pykmsutil.cpp index a5a6041..10dee81 100644 --- a/py/pykms/pykmsutil.cpp +++ b/py/pykms/pykmsutil.cpp @@ -47,16 +47,16 @@ void init_pykmstest(py::module &m) .value("BT709_Full", YUVType::BT709_Full) ; - // Use lambdas to handle IMappedFramebuffer - m.def("draw_test_pattern", [](MappedFramebuffer& fb, YUVType yuvt) { draw_test_pattern(fb, yuvt); }, + // Use lambdas to handle IFramebuffer + m.def("draw_test_pattern", [](Framebuffer& fb, YUVType yuvt) { draw_test_pattern(fb, yuvt); }, py::arg("fb"), py::arg("yuvt") = YUVType::BT601_Lim); - m.def("draw_color_bar", [](MappedFramebuffer& fb, int old_xpos, int xpos, int width) { + m.def("draw_color_bar", [](Framebuffer& fb, int old_xpos, int xpos, int width) { draw_color_bar(fb, old_xpos, xpos, width); } ); - m.def("draw_rect", [](MappedFramebuffer& fb, uint32_t x, uint32_t y, uint32_t w, uint32_t h, RGB color) { + m.def("draw_rect", [](Framebuffer& fb, uint32_t x, uint32_t y, uint32_t w, uint32_t h, RGB color) { draw_rect(fb, x, y, w, h, color); } ); - m.def("draw_text", [](MappedFramebuffer& fb, uint32_t x, uint32_t y, const string& str, RGB color) { + m.def("draw_text", [](Framebuffer& fb, uint32_t x, uint32_t y, const string& str, RGB color) { draw_text(fb, x, y, str, color); } ); } -- cgit v1.2.3