Boost logo

Boost Users :

Subject: Re: [Boost-users] [gil] metafunction for layout
From: Sapp, Mark (Mark.Sapp_at_[hidden])
Date: 2011-11-21 14:19:33


Hi All,

 

I was able to accomplish what I needed using the following code. Please provide feedback if you see any potential issues/flaws or a cleaner way to define derived types.

 

void function(const SrcView& src, const DstView& dst) const

{

   typedef typename channel_type< DstView >::type dstChannelType;

   typedef typename channel_mapping_type< DstView >::type dstChannelMappingType;

   typedef typename color_space_type< DstView >::type dstColorSpaceType;

   typedef typename layout< dstColorSpaceType, dstChannelMappingType > dstLayout;

   typedef typename image_type< dstChannelType, dstLayout >::type dstImageType;

   typedef typename dstImageType::value_type dstPixelType;

   typedef typename image_type< bits32f, dstLayout >::type dst32f_image_t;

   typedef typename dst32f_image_t::value_type dst32f_pixel_t;

...

 

With this I can create images inside this function that are bit32f versions of dst. I wish there was a metafunction that returned the layout of view, so that I could simplify this to 1 or 2 lines of code, but functionally it works. Also, dstPixelType is used with color_convert_view as demonstrated below. I’d appreciate any feedback about more appropriate ways of converting the src to the dst type.

 

color_converted_view< dstPixelType >(src)

 

Thanks,

Mark


Notice: This e-mail is intended solely for use of the individual or entity to which it is
addressed and may contain information that is proprietary, privileged, company confidential
and/or exempt from disclosure under applicable law. If the reader is not the intended
recipient or agent responsible for delivering the message to the intended recipient, you are
hereby notified that any dissemination, distribution or copying of this communication is
strictly prohibited. If this communication has been transmitted from a U.S. location it may
also contain data subject to the International Traffic in Arms Regulations or U.S. Export
Administration Regulations and cannot be disseminated, distributed or copied to foreign
nationals, residing in the U.S. or abroad, without the prior approval of the U.S. Department
of State or appropriate export licensing authority. If you have received this communication
in error, please notify the sender by reply e-mail or collect telephone call and delete or
destroy all copies of this e-mail message, any physical copies made of this e-mail message
and/or any file attachment(s).



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net