Boost logo

Boost :

From: Timothy M. Shead (tshead_at_[hidden])
Date: 2006-10-18 09:37:57


On Wed, 2006-10-18 at 12:29 +0100, Andy Little wrote:
> "Timothy M. Shead" <tshead_at_[hidden]> wrote in message
> news:1161054851.13317.27.camel_at_joe.k-3d.com...
> >I am trying to use GIL with the OpenEXR library, which uses
> > half-precision floating-point channels:

> I'm not sure if the following fits the bill , but it might provide some ideas.
>
>
> (quan arithmetic_promote header is :
>
> http://quan.cvs.sourceforge.net/quan/quan-trunk/quan/meta/arithmetic_promote.hpp?view=markup
>

Actually, you may have missed Lubomir's response to my message, which -
in a nutshell - is to provide a specialization for conversion between
the new and existing types:

namespace gil
{

/// Defines conversion from 16-bit-floats to 8-bit-integers
template<>
inline bits8 _channel_convert<bits8>(half Value)
{
        return bits8(Value * 255);
}

/// Defines conversion from 8-bit-integers to 16-bit-floats
template<>
inline half _channel_convert<half>(bits8 Value)
{
        return half(Value) / 255.0;
}

} // namespace gil

Cheers,
Tim


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk