// // Copyright 2012 Christian Henning, Andreas Pokorny, Lubomir Bourdev // // Distributed under the Boost Software License, Version 1.0 // See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt // #ifndef BOOST_GIL_EXTENSION_TOOLBOX_METAFUNCTIONS_GET_NUM_BITS_HPP #define BOOST_GIL_EXTENSION_TOOLBOX_METAFUNCTIONS_GET_NUM_BITS_HPP #include #include #include #include namespace boost{ namespace gil { /// get_num_bits metafunctions /// \brief Determines the numbers of bits for the given channel type. template struct get_num_bits; template struct get_num_bits> : std::integral_constant {}; template struct get_num_bits const> : std::integral_constant {}; template struct get_num_bits> : std::integral_constant {}; template struct get_num_bits const> : std::integral_constant {}; template struct get_num_bits> : std::integral_constant {}; template struct get_num_bits const> : std::integral_constant {}; template struct get_num_bits < T, typename std::enable_if < mp11::mp_and < detail::is_channel_integral, mp11::mp_not> >::value >::type > : std::integral_constant {}; }} // namespace boost::gil #endif