From ddf9f44ed3d3e8627b2ce4a0ff00df99a15c2d2f Mon Sep 17 00:00:00 2001 From: Lubomir Bourdev Date: Fri, 21 Mar 2008 09:40:59 +0000 Subject: [PATCH] GIL: Fixed a bug in planar device_n view construction. [SVN r43741] --- include/boost/gil/device_n.hpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/include/boost/gil/device_n.hpp b/include/boost/gil/device_n.hpp index ce92191db..dec0c0edd 100644 --- a/include/boost/gil/device_n.hpp +++ b/include/boost/gil/device_n.hpp @@ -5,7 +5,7 @@ Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt). - See http://opensource.adobe.com/gil for most recent version including documentation. + See http://stlab.adobe.com/gil for most recent version including documentation. */ /*************************************************************************************************/ @@ -64,7 +64,8 @@ template struct devicen_layout_t : public layout > {}; template inline typename type_from_x_iterator > >::view_t planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, std::ptrdiff_t rowsize_in_bytes) { - return typename type_from_x_iterator > >::view_t(width, height, planar_pixel_iterator >(c0,c1), rowsize_in_bytes); + typedef typename type_from_x_iterator > >::view_t view_t; + return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1), rowsize_in_bytes)); } /// \ingroup ImageViewConstructors @@ -72,7 +73,8 @@ planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, std::pt template inline typename type_from_x_iterator > >::view_t planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, std::ptrdiff_t rowsize_in_bytes) { - return typename type_from_x_iterator > >::view_t(width, height, planar_pixel_iterator >(c0,c1,c2), rowsize_in_bytes); + typedef typename type_from_x_iterator > >::view_t view_t; + return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1,c2), rowsize_in_bytes)); } /// \ingroup ImageViewConstructors @@ -80,7 +82,8 @@ planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, template inline typename type_from_x_iterator > >::view_t planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, IC c3, std::ptrdiff_t rowsize_in_bytes) { - return typename type_from_x_iterator > >::view_t(width, height, planar_pixel_iterator >(c0,c1,c2,c3), rowsize_in_bytes); + typedef typename type_from_x_iterator > >::view_t view_t; + return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1,c2,c3), rowsize_in_bytes)); } /// \ingroup ImageViewConstructors @@ -88,7 +91,8 @@ planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, template inline typename type_from_x_iterator > >::view_t planar_devicen_view(std::size_t width, std::size_t height, IC c0, IC c1, IC c2, IC c3, IC c4, std::ptrdiff_t rowsize_in_bytes) { - return typename type_from_x_iterator > >::view_t(width, height, planar_pixel_iterator >(c0,c1,c2,c3,c4), rowsize_in_bytes); + typedef typename type_from_x_iterator > >::view_t view_t; + return view_t(width, height, typename view_t::locator(typename view_t::x_iterator(c0,c1,c2,c3,c4), rowsize_in_bytes)); } } } // namespace boost::gil