<!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.8.6"/>
<title>Boost.Locale: boost::locale::gnu_gettext::messages_info Struct Reference</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="boost-small.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">Boost.Locale
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">boost::locale::gnu_gettext::messages_info Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>This structure holds all information required for creating gnu-gettext message catalogs,.  
 <a href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="gnu__gettext_8hpp_source.html">boost/locale/gnu_gettext.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info_1_1domain.html">domain</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This type represents GNU Gettext domain name for the messages.  <a href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info_1_1domain.html#details">More...</a><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 name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ac3bfe22cf949ed3f87ee28fa0c983502"><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; <a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info_1_1domain.html">domain</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#ac3bfe22cf949ed3f87ee28fa0c983502">domains_type</a></td></tr>
<tr class="separator:ac3bfe22cf949ed3f87ee28fa0c983502"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dfe37c5a392e5106e65b396a5288b76"><td class="memItemLeft" align="right" valign="top">typedef function&lt; std::vector<br class="typebreak"/>
&lt; char &gt; std::string const <br class="typebreak"/>
&amp;file_name, std::string const <br class="typebreak"/>
&amp;<a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a4a7406581c6c7975c90db9d2d157d384">encoding</a>) &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a4dfe37c5a392e5106e65b396a5288b76">callback_type</a></td></tr>
<tr class="separator:a4dfe37c5a392e5106e65b396a5288b76"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a1afc3be03d4848042e3208d4ca5aec85"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1afc3be03d4848042e3208d4ca5aec85"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a1afc3be03d4848042e3208d4ca5aec85">language</a></td></tr>
<tr class="memdesc:a1afc3be03d4848042e3208d4ca5aec85"><td class="mdescLeft">&#160;</td><td class="mdescRight">The language we load the catalog for, like "ru", "en", "de". <br/></td></tr>
<tr class="separator:a1afc3be03d4848042e3208d4ca5aec85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae939e0c5dbabba7fb4cc2872f4e7dac2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae939e0c5dbabba7fb4cc2872f4e7dac2"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#ae939e0c5dbabba7fb4cc2872f4e7dac2">country</a></td></tr>
<tr class="memdesc:ae939e0c5dbabba7fb4cc2872f4e7dac2"><td class="mdescLeft">&#160;</td><td class="mdescRight">The country we load the catalog for, like "US", "IL". <br/></td></tr>
<tr class="separator:ae939e0c5dbabba7fb4cc2872f4e7dac2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af543a11d3ff1d12e24c06306b30f8fb8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af543a11d3ff1d12e24c06306b30f8fb8"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#af543a11d3ff1d12e24c06306b30f8fb8">variant</a></td></tr>
<tr class="memdesc:af543a11d3ff1d12e24c06306b30f8fb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Language variant, like "euro" so it would look for catalog like de_DE@euro. <br/></td></tr>
<tr class="separator:af543a11d3ff1d12e24c06306b30f8fb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a7406581c6c7975c90db9d2d157d384"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a4a7406581c6c7975c90db9d2d157d384">encoding</a></td></tr>
<tr class="separator:a4a7406581c6c7975c90db9d2d157d384"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39ea1cfd018c7702d94d03e76042ff10"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a39ea1cfd018c7702d94d03e76042ff10">locale_category</a></td></tr>
<tr class="separator:a39ea1cfd018c7702d94d03e76042ff10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ca79b90b4b8dbc924e5eb1b42188311"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#ac3bfe22cf949ed3f87ee28fa0c983502">domains_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a1ca79b90b4b8dbc924e5eb1b42188311">domains</a></td></tr>
<tr class="separator:a1ca79b90b4b8dbc924e5eb1b42188311"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a263d9d2c359ae7730e6d5bba54bb3022"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a263d9d2c359ae7730e6d5bba54bb3022">paths</a></td></tr>
<tr class="separator:a263d9d2c359ae7730e6d5bba54bb3022"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63bd8b01ca532a2657186bab3fa396a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a4dfe37c5a392e5106e65b396a5288b76">callback_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a63bd8b01ca532a2657186bab3fa396a2">callback</a></td></tr>
<tr class="separator:a63bd8b01ca532a2657186bab3fa396a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This structure holds all information required for creating gnu-gettext message catalogs,. </p>
<p>The user is expected to set its parameters to load these catalogs correctly. This structure also allows providing functions for charset conversion. Note, you need to provide them, so this structure is not useful for wide characters without subclassing and it will also ignore gettext catalogs that use a charset different from <em>encoding</em>. </p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a class="anchor" id="a4dfe37c5a392e5106e65b396a5288b76"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef function&lt; std::vector&lt;char&gt; std::string const &amp;file_name, std::string const &amp;<a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a4a7406581c6c7975c90db9d2d157d384">encoding</a> ) &gt; <a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a4dfe37c5a392e5106e65b396a5288b76">boost::locale::gnu_gettext::messages_info::callback_type</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The callback for custom file system support. This callback should read the file named <em>file_name</em> encoded in <em>encoding</em> character set into std::vector&lt;char&gt; and return it.</p>
<ul>
<li>If the file does not exist, it should return an empty vector.</li>
<li>If a error occurs during file read it should throw a error.</li>
</ul>
<dl class="section note"><dt>Note</dt><dd>The user should support only the encodings the locales are created for. So if the user uses only one encoding or the file system is encoding agnostic, he may ignore the <em>encoding</em> parameter. </dd></dl>

</div>
</div>
<a class="anchor" id="ac3bfe22cf949ed3f87ee28fa0c983502"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::vector&lt;<a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info_1_1domain.html">domain</a>&gt; <a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#ac3bfe22cf949ed3f87ee28fa0c983502">boost::locale::gnu_gettext::messages_info::domains_type</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Type that defines a list of domains that are loaded The first one is the default one </p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a63bd8b01ca532a2657186bab3fa396a2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#a4dfe37c5a392e5106e65b396a5288b76">callback_type</a> boost::locale::gnu_gettext::messages_info::callback</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The callback for handling custom file systems, if it is empty, the real OS file-system is being used. </p>

</div>
</div>
<a class="anchor" id="a1ca79b90b4b8dbc924e5eb1b42188311"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structboost_1_1locale_1_1gnu__gettext_1_1messages__info.html#ac3bfe22cf949ed3f87ee28fa0c983502">domains_type</a> boost::locale::gnu_gettext::messages_info::domains</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Message domains - application name, like my_app. So files named my_app.mo would be loaded </p>

</div>
</div>
<a class="anchor" id="a4a7406581c6c7975c90db9d2d157d384"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string boost::locale::gnu_gettext::messages_info::encoding</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Required target charset encoding. Ignored for wide characters. For narrow, should specify the correct encoding required for this catalog </p>

</div>
</div>
<a class="anchor" id="a39ea1cfd018c7702d94d03e76042ff10"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string boost::locale::gnu_gettext::messages_info::locale_category</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Locale category, is set by default to LC_MESSAGES, but may be changed </p>

</div>
</div>
<a class="anchor" id="a263d9d2c359ae7730e6d5bba54bb3022"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;std::string&gt; boost::locale::gnu_gettext::messages_info::paths</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Paths to search files in. Under MS Windows it uses encoding parameter to convert them to wide OS specific paths. </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>boost/locale/<a class="el" href="gnu__gettext_8hpp_source.html">gnu_gettext.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->

    <li class="footer">
&copy; Copyright 2009-2012 Artyom Beilis,  Distributed under the <a href="http://www.boost.org/LICENSE_1_0.txt">Boost Software License</a>, Version 1.0.
    </li>
   </ul>
 </div>
</body>
</html>
