#ifndef BOOST_GIL_EXAMPLE_INTERLEAVED_REF_HPP
#define BOOST_GIL_EXAMPLE_INTERLEAVED_REF_HPP
+#include <boost/gil.hpp>
#include <boost/gil/extension/dynamic_image/dynamic_image_all.hpp>
-#include <boost/mpl/range_c.hpp>
-#include <boost/mpl/vector_c.hpp>
+#include <type_traits>
// Example on how to create a new model of a pixel reference
// Required by PixelConcept
template <typename ChannelReference, typename Layout>
-struct is_pixel<interleaved_ref<ChannelReference,Layout>> : public boost::mpl::true_ {};
+struct is_pixel<interleaved_ref<ChannelReference,Layout>> : public std::true_type {};
// Required by PixelBasedConcept
// Required by PixelBasedConcept
template <typename ChannelReference, typename Layout>
-struct is_planar<interleaved_ref<ChannelReference,Layout>> : mpl::false_ {};
+struct is_planar<interleaved_ref<ChannelReference,Layout>> : std::false_type {};
// Required by HomogeneousPixelBasedConcept
template <typename ChannelReference, typename Layout>