.def("read",static_cast<void(GL::AbstractFramebuffer::*)(constRange2Di&,constMutableImageView2D&)>(&GL::AbstractFramebuffer::read),"Read block of pixels from the framebuffer to an image view")
.def("read",static_cast<void(GL::AbstractFramebuffer::*)(constRange2Di&,Image2D&)>(&GL::AbstractFramebuffer::read),"Read block of pixels from the framebuffer to an image")
.def("read",static_cast<void(GL::AbstractFramebuffer::*)(constRange2Di&,constMutableImageView2D&)>(&GL::AbstractFramebuffer::read),"Read a block of pixels from the framebuffer to an image view",py::arg("rectangle"),py::arg("image"))
.def("read",static_cast<void(GL::AbstractFramebuffer::*)(constRange2Di&,Image2D&)>(&GL::AbstractFramebuffer::read),"Read a block of pixels from the framebuffer to an image",py::arg("rectangle"),py::arg("image"))