<!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>pcsc-lite: ReaderContext Struct Reference</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.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">pcsc-lite <span id="projectnumber">1.7.2</span></div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-attribs">Data Fields</a> </div> <div class="headertitle"> <div class="title">ReaderContext Struct Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="ReaderContext" --><div class="dynheader"> Collaboration diagram for ReaderContext:</div> <div class="dyncontent"> <div class="center"><img src="structReaderContext__coll__graph.png" border="0" usemap="#ReaderContext_coll__map" alt="Collaboration graph"/></div> <map name="ReaderContext_coll__map" id="ReaderContext_coll__map"> <area shape="rect" id="node2" href="structFctMap__V2.html" title="FctMap_V2" alt="" coords="5,176,93,205"/><area shape="rect" id="node4" href="structlist__t.html" title="list object" alt="" coords="148,176,199,205"/><area shape="rect" id="node6" href="structlist__entry__s.html" title="list_entry_s" alt="" coords="41,8,129,37"/><area shape="rect" id="node9" href="structlist__attributes__s.html" title="list_attributes_s" alt="" coords="203,8,317,37"/><area shape="rect" id="node11" href="structFctMap__V3.html" title="FctMap_V3" alt="" coords="227,176,315,205"/><area shape="rect" id="node13" href="structpubReaderStatesList.html" title="Define an exported public reader state structure so each application gets instant notification of cha..." alt="" coords="339,176,483,205"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-attribs"></a> Data Fields</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad44d8038f8e43459ac0a1c426dd5f743"></a><!-- doxytag: member="ReaderContext::library" ref="ad44d8038f8e43459ac0a1c426dd5f743" args="" --> char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#ad44d8038f8e43459ac0a1c426dd5f743">library</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Library Path. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af2ff1e3088c734549b4c3676c5e86a22"></a><!-- doxytag: member="ReaderContext::device" ref="af2ff1e3088c734549b4c3676c5e86a22" args="" --> char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#af2ff1e3088c734549b4c3676c5e86a22">device</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Device Name. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a718c57847779ba5a7a45a648c86d2aa7"></a><!-- doxytag: member="ReaderContext::pthThread" ref="a718c57847779ba5a7a45a648c86d2aa7" args="" --> pthread_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a718c57847779ba5a7a45a648c86d2aa7">pthThread</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Event polling thread. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a613ccbba508d3812b5a5ffe174ad7fe2"></a><!-- doxytag: member="ReaderContext::pthCardEvent" ref="a613ccbba508d3812b5a5ffe174ad7fe2" args=")(DWORD, int)" --> RESPONSECODE(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a613ccbba508d3812b5a5ffe174ad7fe2">pthCardEvent</a> )(DWORD, int)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Card Event sync. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a221ef594a986ccfa18dfafb5d7954bc1"></a><!-- doxytag: member="ReaderContext::mMutex" ref="a221ef594a986ccfa18dfafb5d7954bc1" args="" --> pthread_mutex_t * </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a221ef594a986ccfa18dfafb5d7954bc1">mMutex</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Mutex for this connection. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adae3b865de760880860ba0a811bd398b"></a><!-- doxytag: member="ReaderContext::handlesList" ref="adae3b865de760880860ba0a811bd398b" args="" --> <a class="el" href="structlist__t.html">list_t</a> </td><td class="memItemRight" valign="bottom"><b>handlesList</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top">pthread_mutex_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#ac9952a2bab9a7782e85e7f4d073f225e">handlesList_lock</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">lock for the above list <a href="#ac9952a2bab9a7782e85e7f4d073f225e"></a><br/></td></tr> <tr><td class="memItemLeft" ><a class="anchor" id="a627d54efaa512c2d1cc5d43367ee9420"></a><!-- doxytag: member="ReaderContext::psFunctions" ref="a627d54efaa512c2d1cc5d43367ee9420" args="" --> union {</td></tr> <tr><td class="memItemLeft" >   <a class="el" href="structFctMap__V2.html">FCT_MAP_V2</a>   <a class="el" href="structReaderContext.html#ab843b091726f4cb816f0f74c0318bc17">psFunctions_v2</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">API V2.0. <br/></td></tr> <tr><td class="memItemLeft" >   <a class="el" href="structFctMap__V3.html">FCT_MAP_V3</a>   <a class="el" href="structReaderContext.html#a2419b85252a2e83704c6c98222ccc37a">psFunctions_v3</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">API V3.0. <br/></td></tr> <tr><td class="memItemLeft" valign="top">} </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a627d54efaa512c2d1cc5d43367ee9420">psFunctions</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">driver functions <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5257a53e17e1ca11daf01b70b49cc360"></a><!-- doxytag: member="ReaderContext::vHandle" ref="a5257a53e17e1ca11daf01b70b49cc360" args="" --> LPVOID </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a5257a53e17e1ca11daf01b70b49cc360">vHandle</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Dlopen handle. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad880fc4455c253781e8968f2239d56f"></a><!-- doxytag: member="ReaderContext::version" ref="aad880fc4455c253781e8968f2239d56f" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#aad880fc4455c253781e8968f2239d56f">version</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">IFD Handler version number. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63c89c04d1feae07ca35558055155ffb"></a><!-- doxytag: member="ReaderContext::port" ref="a63c89c04d1feae07ca35558055155ffb" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a63c89c04d1feae07ca35558055155ffb">port</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Port ID. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83d6e2127b4cc5e01f2012608487d31a"></a><!-- doxytag: member="ReaderContext::slot" ref="a83d6e2127b4cc5e01f2012608487d31a" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a83d6e2127b4cc5e01f2012608487d31a">slot</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Current Reader Slot. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a709439b280f5c7366f806423bfb5fdb5"></a><!-- doxytag: member="ReaderContext::hLockId" ref="a709439b280f5c7366f806423bfb5fdb5" args="" --> <a class="el" href="pcsclite_8h.html#af328aca3e11de737ecd771bcf1f75fb5">SCARDHANDLE</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a709439b280f5c7366f806423bfb5fdb5">hLockId</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Lock Id. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab37901567c864bc7d16bdb25020406d6"></a><!-- doxytag: member="ReaderContext::dwIdentity" ref="ab37901567c864bc7d16bdb25020406d6" args="" --> DWORD </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#ab37901567c864bc7d16bdb25020406d6">dwIdentity</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Shared ID High Nibble. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74dfbd8479c24f0a44f32c6ce54bd6e7"></a><!-- doxytag: member="ReaderContext::LockCount" ref="a74dfbd8479c24f0a44f32c6ce54bd6e7" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a74dfbd8479c24f0a44f32c6ce54bd6e7">LockCount</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">number of recursive locks <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0153acdf44acec67845e32db4733ae7"></a><!-- doxytag: member="ReaderContext::contexts" ref="ac0153acdf44acec67845e32db4733ae7" args="" --> int32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#ac0153acdf44acec67845e32db4733ae7">contexts</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Number of open contexts. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83fdd1564695183a490af4de1d08709b"></a><!-- doxytag: member="ReaderContext::pFeeds" ref="a83fdd1564695183a490af4de1d08709b" args="" --> int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a83fdd1564695183a490af4de1d08709b">pFeeds</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Number of shared client to lib. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c021e8de4e046238296212aec04d963"></a><!-- doxytag: member="ReaderContext::pMutex" ref="a9c021e8de4e046238296212aec04d963" args="" --> int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a9c021e8de4e046238296212aec04d963">pMutex</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Number of client to mutex. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af19f336bd37ddc379cbd32106acb82e7"></a><!-- doxytag: member="ReaderContext::powerState" ref="af19f336bd37ddc379cbd32106acb82e7" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#af19f336bd37ddc379cbd32106acb82e7">powerState</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">auto power off state <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a48cbdd28a24fa823fdb1c079326104c2"></a><!-- doxytag: member="ReaderContext::powerState_lock" ref="a48cbdd28a24fa823fdb1c079326104c2" args="" --> pthread_mutex_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#a48cbdd28a24fa823fdb1c079326104c2">powerState_lock</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">powerState mutex <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad83f23e5ebcf7ddd14d27928da96a97e"></a><!-- doxytag: member="ReaderContext::readerState" ref="ad83f23e5ebcf7ddd14d27928da96a97e" args="" --> struct <a class="el" href="structpubReaderStatesList.html">pubReaderStatesList</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structReaderContext.html#ad83f23e5ebcf7ddd14d27928da96a97e">readerState</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">link to the reader state <br/></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"> <p>Definition at line <a class="el" href="readerfactory_8h_source.html#l00085">85</a> of file <a class="el" href="readerfactory_8h_source.html">readerfactory.h</a>.</p> </div><hr/><h2>Field Documentation</h2> <a class="anchor" id="ac9952a2bab9a7782e85e7f4d073f225e"></a><!-- doxytag: member="ReaderContext::handlesList_lock" ref="ac9952a2bab9a7782e85e7f4d073f225e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">pthread_mutex_t <a class="el" href="structReaderContext.html#ac9952a2bab9a7782e85e7f4d073f225e">handlesList_lock</a></td> </tr> </table> </div> <div class="memdoc"> <p>lock for the above list </p> <p>Structure of connected handles </p> <p>Definition at line <a class="el" href="readerfactory_8h_source.html#l00093">93</a> of file <a class="el" href="readerfactory_8h_source.html">readerfactory.h</a>.</p> </div> </div> <hr/>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="readerfactory_8h_source.html">readerfactory.h</a></li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Thu Sep 15 2011 for pcsc-lite by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address> </body> </html>