Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 6da22cde10e2949526c0fd6c2baddf28 > files > 20

libfprint-devel-0.3.0-1.fc14.i686.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"/>
<title>libfprint: Device discovery</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.1 -->
<script type="text/javascript">
function hasClass(ele,cls) {
  return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}

function addClass(ele,cls) {
  if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}

function removeClass(ele,cls) {
  if (hasClass(ele,cls)) {
    var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
    ele.className=ele.className.replace(reg,' ');
  }
}

function toggleVisibility(linkObj) {
 var base = linkObj.getAttribute('id');
 var summary = document.getElementById(base + '-summary');
 var content = document.getElementById(base + '-content');
 var trigger = document.getElementById(base + '-trigger');
 if ( hasClass(linkObj,'closed') ) {
   summary.style.display = 'none';
   content.style.display = 'block';
   trigger.src = 'open.png';
   removeClass(linkObj,'closed');
   addClass(linkObj,'opened');
 } else if ( hasClass(linkObj,'opened') ) {
   summary.style.display = 'block';
   content.style.display = 'none';
   trigger.src = 'closed.png';
   removeClass(linkObj,'opened');
   addClass(linkObj,'closed');
 }
 return false;
}
</script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<h1>Device discovery</h1>  </div>
</div>
<div class="contents">

<p>These functions allow you to scan the system for supported fingerprint scanning hardware.  
<a href="#_details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct fp_dscv_dev **&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#gacb1b399085676739d4e1d9868638f3d6">fp_discover_devs</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scans the system and returns a list of discovered devices.  <a href="#gacb1b399085676739d4e1d9868638f3d6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#ga225dc69e61bd49af648897a2e6156a24">fp_dscv_devs_free</a> (struct fp_dscv_dev **devs)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Free a list of discovered devices.  <a href="#ga225dc69e61bd49af648897a2e6156a24"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct fp_driver *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#ga630d5f065f553e831f6e6b1b0064d061">fp_dscv_dev_get_driver</a> (struct fp_dscv_dev *dev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the <a class="el" href="group__drv.html">driver</a> for a discovered device.  <a href="#ga630d5f065f553e831f6e6b1b0064d061"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">uint32_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#gaa2f2b76b8cb8368ed4a453ea9699412f">fp_dscv_dev_get_devtype</a> (struct fp_dscv_dev *dev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the <a class="el" href="group__dev.html#devtype">devtype</a> for a discovered device.  <a href="#gaa2f2b76b8cb8368ed4a453ea9699412f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#ga89cffce735038e47a28f19a41c37b37b">fp_dscv_dev_supports_print_data</a> (struct fp_dscv_dev *dev, struct fp_print_data *data)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines if a specific <a class="el" href="group__print__data.html">stored print</a> appears to be compatible with a discovered device.  <a href="#ga89cffce735038e47a28f19a41c37b37b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#gafb427e5a0fa78f3aee41b63f0da093ac">fp_dscv_dev_supports_dscv_print</a> (struct fp_dscv_dev *dev, struct fp_dscv_print *data)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determines if a specific <a class="el" href="group__dscv__print.html">discovered print</a> appears to be compatible with a discovered device.  <a href="#gafb427e5a0fa78f3aee41b63f0da093ac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct fp_dscv_dev *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#ga979e47e55effbba8d38fb95236413c2a">fp_dscv_dev_for_print_data</a> (struct fp_dscv_dev **devs, struct fp_print_data *data)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Searches a list of discovered devices for a device that appears to be compatible with a <a class="el" href="group__print__data.html">stored print</a>.  <a href="#ga979e47e55effbba8d38fb95236413c2a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct fp_dscv_dev *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__dscv__dev.html#gae1fa4cad50e81d877ed0c13bb01dd08f">fp_dscv_dev_for_dscv_print</a> (struct fp_dscv_dev **devs, struct fp_dscv_print *print)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Searches a list of discovered devices for a device that appears to be compatible with a <a class="el" href="group__dscv__print.html">discovered print</a>.  <a href="#gae1fa4cad50e81d877ed0c13bb01dd08f"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>These functions allow you to scan the system for supported fingerprint scanning hardware. </p>
<p>This is your starting point when integrating libfprint into your software.</p>
<p>When you've identified a discovered device that you would like to control, you can open it with <a class="el" href="group__dev.html#gaadd81517ba2e3f1279525a326d0e6ee4" title="Opens and initialises a device.">fp_dev_open()</a>. Note that discovered devices may no longer be available at the time when you want to open them, for example the user may have unplugged the device. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gacb1b399085676739d4e1d9868638f3d6"></a><!-- doxytag: member="core.c::fp_discover_devs" ref="gacb1b399085676739d4e1d9868638f3d6" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct fp_dscv_dev** fp_discover_devs </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [read]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Scans the system and returns a list of discovered devices. </p>
<p>This is your entry point into finding a fingerprint reader to operate. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a NULL-terminated list of discovered devices. Must be freed with <a class="el" href="group__dscv__dev.html#ga225dc69e61bd49af648897a2e6156a24" title="Free a list of discovered devices.">fp_dscv_devs_free()</a> after use. </dd></dl>

</div>
</div>
<a class="anchor" id="ga225dc69e61bd49af648897a2e6156a24"></a><!-- doxytag: member="core.c::fp_dscv_devs_free" ref="ga225dc69e61bd49af648897a2e6156a24" args="(struct fp_dscv_dev **devs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void fp_dscv_devs_free </td>
          <td>(</td>
          <td class="paramtype">struct fp_dscv_dev **&nbsp;</td>
          <td class="paramname"> <em>devs</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Free a list of discovered devices. </p>
<p>This function destroys the list and all discovered devices that it included, so make sure you have opened your discovered device <b>before</b> freeing the list. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>devs</em>&nbsp;</td><td>the list of discovered devices. If NULL, function simply returns. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga630d5f065f553e831f6e6b1b0064d061"></a><!-- doxytag: member="core.c::fp_dscv_dev_get_driver" ref="ga630d5f065f553e831f6e6b1b0064d061" args="(struct fp_dscv_dev *dev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct fp_driver* fp_dscv_dev_get_driver </td>
          <td>(</td>
          <td class="paramtype">struct fp_dscv_dev *&nbsp;</td>
          <td class="paramname"> <em>dev</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [read]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the <a class="el" href="group__drv.html">driver</a> for a discovered device. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dev</em>&nbsp;</td><td>the discovered device </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the driver backing the device </dd></dl>

</div>
</div>
<a class="anchor" id="gaa2f2b76b8cb8368ed4a453ea9699412f"></a><!-- doxytag: member="core.c::fp_dscv_dev_get_devtype" ref="gaa2f2b76b8cb8368ed4a453ea9699412f" args="(struct fp_dscv_dev *dev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t fp_dscv_dev_get_devtype </td>
          <td>(</td>
          <td class="paramtype">struct fp_dscv_dev *&nbsp;</td>
          <td class="paramname"> <em>dev</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the <a class="el" href="group__dev.html#devtype">devtype</a> for a discovered device. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dev</em>&nbsp;</td><td>the discovered device </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the devtype of the device </dd></dl>

</div>
</div>
<a class="anchor" id="ga89cffce735038e47a28f19a41c37b37b"></a><!-- doxytag: member="core.c::fp_dscv_dev_supports_print_data" ref="ga89cffce735038e47a28f19a41c37b37b" args="(struct fp_dscv_dev *dev, struct fp_print_data *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int fp_dscv_dev_supports_print_data </td>
          <td>(</td>
          <td class="paramtype">struct fp_dscv_dev *&nbsp;</td>
          <td class="paramname"> <em>dev</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct fp_print_data *&nbsp;</td>
          <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determines if a specific <a class="el" href="group__print__data.html">stored print</a> appears to be compatible with a discovered device. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dev</em>&nbsp;</td><td>the discovered device </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>the print for compatibility checking </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>1 if the print is compatible with the device, 0 otherwise </dd></dl>

<p>Referenced by <a class="el" href="group__dscv__dev.html#ga979e47e55effbba8d38fb95236413c2a">fp_dscv_dev_for_print_data()</a>.</p>

</div>
</div>
<a class="anchor" id="gafb427e5a0fa78f3aee41b63f0da093ac"></a><!-- doxytag: member="core.c::fp_dscv_dev_supports_dscv_print" ref="gafb427e5a0fa78f3aee41b63f0da093ac" args="(struct fp_dscv_dev *dev, struct fp_dscv_print *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int fp_dscv_dev_supports_dscv_print </td>
          <td>(</td>
          <td class="paramtype">struct fp_dscv_dev *&nbsp;</td>
          <td class="paramname"> <em>dev</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct fp_dscv_print *&nbsp;</td>
          <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determines if a specific <a class="el" href="group__dscv__print.html">discovered print</a> appears to be compatible with a discovered device. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dev</em>&nbsp;</td><td>the discovered device </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>the discovered print for compatibility checking </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>1 if the print is compatible with the device, 0 otherwise </dd></dl>

<p>Referenced by <a class="el" href="group__dscv__dev.html#gae1fa4cad50e81d877ed0c13bb01dd08f">fp_dscv_dev_for_dscv_print()</a>.</p>

</div>
</div>
<a class="anchor" id="ga979e47e55effbba8d38fb95236413c2a"></a><!-- doxytag: member="core.c::fp_dscv_dev_for_print_data" ref="ga979e47e55effbba8d38fb95236413c2a" args="(struct fp_dscv_dev **devs, struct fp_print_data *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct fp_dscv_dev* fp_dscv_dev_for_print_data </td>
          <td>(</td>
          <td class="paramtype">struct fp_dscv_dev **&nbsp;</td>
          <td class="paramname"> <em>devs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct fp_print_data *&nbsp;</td>
          <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [read]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches a list of discovered devices for a device that appears to be compatible with a <a class="el" href="group__print__data.html">stored print</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>devs</em>&nbsp;</td><td>a list of discovered devices </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>the print under inspection </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the first discovered device that appears to support the print, or NULL if no apparently compatible devices could be found </dd></dl>

<p>References <a class="el" href="group__dscv__dev.html#ga89cffce735038e47a28f19a41c37b37b">fp_dscv_dev_supports_print_data()</a>.</p>

</div>
</div>
<a class="anchor" id="gae1fa4cad50e81d877ed0c13bb01dd08f"></a><!-- doxytag: member="core.c::fp_dscv_dev_for_dscv_print" ref="gae1fa4cad50e81d877ed0c13bb01dd08f" args="(struct fp_dscv_dev **devs, struct fp_dscv_print *print)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct fp_dscv_dev* fp_dscv_dev_for_dscv_print </td>
          <td>(</td>
          <td class="paramtype">struct fp_dscv_dev **&nbsp;</td>
          <td class="paramname"> <em>devs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct fp_dscv_print *&nbsp;</td>
          <td class="paramname"> <em>print</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [read]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches a list of discovered devices for a device that appears to be compatible with a <a class="el" href="group__dscv__print.html">discovered print</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>devs</em>&nbsp;</td><td>a list of discovered devices </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>print</em>&nbsp;</td><td>the print under inspection </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the first discovered device that appears to support the print, or NULL if no apparently compatible devices could be found </dd></dl>

<p>References <a class="el" href="group__dscv__dev.html#gafb427e5a0fa78f3aee41b63f0da093ac">fp_dscv_dev_supports_dscv_print()</a>.</p>

</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Wed Sep 8 2010 for libfprint by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
</body>
</html>