From: Haroon K. <har...@gm...> - 2006-09-13 04:36:04
|
Hi, I'm working with some images that are extracted from an MPEG stream that are in the YCrCb color space. I want to be able to manipulate these images using GIL and I've added a new color space as defined in section 16 in the GIL design guide. I also added color conversion based on the functions in color_convert.h and defined the various typedefs for pixels pointers, references and images. Now everytime I try to instantiate ycrcb8_planar_image_t object in my code, like the following GIL::ycrcb8_planar_image_t img2(200,200); , I get a compile error which is something like this something like the error at the end of the email. I noticed that there are template specializations for byte_advanced_ref for the other color spaces such as rgb and cmyk. Do other color spaces also need a specialization. I'm using the VC8 compiler. Thanks, Haroon 1>c:\haroon\dev\libs\gil\core\locator.hpp(269) : error C2784: 'gil::planar_ref<std::iterator_traits<_Iter>::reference,gil::devicen_t<N>> gil::byte_advanced_ref(const gil::planar_ptr_base<IC,gil::devicen_t<N>> &,ptrdiff_t)' : could not deduce template argument for 'const gil::planar_ptr_base<IC,gil::devicen_t<N>> &' from 'const gil::planar_ptr<IC,C>' 1> with 1> [ 1> N=5 1> ] 1> and 1> [ 1> N=5 1> ] 1> and 1> [ 1> IC=gil::bits8 *, 1> C=gil::ycrcb_t 1> ] 1> c:\haroon\dev\libs\gil\core\device_n.hpp(319) : see declaration of 'gil::byte_advanced_ref' 1> c:\haroon\dev\libs\gil\core\locator.hpp(269) : while compiling class template member function 'gil::planar_ref<TR,C> gil::membased_2d_locator<S_IT>::operator ()(int,int) const' ..... |