#include <boost/gil/color_base.hpp>
#include <boost/gil/io/base.hpp>
-#include <boost/mpl/not.hpp>
-#include <boost/type_traits/is_same.hpp>
+#include <type_traits>
namespace boost { namespace gil { namespace detail {
} // namespace detail
-
-template< typename Pixel >
-struct is_read_supported< Pixel
- , targa_tag
- >
- : mpl::bool_< detail::targa_read_support< typename channel_type< Pixel >::type
- , typename color_space_type< Pixel >::type
- >::is_supported
- >
+template<typename Pixel>
+struct is_read_supported<Pixel, targa_tag>
+ : std::integral_constant
+ <
+ bool,
+ detail::targa_read_support
+ <
+ typename channel_type<Pixel>::type,
+ typename color_space_type<Pixel>::type
+ >::is_supported
+ >
{
using parent_t = detail::targa_read_support
<
static const typename targa_depth::type bpp = parent_t::bpp;
};
-template< typename Pixel >
-struct is_write_supported< Pixel
- , targa_tag
- >
- : mpl::bool_< detail::targa_write_support< typename channel_type< Pixel >::type
- , typename color_space_type< Pixel >::type
- >::is_supported
- > {};
-
-} // namespace gil
-} // namespace boost
+template<typename Pixel>
+struct is_write_supported<Pixel, targa_tag>
+ : std::integral_constant
+ <
+ bool,
+ detail::targa_write_support
+ <
+ typename channel_type<Pixel>::type,
+ typename color_space_type<Pixel>::type
+ >::is_supported
+ >
+{};
+}} // namespace boost::gil
#endif