8 #ifndef BOOST_GIL_IO_GET_WRITER_HPP     9 #define BOOST_GIL_IO_GET_WRITER_HPP    11 #include <boost/gil/detail/mp11.hpp>    12 #include <boost/gil/io/get_write_device.hpp>    14 #include <type_traits>    16 namespace boost { 
namespace gil {
    19 template <
typename T, 
typename FormatTag, 
class Enable = 
void>
    23 template <
typename String, 
typename FormatTag>
    28     typename std::enable_if
    32             detail::is_supported_path_spec<String>,
    33             is_format_tag<FormatTag>
    38     using device_t = 
typename get_write_device<String, FormatTag>::type;
    39     using type = writer<device_t, FormatTag>;
    42 template <
typename Device, 
typename FormatTag>
    47     typename std::enable_if
    51             detail::is_adaptable_output_device<FormatTag, Device>,
    52             is_format_tag<FormatTag>
    57     using device_t = 
typename get_write_device<Device, FormatTag>::type;
    58     using type = writer<device_t, FormatTag>;
    62 template <
typename T, 
typename FormatTag, 
class Enable = 
void>
    65 template <
typename String, 
typename FormatTag>
    70     typename std::enable_if
    74             detail::is_supported_path_spec<String>,
    75             is_format_tag<FormatTag>
    80     using device_t = 
typename get_write_device<String, FormatTag>::type;
    81     using type = dynamic_image_writer<device_t, FormatTag>;
    84 template <
typename Device, 
typename FormatTag>
    85 struct get_dynamic_image_writer
    89     typename std::enable_if
    93             detail::is_write_device<FormatTag, Device>,
    94             is_format_tag<FormatTag>
    99     using device_t = 
typename get_write_device<Device, FormatTag>::type;
   100     using type = dynamic_image_writer<device_t, FormatTag>;
 Helper metafunction to generate writer type.
Definition: get_writer.hpp:20
Helper metafunction to generate dynamic image writer type.
Definition: get_writer.hpp:63