8 #ifndef BOOST_GIL_IO_GET_WRITE_DEVICE_HPP 9 #define BOOST_GIL_IO_GET_WRITE_DEVICE_HPP 11 #include <boost/gil/io/device.hpp> 12 #include <boost/gil/io/path_spec.hpp> 14 #include <boost/mpl/and.hpp> 16 #include <type_traits> 18 namespace boost {
namespace gil {
20 template <
typename T,
typename FormatTag,
class Enable =
void>
21 struct get_write_device {};
23 template <
typename Device,
typename FormatTag>
24 struct get_write_device
28 typename
std::enable_if
32 detail::is_adaptable_output_device<FormatTag, Device>,
33 is_format_tag<FormatTag>
39 typename detail::is_adaptable_output_device<FormatTag, Device>::device_type;
42 template <
typename String,
typename FormatTag>
43 struct get_write_device
47 typename
std::enable_if
51 detail::is_supported_path_spec<String>,
52 is_format_tag<FormatTag>
57 using type = detail::file_stream_device<FormatTag>;
Definition: algorithm.hpp:30
Definition: algorithm.hpp:127