Imported Upstream version 1.72.0
[platform/upstream/boost.git] / boost / gil / extension / io / bmp / detail / supported_types.hpp
index b908dde..2182e85 100644 (file)
@@ -16,8 +16,7 @@
 #include <boost/gil/packed_pixel.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 {
 
@@ -106,15 +105,17 @@ struct bmp_write_support<uint8_t
 
 } // namespace detail
 
-
-template< typename Pixel >
-struct is_read_supported< Pixel
-                        , bmp_tag
-                        >
-    : mpl::bool_< detail::bmp_read_support< typename channel_type< Pixel >::type
-                                          , typename color_space_type< Pixel >::type
-                                          >::is_supported
-                >
+template<typename Pixel>
+struct is_read_supported<Pixel, bmp_tag>
+    : std::integral_constant
+    <
+        bool,
+        detail::bmp_read_support
+        <
+            typename channel_type<Pixel>::type,
+            typename color_space_type<Pixel>::type
+        >::is_supported
+    >
 {
     using parent_t = detail::bmp_read_support
         <
@@ -125,14 +126,18 @@ struct is_read_supported< Pixel
     static const typename bmp_bits_per_pixel::type bpp = parent_t::bpp;
 };
 
-template< typename Pixel >
-struct is_write_supported< Pixel
-                         , bmp_tag
-                         >
-    : mpl::bool_< detail::bmp_write_support< typename channel_type< Pixel >::type
-                                           , typename color_space_type< Pixel >::type
-                                           >::is_supported
-                > {};
+template<typename Pixel>
+struct is_write_supported<Pixel, bmp_tag>
+    : std::integral_constant
+    <
+        bool,
+        detail::bmp_write_support
+        <
+            typename channel_type<Pixel>::type,
+            typename color_space_type<Pixel>::type
+        >::is_supported
+    >
+{};
 
 } // namespace gil
 } // namespace boost