Blob Blame History Raw
<!-- HTML header for doxygen 1.8.8-->
<!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="X-UA-Compatible" content="IE=edge">
        <!-- For Mobile Devices -->
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
        <meta name="generator" content="Doxygen 1.8.15"/>
        <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
        <title>libevdev: Library logging facilities</title>
        <!--<link href="tabs.css" rel="stylesheet" type="text/css"/>-->
        <script type="text/javascript" src="dynsections.js"></script>
        <link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
        <link href="doxygen.css" rel="stylesheet" type="text/css" />
        <link href="bootstrap.css" rel="stylesheet" type="text/css"/>
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
<link href="libevdevdoxygen.css" rel="stylesheet" type="text/css"/>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
        <script type="text/javascript" src="doxy-boot.js"></script>
    </head>
    <body>
        <nav class="navbar navbar-default" role="navigation">
            <div class="container">
                <div class="navbar-header">
                    <a class="navbar-brand">libevdev 1.8.0</a>
                </div>
            </div>
        </nav>
        <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
            <div class="content" id="content">
                <div class="container">
                    <div class="row">
                        <div class="col-sm-12 panel panel-default" style="padding-bottom: 15px;">
                            <div style="margin-bottom: 15px;">
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</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 class="header">
  <div class="summary">
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Library logging facilities</div>  </div>
</div><!--header-->
<div class="contents">

<p>libevdev provides two methods of logging library-internal messages.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gaadd55a5932c7472fa3fbc95332d29418"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#gaadd55a5932c7472fa3fbc95332d29418">libevdev_log_func_t</a>) (enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> priority, void *data, const char *file, int line, const char *func, const char *format, va_list args) <a class="el" href="libevdev_8h.html#a64a0f325e88e1be50eb806e1ff75aec8">LIBEVDEV_ATTRIBUTE_PRINTF</a>(6</td></tr>
<tr class="memdesc:gaadd55a5932c7472fa3fbc95332d29418"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging function called by library-internal logging.  <a href="#gaadd55a5932c7472fa3fbc95332d29418">More...</a><br /></td></tr>
<tr class="separator:gaadd55a5932c7472fa3fbc95332d29418"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga14b506281a64b81f6dd740fb43b1faaa"><td class="memItemLeft" align="right" valign="top">typedef void(*) voi&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ga14b506281a64b81f6dd740fb43b1faaa">libevdev_set_log_function</a>) (<a class="el" href="group__logging.html#gaadd55a5932c7472fa3fbc95332d29418">libevdev_log_func_t</a> logfunc, void *data)</td></tr>
<tr class="memdesc:ga14b506281a64b81f6dd740fb43b1faaa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a printf-style logging handler for library-internal logging.  <a href="#ga14b506281a64b81f6dd740fb43b1faaa">More...</a><br /></td></tr>
<tr class="separator:ga14b506281a64b81f6dd740fb43b1faaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3bd32116aca4e7d1cfd741bf35a6e5ee"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ga3bd32116aca4e7d1cfd741bf35a6e5ee">libevdev_device_log_func_t</a>) (const struct libevdev *dev, enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> priority, void *data, const char *file, int line, const char *func, const char *format, va_list args) <a class="el" href="libevdev_8h.html#a64a0f325e88e1be50eb806e1ff75aec8">LIBEVDEV_ATTRIBUTE_PRINTF</a>(7</td></tr>
<tr class="memdesc:ga3bd32116aca4e7d1cfd741bf35a6e5ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging function called by library-internal logging for a specific libevdev context.  <a href="#ga3bd32116aca4e7d1cfd741bf35a6e5ee">More...</a><br /></td></tr>
<tr class="separator:ga3bd32116aca4e7d1cfd741bf35a6e5ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaee377cefdb5b19e55604173e68398b5"><td class="memItemLeft" align="right" valign="top">typedef void(*) voi&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#gaaee377cefdb5b19e55604173e68398b5">libevdev_set_device_log_function</a>) (struct libevdev *dev, <a class="el" href="group__logging.html#ga3bd32116aca4e7d1cfd741bf35a6e5ee">libevdev_device_log_func_t</a> logfunc, enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> priority, void *data)</td></tr>
<tr class="memdesc:gaaee377cefdb5b19e55604173e68398b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a printf-style logging handler for library-internal logging for this device context.  <a href="#gaaee377cefdb5b19e55604173e68398b5">More...</a><br /></td></tr>
<tr class="separator:gaaee377cefdb5b19e55604173e68398b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga0b798d0864f2b1b10e4603f9431b3364"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> { <a class="el" href="group__logging.html#gga0b798d0864f2b1b10e4603f9431b3364a21fd1083f2ebd0a25f09ee982e365d5f">LIBEVDEV_LOG_ERROR</a>, 
<a class="el" href="group__logging.html#gga0b798d0864f2b1b10e4603f9431b3364a4d13a031b112292ca3e7bab8c6d76abc">LIBEVDEV_LOG_INFO</a>, 
<a class="el" href="group__logging.html#gga0b798d0864f2b1b10e4603f9431b3364a760d66d422ffcf89b0f1ddb529b95793">LIBEVDEV_LOG_DEBUG</a>
 }</td></tr>
<tr class="separator:ga0b798d0864f2b1b10e4603f9431b3364"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gaf6b6842a9ed98b61d0abb421e853fd89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#gaf6b6842a9ed98b61d0abb421e853fd89">libevdev_set_log_priority</a> (enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> priority)</td></tr>
<tr class="memdesc:gaf6b6842a9ed98b61d0abb421e853fd89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Define the minimum level to be printed to the log handler.  <a href="#gaf6b6842a9ed98b61d0abb421e853fd89">More...</a><br /></td></tr>
<tr class="separator:gaf6b6842a9ed98b61d0abb421e853fd89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1da07493a798595cf85c127490b98ee8"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ga1da07493a798595cf85c127490b98ee8">libevdev_get_log_priority</a> (void)</td></tr>
<tr class="memdesc:ga1da07493a798595cf85c127490b98ee8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current log priority level.  <a href="#ga1da07493a798595cf85c127490b98ee8">More...</a><br /></td></tr>
<tr class="separator:ga1da07493a798595cf85c127490b98ee8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>libevdev provides two methods of logging library-internal messages. </p>
<p>The old method is to provide a global log handler in <a class="el" href="group__logging.html#ga14b506281a64b81f6dd740fb43b1faaa" title="Set a printf-style logging handler for library-internal logging.">libevdev_set_log_function()</a>. The new method is to provide a per-context log handler in <a class="el" href="group__logging.html#gaaee377cefdb5b19e55604173e68398b5" title="Set a printf-style logging handler for library-internal logging for this device context.">libevdev_set_device_log_function()</a>. Developers are encouraged to use the per-context logging facilities over the global log handler as it provides access to the libevdev instance that caused a message, and is more flexible when libevdev is used from within a shared library.</p>
<p>If a caller sets both the global log handler and a per-context log handler, each device with a per-context log handler will only invoke that log handler.</p>
<dl class="section note"><dt>Note</dt><dd>To set a context-specific log handler, a context is needed. Thus developers are discouraged from using <a class="el" href="group__init.html#ga89bb5bce1c23e293293484b05b12aaf4" title="Initialize a new libevdev device from the given fd.">libevdev_new_from_fd()</a> as important messages from the device initialization process may get lost.</dd>
<dd>
A context-specific handler cannot be used for libevdev's uinput devices. <a class="el" href="group__uinput.html">uinput device creation</a> must use the global log handler. </dd></dl>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="ga3bd32116aca4e7d1cfd741bf35a6e5ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3bd32116aca4e7d1cfd741bf35a6e5ee">&#9670;&nbsp;</a></span>libevdev_device_log_func_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* libevdev_device_log_func_t) (const struct libevdev *dev, enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> priority, void *data, const char *file, int line, const char *func, const char *format, va_list args) <a class="el" href="libevdev_8h.html#a64a0f325e88e1be50eb806e1ff75aec8">LIBEVDEV_ATTRIBUTE_PRINTF</a>(7</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Logging function called by library-internal logging for a specific libevdev context. </p>
<p>This function is expected to treat its input like printf would.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dev</td><td>The evdev device </td></tr>
    <tr><td class="paramname">priority</td><td>Log priority of this message </td></tr>
    <tr><td class="paramname">data</td><td>User-supplied data pointer (see <a class="el" href="group__logging.html#ga14b506281a64b81f6dd740fb43b1faaa" title="Set a printf-style logging handler for library-internal logging.">libevdev_set_log_function()</a>) </td></tr>
    <tr><td class="paramname">file</td><td>libevdev source code file generating this message </td></tr>
    <tr><td class="paramname">line</td><td>libevdev source code line generating this message </td></tr>
    <tr><td class="paramname">func</td><td>libevdev source code function generating this message </td></tr>
    <tr><td class="paramname">format</td><td>printf-style format string </td></tr>
    <tr><td class="paramname">args</td><td>List of arguments</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__logging.html#ga14b506281a64b81f6dd740fb43b1faaa" title="Set a printf-style logging handler for library-internal logging.">libevdev_set_log_function</a> </dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.3 </dd></dl>

</div>
</div>
<a id="gaadd55a5932c7472fa3fbc95332d29418"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaadd55a5932c7472fa3fbc95332d29418">&#9670;&nbsp;</a></span>libevdev_log_func_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* libevdev_log_func_t) (enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> priority, void *data, const char *file, int line, const char *func, const char *format, va_list args) <a class="el" href="libevdev_8h.html#a64a0f325e88e1be50eb806e1ff75aec8">LIBEVDEV_ATTRIBUTE_PRINTF</a>(6</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Logging function called by library-internal logging. </p>
<p>This function is expected to treat its input like printf would.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">priority</td><td>Log priority of this message </td></tr>
    <tr><td class="paramname">data</td><td>User-supplied data pointer (see <a class="el" href="group__logging.html#ga14b506281a64b81f6dd740fb43b1faaa" title="Set a printf-style logging handler for library-internal logging.">libevdev_set_log_function()</a>) </td></tr>
    <tr><td class="paramname">file</td><td>libevdev source code file generating this message </td></tr>
    <tr><td class="paramname">line</td><td>libevdev source code line generating this message </td></tr>
    <tr><td class="paramname">func</td><td>libevdev source code function generating this message </td></tr>
    <tr><td class="paramname">format</td><td>printf-style format string </td></tr>
    <tr><td class="paramname">args</td><td>List of arguments</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__logging.html#ga14b506281a64b81f6dd740fb43b1faaa" title="Set a printf-style logging handler for library-internal logging.">libevdev_set_log_function</a> </dd></dl>

</div>
</div>
<a id="gaaee377cefdb5b19e55604173e68398b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaee377cefdb5b19e55604173e68398b5">&#9670;&nbsp;</a></span>libevdev_set_device_log_function</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(*) voi libevdev_set_device_log_function) (struct libevdev *dev, <a class="el" href="group__logging.html#ga3bd32116aca4e7d1cfd741bf35a6e5ee">libevdev_device_log_func_t</a> logfunc, enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> priority, void *data)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set a printf-style logging handler for library-internal logging for this device context. </p>
<p>The default logging function is NULL, i.e. the global log handler is invoked. If a context-specific log handler is set, the global log handler is not invoked for this device.</p>
<dl class="section note"><dt>Note</dt><dd>This log function applies for this device context only, even if another context exists for the same fd.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dev</td><td>The evdev device </td></tr>
    <tr><td class="paramname">logfunc</td><td>The logging function for this device. If NULL, the current logging function is unset and logging falls back to the global log handler, if any. </td></tr>
    <tr><td class="paramname">priority</td><td>Minimum priority to be printed to the log. </td></tr>
    <tr><td class="paramname">data</td><td>User-specific data passed to the log handler.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function may be called before <a class="el" href="group__init.html#ga6658ac490d68c307ff8b8d1536c12b44" title="Set the fd for this struct and initialize internal data.">libevdev_set_fd()</a>. </dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.3 </dd></dl>

</div>
</div>
<a id="ga14b506281a64b81f6dd740fb43b1faaa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga14b506281a64b81f6dd740fb43b1faaa">&#9670;&nbsp;</a></span>libevdev_set_log_function</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(*) voi libevdev_set_log_function) (<a class="el" href="group__logging.html#gaadd55a5932c7472fa3fbc95332d29418">libevdev_log_func_t</a> logfunc, void *data)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set a printf-style logging handler for library-internal logging. </p>
<p>The default logging function is to stdout.</p>
<dl class="section note"><dt>Note</dt><dd>The global log handler is only called if no context-specific log handler has been set with <a class="el" href="group__logging.html#gaaee377cefdb5b19e55604173e68398b5" title="Set a printf-style logging handler for library-internal logging for this device context.">libevdev_set_device_log_function()</a>.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">logfunc</td><td>The logging function for this device. If NULL, the current logging function is unset and no logging is performed. </td></tr>
    <tr><td class="paramname">data</td><td>User-specific data passed to the log handler.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>This function may be called before <a class="el" href="group__init.html#ga6658ac490d68c307ff8b8d1536c12b44" title="Set the fd for this struct and initialize internal data.">libevdev_set_fd()</a>.</dd></dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>Use per-context logging instead, see <a class="el" href="group__logging.html#gaaee377cefdb5b19e55604173e68398b5" title="Set a printf-style logging handler for library-internal logging for this device context.">libevdev_set_device_log_function()</a>. </dd></dl>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="ga0b798d0864f2b1b10e4603f9431b3364"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0b798d0864f2b1b10e4603f9431b3364">&#9670;&nbsp;</a></span>libevdev_log_priority</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga0b798d0864f2b1b10e4603f9431b3364a21fd1083f2ebd0a25f09ee982e365d5f"></a>LIBEVDEV_LOG_ERROR&#160;</td><td class="fielddoc"><p>critical errors and application bugs </p>
</td></tr>
<tr><td class="fieldname"><a id="gga0b798d0864f2b1b10e4603f9431b3364a4d13a031b112292ca3e7bab8c6d76abc"></a>LIBEVDEV_LOG_INFO&#160;</td><td class="fielddoc"><p>informational messages </p>
</td></tr>
<tr><td class="fieldname"><a id="gga0b798d0864f2b1b10e4603f9431b3364a760d66d422ffcf89b0f1ddb529b95793"></a>LIBEVDEV_LOG_DEBUG&#160;</td><td class="fielddoc"><p>debug information </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga1da07493a798595cf85c127490b98ee8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1da07493a798595cf85c127490b98ee8">&#9670;&nbsp;</a></span>libevdev_get_log_priority()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a> libevdev_get_log_priority </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return the current log priority level. </p>
<p>Messages higher than this level are printed, others are discarded. This is a global setting.</p>
<dl class="section return"><dt>Returns</dt><dd>the current log level</dd></dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>Use per-context logging instead, see <a class="el" href="group__logging.html#gaaee377cefdb5b19e55604173e68398b5" title="Set a printf-style logging handler for library-internal logging for this device context.">libevdev_set_device_log_function()</a>. </dd></dl>

</div>
</div>
<a id="gaf6b6842a9ed98b61d0abb421e853fd89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf6b6842a9ed98b61d0abb421e853fd89">&#9670;&nbsp;</a></span>libevdev_set_log_priority()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void libevdev_set_log_priority </td>
          <td>(</td>
          <td class="paramtype">enum <a class="el" href="group__logging.html#ga0b798d0864f2b1b10e4603f9431b3364">libevdev_log_priority</a>&#160;</td>
          <td class="paramname"><em>priority</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Define the minimum level to be printed to the log handler. </p>
<p>Messages higher than this level are printed, others are discarded. This is a global setting and applies to any future logging messages.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">priority</td><td>Minimum priority to be printed to the log.</td></tr>
  </table>
  </dd>
</dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>Use per-context logging instead, see <a class="el" href="group__logging.html#gaaee377cefdb5b19e55604173e68398b5" title="Set a printf-style logging handler for library-internal logging for this device context.">libevdev_set_device_log_function()</a>. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.8-->
<!-- start footer part -->
</div>
</div>
</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>