2
0
mirror of https://github.com/boostorg/gil.git synced 2026-01-25 06:12:22 +00:00
Files
gil/develop/doc/html/reference/group___i_o.html
github-actions[bot] 3b73200ee1 deploy: 49d9276706
2025-04-04 16:28:54 +00:00

428 lines
27 KiB
HTML

<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Generic Image Library: I/O</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-boost.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div class="boost-header">
<table border="0" cellpadding="7" cellspacing="0" width="100%" summary="header">
<tr>
<td valign="top" width="300">
<h3><a href="../index.html"><img alt="Boost GIL" src="../_static/gil.png" border="0"></a></h3>
</td>
<td ><h1 align="center"><a href="../index.html"></a></h1></td>
<td></td>
</tr>
</table>
</div>
<hr/>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',false,false,'search.php','Search');
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#groups">Modules</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">I/O</div></div>
</div><!--header-->
<div class="contents">
<p>Support for reading and writing images to file.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="groups" name="groups"></a>
Modules</h2></td></tr>
<tr class="memitem:group___j_p_e_g___i_o" id="r_group___j_p_e_g___i_o"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___j_p_e_g___i_o.html">JPEG I/O</a></td></tr>
<tr class="memdesc:group___j_p_e_g___i_o"><td class="mdescLeft">&#160;</td><td class="mdescRight">Support for reading and writing JPEG image files. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group___t_i_f_f___i_o" id="r_group___t_i_f_f___i_o"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_i_f_f___i_o.html">TIFF I/O</a></td></tr>
<tr class="memdesc:group___t_i_f_f___i_o"><td class="mdescLeft">&#160;</td><td class="mdescRight">Support for reading and writing TIFF image files. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group___p_n_g___i_o" id="r_group___p_n_g___i_o"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___p_n_g___i_o.html">PNG I/O</a></td></tr>
<tr class="memdesc:group___p_n_g___i_o"><td class="mdescLeft">&#160;</td><td class="mdescRight">Support for reading and writing PNG image files. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga95623cc3be7dd9d47c41a0ba7d467649" id="r_ga95623cc3be7dd9d47c41a0ba7d467649"><td class="memTemplParams" colspan="2">template&lt;typename Reader , typename Image &gt; </td></tr>
<tr class="memitem:ga95623cc3be7dd9d47c41a0ba7d467649"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group___i_o.html#ga95623cc3be7dd9d47c41a0ba7d467649">read_and_convert_image</a> (Reader &amp;reader, Image &amp;img, typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, is_format_tag&lt; typename Reader::format_tag_t &gt; &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="memdesc:ga95623cc3be7dd9d47c41a0ba7d467649"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads and color-converts an image. Image memory is allocated. <br /></td></tr>
<tr class="separator:ga95623cc3be7dd9d47c41a0ba7d467649"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf18642e6405cdf8be45bfa50b4937a14" id="r_gaf18642e6405cdf8be45bfa50b4937a14"><td class="memTemplParams" colspan="2">template&lt;typename Reader , typename View &gt; </td></tr>
<tr class="memitem:gaf18642e6405cdf8be45bfa50b4937a14"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group___i_o.html#gaf18642e6405cdf8be45bfa50b4937a14">read_and_convert_view</a> (Reader &amp;reader, View const &amp;<a class="el" href="group___image_model.html#ga11e52868409ba2d52a93213ee39f4fde">view</a>, typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, is_format_tag&lt; typename Reader::format_tag_t &gt; &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="memdesc:gaf18642e6405cdf8be45bfa50b4937a14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads and color-converts an image view. No memory is allocated. <br /></td></tr>
<tr class="separator:gaf18642e6405cdf8be45bfa50b4937a14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1aa312515256348fcddcebc511971c37" id="r_ga1aa312515256348fcddcebc511971c37"><td class="memTemplParams" colspan="2">template&lt;typename Reader , typename Image &gt; </td></tr>
<tr class="memitem:ga1aa312515256348fcddcebc511971c37"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group___i_o.html#ga1aa312515256348fcddcebc511971c37">read_image</a> (Reader reader, Image &amp;img, typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, is_format_tag&lt; typename Reader::format_tag_t &gt;, <a class="el" href="structboost_1_1gil_1_1is__read__supported.html">is_read_supported</a>&lt; typename get_pixel_type&lt; typename Image::view_t &gt;::type, typename Reader::format_tag_t &gt; &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="memdesc:ga1aa312515256348fcddcebc511971c37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an image without conversion. Image memory is allocated. <br /></td></tr>
<tr class="separator:ga1aa312515256348fcddcebc511971c37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabf4d77e060e611bd8dd9a63ab6e31778" id="r_gabf4d77e060e611bd8dd9a63ab6e31778"><td class="memTemplParams" colspan="2">template&lt;typename Device , typename FormatTag &gt; </td></tr>
<tr class="memitem:gabf4d77e060e611bd8dd9a63ab6e31778"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group___i_o.html#gabf4d77e060e611bd8dd9a63ab6e31778">read_image_info</a> (Device &amp;file, image_read_settings&lt; FormatTag &gt; const &amp;settings, typename std::enable_if&lt; mp11::mp_and&lt; detail::is_adaptable_input_device&lt; FormatTag, Device &gt;, is_format_tag&lt; FormatTag &gt; &gt;::value &gt;::type *=nullptr) -&gt; typename <a class="el" href="structboost_1_1gil_1_1get__reader__backend.html">get_reader_backend</a>&lt; Device, FormatTag &gt;::type</td></tr>
<tr class="memdesc:gabf4d77e060e611bd8dd9a63ab6e31778"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the image format backend. Backend is format specific. <br /></td></tr>
<tr class="separator:gabf4d77e060e611bd8dd9a63ab6e31778"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gada0413c88413608f4f982ff50edfe0ab" id="r_gada0413c88413608f4f982ff50edfe0ab"><td class="memTemplParams" colspan="2">template&lt;typename Reader , typename View &gt; </td></tr>
<tr class="memitem:gada0413c88413608f4f982ff50edfe0ab"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group___i_o.html#gada0413c88413608f4f982ff50edfe0ab">read_view</a> (Reader reader, View const &amp;<a class="el" href="group___image_model.html#ga11e52868409ba2d52a93213ee39f4fde">view</a>, typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, typename is_format_tag&lt; typename Reader::format_tag_t &gt;::type, typename <a class="el" href="structboost_1_1gil_1_1is__read__supported.html">is_read_supported</a>&lt; typename get_pixel_type&lt; View &gt;::type, typename Reader::format_tag_t &gt;::type &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="memdesc:gada0413c88413608f4f982ff50edfe0ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an image view without conversion. No memory is allocated. <br /></td></tr>
<tr class="separator:gada0413c88413608f4f982ff50edfe0ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga817f4c98aebca66b5e5f23a81ddefbac" id="r_ga817f4c98aebca66b5e5f23a81ddefbac"><td class="memTemplParams" colspan="2"><a id="ga817f4c98aebca66b5e5f23a81ddefbac" name="ga817f4c98aebca66b5e5f23a81ddefbac"></a>
template&lt;typename Writer , typename View &gt; </td></tr>
<tr class="memitem:ga817f4c98aebca66b5e5f23a81ddefbac"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>write_view</b> (Writer &amp;writer, View const &amp;<a class="el" href="group___image_model.html#ga11e52868409ba2d52a93213ee39f4fde">view</a>, typename std::enable_if&lt; mp11::mp_and&lt; typename detail::is_writer&lt; Writer &gt;::type, typename is_format_tag&lt; typename Writer::format_tag_t &gt;::type, typename is_write_supported&lt; typename get_pixel_type&lt; View &gt;::type, typename Writer::format_tag_t &gt;::type &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="separator:ga817f4c98aebca66b5e5f23a81ddefbac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf9285e9bb8f426f03e2caffdf366ab87" id="r_gaf9285e9bb8f426f03e2caffdf366ab87"><td class="memTemplParams" colspan="2"><a id="gaf9285e9bb8f426f03e2caffdf366ab87" name="gaf9285e9bb8f426f03e2caffdf366ab87"></a>
template&lt;typename Device , typename View , typename FormatTag &gt; </td></tr>
<tr class="memitem:gaf9285e9bb8f426f03e2caffdf366ab87"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>write_view</b> (Device &amp;device, View const &amp;<a class="el" href="group___image_model.html#ga11e52868409ba2d52a93213ee39f4fde">view</a>, FormatTag const &amp;tag, typename std::enable_if&lt; mp11::mp_and&lt; typename <a class="el" href="structboost_1_1gil_1_1detail_1_1is__write__device.html">detail::is_write_device</a>&lt; FormatTag, Device &gt;::type, typename is_format_tag&lt; FormatTag &gt;::type, typename is_write_supported&lt; typename get_pixel_type&lt; View &gt;::type, FormatTag &gt;::type &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="separator:gaf9285e9bb8f426f03e2caffdf366ab87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga54204b784c55494bf35b4acdfbbc669e" id="r_ga54204b784c55494bf35b4acdfbbc669e"><td class="memTemplParams" colspan="2"><a id="ga54204b784c55494bf35b4acdfbbc669e" name="ga54204b784c55494bf35b4acdfbbc669e"></a>
template&lt;typename String , typename View , typename FormatTag &gt; </td></tr>
<tr class="memitem:ga54204b784c55494bf35b4acdfbbc669e"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>write_view</b> (String const &amp;file_name, View const &amp;<a class="el" href="group___image_model.html#ga11e52868409ba2d52a93213ee39f4fde">view</a>, FormatTag const &amp;tag, typename std::enable_if&lt; mp11::mp_and&lt; typename detail::is_supported_path_spec&lt; String &gt;::type, typename is_format_tag&lt; FormatTag &gt;::type, typename is_write_supported&lt; typename get_pixel_type&lt; View &gt;::type, FormatTag &gt;::type &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="separator:ga54204b784c55494bf35b4acdfbbc669e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3b01f9fc4913c49efa8ea4e555d22df" id="r_gae3b01f9fc4913c49efa8ea4e555d22df"><td class="memTemplParams" colspan="2"><a id="gae3b01f9fc4913c49efa8ea4e555d22df" name="gae3b01f9fc4913c49efa8ea4e555d22df"></a>
template&lt;typename Device , typename View , typename FormatTag , typename Log &gt; </td></tr>
<tr class="memitem:gae3b01f9fc4913c49efa8ea4e555d22df"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>write_view</b> (Device &amp;device, View const &amp;<a class="el" href="group___image_model.html#ga11e52868409ba2d52a93213ee39f4fde">view</a>, image_write_info&lt; FormatTag, Log &gt; const &amp;info, typename std::enable_if&lt; mp11::mp_and&lt; typename <a class="el" href="structboost_1_1gil_1_1detail_1_1is__write__device.html">detail::is_write_device</a>&lt; FormatTag, Device &gt;::type, typename is_format_tag&lt; FormatTag &gt;::type, typename is_write_supported&lt; typename get_pixel_type&lt; View &gt;::type, FormatTag &gt;::type &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="separator:gae3b01f9fc4913c49efa8ea4e555d22df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae647a6a7052624fa08ed45af3e45b89e" id="r_gae647a6a7052624fa08ed45af3e45b89e"><td class="memTemplParams" colspan="2"><a id="gae647a6a7052624fa08ed45af3e45b89e" name="gae647a6a7052624fa08ed45af3e45b89e"></a>
template&lt;typename String , typename View , typename FormatTag , typename Log &gt; </td></tr>
<tr class="memitem:gae647a6a7052624fa08ed45af3e45b89e"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>write_view</b> (String const &amp;file_name, View const &amp;<a class="el" href="group___image_model.html#ga11e52868409ba2d52a93213ee39f4fde">view</a>, image_write_info&lt; FormatTag, Log &gt; const &amp;info, typename std::enable_if&lt; mp11::mp_and&lt; typename detail::is_supported_path_spec&lt; String &gt;::type, typename is_format_tag&lt; FormatTag &gt;::type, typename is_write_supported&lt; typename get_pixel_type&lt; View &gt;::type, FormatTag &gt;::type &gt;::value &gt;::type *=nullptr)</td></tr>
<tr class="separator:gae647a6a7052624fa08ed45af3e45b89e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga657a428a40899b6cc3212483240ce44a" id="r_ga657a428a40899b6cc3212483240ce44a"><td class="memTemplParams" colspan="2"><a id="ga657a428a40899b6cc3212483240ce44a" name="ga657a428a40899b6cc3212483240ce44a"></a>
template&lt;typename Device , typename ... Views, typename FormatTag , typename Log &gt; </td></tr>
<tr class="memitem:ga657a428a40899b6cc3212483240ce44a"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>write_view</b> (Device &amp;device, <a class="el" href="classboost_1_1gil_1_1any__image__view.html">any_image_view</a>&lt; Views... &gt; const &amp;views, image_write_info&lt; FormatTag, Log &gt; const &amp;info, typename std::enable_if&lt; mp11::mp_and&lt; typename <a class="el" href="structboost_1_1gil_1_1detail_1_1is__write__device.html">detail::is_write_device</a>&lt; FormatTag, Device &gt;::type, typename is_format_tag&lt; FormatTag &gt;::type &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ga657a428a40899b6cc3212483240ce44a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Support for reading and writing images to file. </p>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga95623cc3be7dd9d47c41a0ba7d467649" name="ga95623cc3be7dd9d47c41a0ba7d467649"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga95623cc3be7dd9d47c41a0ba7d467649">&#9670;&#160;</a></span>read_and_convert_image()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Reader , typename Image &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void read_and_convert_image </td>
<td>(</td>
<td class="paramtype">Reader &amp;&#160;</td>
<td class="paramname"><em>reader</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Image &amp;&#160;</td>
<td class="paramname"><em>img</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, is_format_tag&lt; typename Reader::format_tag_t &gt; &gt;::value &gt;::type *&#160;</td>
<td class="paramname"> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads and color-converts an image. Image memory is allocated. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reader</td><td>An image reader. </td></tr>
<tr><td class="paramname">img</td><td>The image in which the data is read into. </td></tr>
<tr><td class="paramname">settings</td><td>Specifies read settings depending on the image format. </td></tr>
<tr><td class="paramname">cc</td><td>Color converter function object. </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">std::ios_base::failure</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="gaf18642e6405cdf8be45bfa50b4937a14" name="gaf18642e6405cdf8be45bfa50b4937a14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf18642e6405cdf8be45bfa50b4937a14">&#9670;&#160;</a></span>read_and_convert_view()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Reader , typename View &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void read_and_convert_view </td>
<td>(</td>
<td class="paramtype">Reader &amp;&#160;</td>
<td class="paramname"><em>reader</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">View const &amp;&#160;</td>
<td class="paramname"><em>view</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, is_format_tag&lt; typename Reader::format_tag_t &gt; &gt;::value &gt;::type *&#160;</td>
<td class="paramname"> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads and color-converts an image view. No memory is allocated. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reader</td><td>An image reader. </td></tr>
<tr><td class="paramname">img</td><td>The image in which the data is read into. </td></tr>
<tr><td class="paramname">settings</td><td>Specifies read settings depending on the image format. </td></tr>
<tr><td class="paramname">cc</td><td>Color converter function object. </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">std::ios_base::failure</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ga1aa312515256348fcddcebc511971c37" name="ga1aa312515256348fcddcebc511971c37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1aa312515256348fcddcebc511971c37">&#9670;&#160;</a></span>read_image()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Reader , typename Image &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void read_image </td>
<td>(</td>
<td class="paramtype">Reader&#160;</td>
<td class="paramname"><em>reader</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Image &amp;&#160;</td>
<td class="paramname"><em>img</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, is_format_tag&lt; typename Reader::format_tag_t &gt;, <a class="el" href="structboost_1_1gil_1_1is__read__supported.html">is_read_supported</a>&lt; typename get_pixel_type&lt; typename Image::view_t &gt;::type, typename Reader::format_tag_t &gt; &gt;::value &gt;::type *&#160;</td>
<td class="paramname"> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads an image without conversion. Image memory is allocated. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reader</td><td>An image reader. </td></tr>
<tr><td class="paramname">img</td><td>The image in which the data is read into. Must satisfy <a class="el" href="structboost_1_1gil_1_1is__read__supported.html">is_read_supported</a> metafunction. </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">std::ios_base::failure</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="gabf4d77e060e611bd8dd9a63ab6e31778" name="gabf4d77e060e611bd8dd9a63ab6e31778"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabf4d77e060e611bd8dd9a63ab6e31778">&#9670;&#160;</a></span>read_image_info()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Device , typename FormatTag &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto read_image_info </td>
<td>(</td>
<td class="paramtype">Device &amp;&#160;</td>
<td class="paramname"><em>file</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">image_read_settings&lt; FormatTag &gt; const &amp;&#160;</td>
<td class="paramname"><em>settings</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">typename std::enable_if&lt; mp11::mp_and&lt; detail::is_adaptable_input_device&lt; FormatTag, Device &gt;, is_format_tag&lt; FormatTag &gt; &gt;::value &gt;::type *&#160;</td>
<td class="paramname"> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> -&gt; typename <a class="el" href="structboost_1_1gil_1_1get__reader__backend.html">get_reader_backend</a>&lt;Device, FormatTag&gt;::type
</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the image format backend. Backend is format specific. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">file</td><td>It's a device. Must satisfy is_adaptable_input_device metafunction. </td></tr>
<tr><td class="paramname">settings</td><td>Specifies read settings depending on the image format. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>image_read_info object dependent on the image format. </dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">std::ios_base::failure</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="gada0413c88413608f4f982ff50edfe0ab" name="gada0413c88413608f4f982ff50edfe0ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gada0413c88413608f4f982ff50edfe0ab">&#9670;&#160;</a></span>read_view()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Reader , typename View &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void read_view </td>
<td>(</td>
<td class="paramtype">Reader&#160;</td>
<td class="paramname"><em>reader</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">View const &amp;&#160;</td>
<td class="paramname"><em>view</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">typename std::enable_if&lt; mp11::mp_and&lt; detail::is_reader&lt; Reader &gt;, typename is_format_tag&lt; typename Reader::format_tag_t &gt;::type, typename <a class="el" href="structboost_1_1gil_1_1is__read__supported.html">is_read_supported</a>&lt; typename get_pixel_type&lt; View &gt;::type, typename Reader::format_tag_t &gt;::type &gt;::value &gt;::type *&#160;</td>
<td class="paramname"> = <code>nullptr</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads an image view without conversion. No memory is allocated. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reader</td><td>An image reader. </td></tr>
<tr><td class="paramname">view</td><td>The image view in which the data is read into. </td></tr>
<tr><td class="paramname">settings</td><td>Specifies read settings depending on the image format. </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">std::ios_base::failure</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.13-->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
<small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">doxygen</a> 1.9.8
</small>
</address>
</body>
</html>