Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > core-updates > by-pkgid > 12cd2b60e7ffa1b93f26cacdd7197eb9 > files > 709

exiv2-doc-0.24-5.1.mga5.noarch.rpm

<!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.8"/>
<title>Exiv2: Exiv2::LogMsg Class 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
   <div id="projectname">Exiv2
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</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>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </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="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceExiv2.html">Exiv2</a></li><li class="navelem"><a class="el" href="classExiv2_1_1LogMsg.html">LogMsg</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classExiv2_1_1LogMsg-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Exiv2::LogMsg Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Class for a log message, used by the library. Applications can set the log level and provide a customer log message handler (callback function).  
 <a href="classExiv2_1_1LogMsg.html#details">More...</a></p>

<p><code>#include &lt;error.hpp&gt;</code></p>
<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:af72a9026cffe2536ae475e1c31e7ff70"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af72a9026cffe2536ae475e1c31e7ff70"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#af72a9026cffe2536ae475e1c31e7ff70">Level</a> { <br />
&#160;&#160;<b>debug</b> = 0, 
<b>info</b> = 1, 
<b>warn</b> = 2, 
<b>error</b> = 3, 
<br />
&#160;&#160;<b>mute</b> = 4
<br />
 }</td></tr>
<tr class="memdesc:af72a9026cffe2536ae475e1c31e7ff70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defined log levels. To suppress all log messages, either set the log level to <code>mute</code> or set the log message handler to 0. <br /></td></tr>
<tr class="separator:af72a9026cffe2536ae475e1c31e7ff70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a823343c6f2c95067ae68566a293d5451"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a823343c6f2c95067ae68566a293d5451"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#a823343c6f2c95067ae68566a293d5451">Handler</a> )(int, const char *)</td></tr>
<tr class="memdesc:a823343c6f2c95067ae68566a293d5451"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type for a log message handler function. The function receives the log level and message and can process it in an application specific way. The default handler sends the log message to standard error. <br /></td></tr>
<tr class="separator:a823343c6f2c95067ae68566a293d5451"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Creators</div></td></tr>
<tr class="memitem:aef46b169c328eecf0b83886ef8b9ea9f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef46b169c328eecf0b83886ef8b9ea9f"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#aef46b169c328eecf0b83886ef8b9ea9f">LogMsg</a> (<a class="el" href="classExiv2_1_1LogMsg.html#af72a9026cffe2536ae475e1c31e7ff70">Level</a> msgType)</td></tr>
<tr class="memdesc:aef46b169c328eecf0b83886ef8b9ea9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor, takes the log message type as an argument. <br /></td></tr>
<tr class="separator:aef46b169c328eecf0b83886ef8b9ea9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedeb7bc7577e6c82e002f03017ce2f04"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aedeb7bc7577e6c82e002f03017ce2f04"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#aedeb7bc7577e6c82e002f03017ce2f04">~LogMsg</a> ()</td></tr>
<tr class="memdesc:aedeb7bc7577e6c82e002f03017ce2f04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor, passes the log message to the message handler depending on the log level. <br /></td></tr>
<tr class="separator:aedeb7bc7577e6c82e002f03017ce2f04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Manipulators</div></td></tr>
<tr class="memitem:a0e84e1ddf83bf19ef9c83a420518e8aa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e84e1ddf83bf19ef9c83a420518e8aa"></a>
std::ostringstream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#a0e84e1ddf83bf19ef9c83a420518e8aa">os</a> ()</td></tr>
<tr class="memdesc:a0e84e1ddf83bf19ef9c83a420518e8aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a reference to the ostringstream which holds the log message. <br /></td></tr>
<tr class="separator:a0e84e1ddf83bf19ef9c83a420518e8aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a3d044a62ace539813d255283a4c41782"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d044a62ace539813d255283a4c41782"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#a3d044a62ace539813d255283a4c41782">setLevel</a> (<a class="el" href="classExiv2_1_1LogMsg.html#af72a9026cffe2536ae475e1c31e7ff70">Level</a> <a class="el" href="classExiv2_1_1LogMsg.html#ac2bf90efb62ec69439f6c71ca1498cc1">level</a>)</td></tr>
<tr class="memdesc:a3d044a62ace539813d255283a4c41782"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the log level. Only log messages with a level greater or equal <em>level</em> are sent to the log message handler. Default log level is <code>warn</code>. To suppress all log messages, set the log level to <code>mute</code> (or set the log message handler to 0). <br /></td></tr>
<tr class="separator:a3d044a62ace539813d255283a4c41782"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a782d9c817b49f3b503c5a85f418319be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a782d9c817b49f3b503c5a85f418319be"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#a782d9c817b49f3b503c5a85f418319be">setHandler</a> (<a class="el" href="classExiv2_1_1LogMsg.html#a823343c6f2c95067ae68566a293d5451">Handler</a> <a class="el" href="classExiv2_1_1LogMsg.html#abe4cfbb3b6aaff49f4b793f2711adaa9">handler</a>)</td></tr>
<tr class="memdesc:a782d9c817b49f3b503c5a85f418319be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the log message handler. The default handler writes log messages to standard error. To suppress all log messages, set the log message handler to 0 (or set the log level to <code>mute</code>). <br /></td></tr>
<tr class="separator:a782d9c817b49f3b503c5a85f418319be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2bf90efb62ec69439f6c71ca1498cc1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac2bf90efb62ec69439f6c71ca1498cc1"></a>
static <a class="el" href="classExiv2_1_1LogMsg.html#af72a9026cffe2536ae475e1c31e7ff70">Level</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#ac2bf90efb62ec69439f6c71ca1498cc1">level</a> ()</td></tr>
<tr class="memdesc:ac2bf90efb62ec69439f6c71ca1498cc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current log level. <br /></td></tr>
<tr class="separator:ac2bf90efb62ec69439f6c71ca1498cc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe4cfbb3b6aaff49f4b793f2711adaa9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe4cfbb3b6aaff49f4b793f2711adaa9"></a>
static <a class="el" href="classExiv2_1_1LogMsg.html#a823343c6f2c95067ae68566a293d5451">Handler</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#abe4cfbb3b6aaff49f4b793f2711adaa9">handler</a> ()</td></tr>
<tr class="memdesc:abe4cfbb3b6aaff49f4b793f2711adaa9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current log message handler. <br /></td></tr>
<tr class="separator:abe4cfbb3b6aaff49f4b793f2711adaa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd27d3e454319fa258a97e51406a9a81"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd27d3e454319fa258a97e51406a9a81"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1LogMsg.html#afd27d3e454319fa258a97e51406a9a81">defaultHandler</a> (int <a class="el" href="classExiv2_1_1LogMsg.html#ac2bf90efb62ec69439f6c71ca1498cc1">level</a>, const char *s)</td></tr>
<tr class="memdesc:afd27d3e454319fa258a97e51406a9a81"><td class="mdescLeft">&#160;</td><td class="mdescRight">The default log handler. Sends the log message to standard error. <br /></td></tr>
<tr class="separator:afd27d3e454319fa258a97e51406a9a81"><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>Class for a log message, used by the library. Applications can set the log level and provide a customer log message handler (callback function). </p>
<p>This class is meant to be used as a temporary object with the related macro-magic like this:</p>
<p><code> EXV_WARNING &lt;&lt; "Warning! Something looks fishy.\n"; </code></p>
<p>which translates to</p>
<p><code> if (LogMsg::warn &gt;= <a class="el" href="classExiv2_1_1LogMsg.html#ac2bf90efb62ec69439f6c71ca1498cc1" title="Return the current log level. ">LogMsg::level()</a> &amp;&amp; <a class="el" href="classExiv2_1_1LogMsg.html#abe4cfbb3b6aaff49f4b793f2711adaa9" title="Return the current log message handler. ">LogMsg::handler()</a>) LogMsg(LogMsg::warn).<a class="el" href="classExiv2_1_1LogMsg.html#a0e84e1ddf83bf19ef9c83a420518e8aa" title="Return a reference to the ostringstream which holds the log message. ">os()</a> &lt;&lt; "Warning! Something looks fishy.\n"; </code></p>
<p>The macros EXV_DEBUG, EXV_INFO, EXV_WARNING and EXV_ERROR are shorthands and ensure efficient use of the logging facility: If a log message doesn't need to be generated because of the log level setting, the temp object is not even created.</p>
<p>Caveat: The entire log message is not processed in this case. So don't make that call any logic that always needs to be executed. </p>
</div><hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="error_8hpp.html">error.hpp</a></li>
<li>error.cpp</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Mar 4 2016 17:51:50 for Exiv2 by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>