1 //
2 // Copyright 2007-2008 Christian Henning, Andreas Pokorny, Lubomir Bourdev
3 //
4 // Distributed under the Boost Software License, Version 1.0
5 // See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt
7 //
8 #ifndef BOOST_GIL_EXTENSION_IO_TIFF_DETAIL_SUPPORTED_TYPES_HPP
9 #define BOOST_GIL_EXTENSION_IO_TIFF_DETAIL_SUPPORTED_TYPES_HPP
10 
11 #include <boost/gil/extension/io/tiff/tags.hpp>
12 
13 #include <boost/gil/channel.hpp>
14 #include <boost/gil/color_base.hpp>
15 #include <boost/gil/io/base.hpp>
16 
17 #include <type_traits>
18 
19 namespace boost{ namespace gil {
20 
21 namespace detail {
22 
23 // Read support
24 
25 // TIFF virtually supports everything
26 struct tiff_read_support : read_support_true
27 {};
28 
29 
30 // Write support
31 
32 struct tiff_write_support : write_support_true
33 {};
34 
35 } // namespace detail
36 
37 template<typename Pixel>
38 struct is_read_supported<Pixel, tiff_tag>
39     : std::integral_constant<bool, detail::tiff_read_support::is_supported>
40 {};
41 
42 template<typename Pixel>
43 struct is_write_supported<Pixel, tiff_tag>
44     : std::integral_constant<bool, detail::tiff_write_support::is_supported>
45 {};
46 
47 }} // namespace boost::gil
48 
49 #endif
50