8#ifndef BOOST_GIL_IO_READ_IMAGE_INFO_HPP
9#define BOOST_GIL_IO_READ_IMAGE_INFO_HPP
11#include <boost/gil/io/base.hpp>
12#include <boost/gil/io/device.hpp>
13#include <boost/gil/io/get_reader.hpp>
14#include <boost/gil/io/path_spec.hpp>
15#include <boost/gil/detail/mp11.hpp>
19namespace boost{
namespace gil {
28template <
typename Device,
typename FormatTag>
31 typename std::enable_if
35 detail::is_adaptable_input_device<FormatTag, Device>,
36 is_format_tag<FormatTag>
41 return make_reader_backend(file, settings);
49template <
typename Device,
typename FormatTag>
52 typename std::enable_if
56 detail::is_adaptable_input_device<FormatTag, Device>,
57 is_format_tag<FormatTag>
60 ->
typename get_reader_backend<Device, FormatTag>::type
70template <
typename String,
typename FormatTag>
73 String
const& file_name, image_read_settings<FormatTag>
const& settings,
74 typename std::enable_if
78 is_format_tag<FormatTag>,
79 detail::is_supported_path_spec<String>
82 ->
typename get_reader_backend<String, FormatTag>::type
84 return make_reader_backend(file_name, settings);
92template <
typename String,
typename FormatTag>
95 typename std::enable_if
99 is_format_tag<FormatTag>,
100 detail::is_supported_path_spec<String>
103 ->
typename get_reader_backend<String, FormatTag>::type
auto read_image_info(Device &file, image_read_settings< FormatTag > const &settings, typename std::enable_if< mp11::mp_and< detail::is_adaptable_input_device< FormatTag, Device >, is_format_tag< FormatTag > >::value >::type *=nullptr) -> typename get_reader_backend< Device, FormatTag >::type
Returns the image format backend. Backend is format specific.
Definition read_image_info.hpp:30
defined(BOOST_NO_CXX17_HDR_MEMORY_RESOURCE)
Definition algorithm.hpp:36
Helper metafunction to generate image backend type.
Definition get_reader.hpp:115