<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!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>IsisReader: org::openisis::NativeDb Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.1 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;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>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.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)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><b>org</b>::<b>openisis</b>::<a class="el" href="classorg_1_1openisis_1_1NativeDb.html">NativeDb</a>
  </div>
</div>
<div class="contents">
<h1>org::openisis::NativeDb Class Reference</h1><!-- doxytag: class="org::openisis::NativeDb" --><!-- doxytag: inherits="org::openisis::Db" --><div class="dynheader">
Inheritance diagram for org::openisis::NativeDb:</div>
<div class="dynsection">
 <div class="center">
  <img src="classorg_1_1openisis_1_1NativeDb.gif" usemap="#org::openisis::NativeDb_map" alt=""/>
  <map id="org::openisis::NativeDb_map" name="org::openisis::NativeDb_map">
<area href="classorg_1_1openisis_1_1Db.html" alt="org::openisis::Db" shape="rect" coords="0,0,141,24"/>
</map>
 </div>
</div>

<p><a href="classorg_1_1openisis_1_1NativeDb-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classorg_1_1openisis_1_1NativeDb_1_1TermIterator.html">TermIterator</a></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adbfb429cc3117f7118d92b0167ee8225"></a><!-- doxytag: member="org::openisis::NativeDb::cvt" ref="adbfb429cc3117f7118d92b0167ee8225" args="(String txt)" -->
byte[]&nbsp;</td><td class="memItemRight" valign="bottom"><b>cvt</b> (String txt)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af65856bfc8178b1705b16a9c66ac85b0"></a><!-- doxytag: member="org::openisis::NativeDb::cvt" ref="af65856bfc8178b1705b16a9c66ac85b0" args="(byte[] b)" -->
String&nbsp;</td><td class="memItemRight" valign="bottom"><b>cvt</b> (byte[] b)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcb3a03fef4e9f6f711a88c67ef8fd3b"></a><!-- doxytag: member="org::openisis::NativeDb::NativeDb" ref="adcb3a03fef4e9f6f711a88c67ef8fd3b" args="(String enc, String dbname, String[] args)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>NativeDb</b> (String enc, String dbname, String[] args)  throws IOException 	</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classorg_1_1openisis_1_1NativeDb.html#a024b1d75577871b9944e0debbfea8eaf">readRow</a> (int rowid)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classorg_1_1openisis_1_1NativeDb.html#a5f27b1c1f94237221bb0f4b0e0474c15">writeRow</a> (<a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> rec)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classorg_1_1openisis_1_1NativeDb.html#ad125fcc8939934b9958fbb81360e675c">writeXRow</a> (<a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> rec, <a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> idx)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classorg_1_1openisis_1_1NativeDb.html#aa57ee68b6d4f1a2c1ec1a8994c15e46b">scanRow</a> (int rowid, int tag, String txt)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int[]&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classorg_1_1openisis_1_1NativeDb.html#a4792480dd3c30c4725064d443096802f">search</a> (String key, int mode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac7abed26ff726a9060cdbf9ccd26db80"></a><!-- doxytag: member="org::openisis::NativeDb::terms" ref="ac7abed26ff726a9060cdbf9ccd26db80" args="(String prefix)" -->
Iterator&nbsp;</td><td class="memItemRight" valign="bottom"><b>terms</b> (String prefix)</td></tr>
<tr><td colspan="2"><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">final short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classorg_1_1openisis_1_1NativeDb.html#aa5c73ac3becde8818de9f207e34a34de">db</a></td></tr>
<tr><td colspan="2"><h2>Package Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a0eac12018d5f1007f2c2e52e4681ad"></a><!-- doxytag: member="org::openisis::NativeDb::mkRow" ref="a4a0eac12018d5f1007f2c2e52e4681ad" args="(Object[] buf)" -->
<a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>mkRow</b> (Object[] buf)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ad68b348caa7b1788bb672c1dd235ef"></a><!-- doxytag: member="org::openisis::NativeDb::mkBuf" ref="a7ad68b348caa7b1788bb672c1dd235ef" args="(Rec rec)" -->
Object[]&nbsp;</td><td class="memItemRight" valign="bottom"><b>mkBuf</b> (<a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> rec)</td></tr>
<tr><td colspan="2"><h2>Static Package Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abbf92a03272b52a0c09dbe8c387607c7"></a><!-- doxytag: member="org::openisis::NativeDb::[static initializer]" ref="abbf92a03272b52a0c09dbe8c387607c7" args="" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>[static initializer]</b></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This class is the native implementation of class <a class="el" href="classorg_1_1openisis_1_1Db.html">Db</a>. </p>
<h3>Installation</h3>
<p>The shared library "openjsis" must be loadable. On a UNIX System, make sure that the file libopenjsis.so resides in a directory listed by the environment variable LD_LIBRARY_PATH or in /etc/ld.so.conf. If you just drop it in /usr/lib or similar dir, you may have to run a command like ldconfig. </p>
<p>On Windows, put openjsis.dll somewhere in the PATH. </p>
<dl class="rcs"><dt><b>Id</b></dt><dd>NativeDb.java,v 1.5 2003/04/08 00:20:53 kripke <a class="el" href="unionExp.html">Exp</a> </dd></dl>
<dl class="version"><dt><b>Version:</b></dt><dd></dd></dl>
<dl class="rcs"><dt><b>Revision</b></dt><dd>1.5 </dd></dl>
<dl class="author"><dt><b>Author:</b></dt><dd></dd></dl>
<dl class="rcs"><dt><b>Author</b></dt><dd>kripke </dd></dl>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a024b1d75577871b9944e0debbfea8eaf"></a><!-- doxytag: member="org::openisis::NativeDb::readRow" ref="a024b1d75577871b9944e0debbfea8eaf" args="(int rowid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> org::openisis::NativeDb::readRow </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>rowid</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>read a cooked row. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>rowid</em>&nbsp;</td><td>the mfn </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a <a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> or null, if row not available. </dd></dl>

<p>Implements <a class="el" href="classorg_1_1openisis_1_1Db.html#abdd740b99c2d95684c60e9c2fb8161ff">org::openisis::Db</a>.</p>

</div>
</div>
<a class="anchor" id="aa57ee68b6d4f1a2c1ec1a8994c15e46b"></a><!-- doxytag: member="org::openisis::NativeDb::scanRow" ref="aa57ee68b6d4f1a2c1ec1a8994c15e46b" args="(int rowid, int tag, String txt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> org::openisis::NativeDb::scanRow </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>rowid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">String&nbsp;</td>
          <td class="paramname"> <em>txt</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>read the first row with rowid &gt;= given rowid and containing txt in subfield tag (any, if 0). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>rowid</em>&nbsp;</td><td>the mfn </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a <a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> or null, if row not available. </dd></dl>

<p>Implements <a class="el" href="classorg_1_1openisis_1_1Db.html#a9b638a4636a69a26a983ae26b02b6ff4">org::openisis::Db</a>.</p>

</div>
</div>
<a class="anchor" id="a4792480dd3c30c4725064d443096802f"></a><!-- doxytag: member="org::openisis::NativeDb::search" ref="a4792480dd3c30c4725064d443096802f" args="(String key, int mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int [] org::openisis::NativeDb::search </td>
          <td>(</td>
          <td class="paramtype">String&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>read the array of rowids matching key. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>key to look for </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>one of the QRY_ constants above. may be ored with a tag&lt;&lt;16 to limit search to that field </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classorg_1_1openisis_1_1Db.html#ad7cf844dbb25d56dc861661ea40693a5">org::openisis::Db</a>.</p>

</div>
</div>
<a class="anchor" id="a5f27b1c1f94237221bb0f4b0e0474c15"></a><!-- doxytag: member="org::openisis::NativeDb::writeRow" ref="a5f27b1c1f94237221bb0f4b0e0474c15" args="(Rec rec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">short org::openisis::NativeDb::writeRow </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a>&nbsp;</td>
          <td class="paramname"> <em>rec</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>write a cooked row. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>row</em>&nbsp;</td><td>the <a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> to be written </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 if write succeeded, else a negative error code </dd></dl>

<p>Implements <a class="el" href="classorg_1_1openisis_1_1Db.html#a110256d1b1653e2fd357994b143ec319">org::openisis::Db</a>.</p>

</div>
</div>
<a class="anchor" id="ad125fcc8939934b9958fbb81360e675c"></a><!-- doxytag: member="org::openisis::NativeDb::writeXRow" ref="ad125fcc8939934b9958fbb81360e675c" args="(Rec rec, Rec idx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">short org::openisis::NativeDb::writeXRow </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a>&nbsp;</td>
          <td class="paramname"> <em>rec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a>&nbsp;</td>
          <td class="paramname"> <em>idx</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>write a cooked row together with index information. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>row</em>&nbsp;</td><td>the <a class="el" href="classorg_1_1openisis_1_1Rec.html">Rec</a> to be written </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success else a negative error code </dd></dl>

<p>Implements <a class="el" href="classorg_1_1openisis_1_1Db.html#ad6c68514dbc977086bcbb3f0eeabc2f4">org::openisis::Db</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="aa5c73ac3becde8818de9f207e34a34de"></a><!-- doxytag: member="org::openisis::NativeDb::db" ref="aa5c73ac3becde8818de9f207e34a34de" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">final short <a class="el" href="classorg_1_1openisis_1_1NativeDb.html#aa5c73ac3becde8818de9f207e34a34de">org::openisis::NativeDb::db</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Number of this db. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>contrib/openisis/org/openisis/NativeDb.java</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">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Variables</a></div>

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

<hr size="1"/><address style="text-align: right;"><small>Generated on Tue Mar 30 14:47:17 2010 for IsisReader by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>