Sophie

Sophie

distrib > Fedora > 14 > i386 > by-pkgid > abb2634846290d27f545cecded067e1f > files > 643

barry-devel-docs-0.17.1-4.fc14.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Barry: Barry::Mode::Desktop Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <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="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="classes.html"><span>Classes</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 class="tabs">
    <ul>
      <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
      <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"><a class="el" href="namespaceBarry.html">Barry</a>::<b>Mode</b>::<a class="el" href="classBarry_1_1Mode_1_1Desktop.html">Desktop</a>
  </div>
</div>
<div class="contents">
<h1>Barry::Mode::Desktop Class Reference</h1><!-- doxytag: class="Barry::Mode::Desktop" --><!-- doxytag: inherits="Barry::Mode::Mode" --><code>#include &lt;<a class="el" href="m__desktop_8h-source.html">m_desktop.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for Barry::Mode::Desktop:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop__inherit__graph.png" border="0" usemap="#Barry_1_1Mode_1_1Desktop__inherit__map" alt="Inheritance graph"></center>
<map name="Barry_1_1Mode_1_1Desktop__inherit__map">
<area shape="rect" href="classBarry_1_1Mode_1_1Mode.html" title="Base class for simple mode classes." alt="" coords="13,5,144,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
<div class="dynheader">
Collaboration diagram for Barry::Mode::Desktop:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop__coll__graph.png" border="0" usemap="#Barry_1_1Mode_1_1Desktop__coll__map" alt="Collaboration graph"></center>
<map name="Barry_1_1Mode_1_1Desktop__coll__map">
<area shape="rect" href="classBarry_1_1Mode_1_1Mode.html" title="Base class for simple mode classes." alt="" coords="1119,292,1249,319"><area shape="rect" href="classBarry_1_1Controller.html" title="The main interface class." alt="" coords="875,343,989,369"><area shape="rect" title="STL class." alt="" coords="332,145,412,172"><area shape="rect" href="classBarry_1_1IConverter.html" title="Main charset conversion class, primarily focused on converting between the Blackberry..." alt="" coords="1124,171,1244,197"><area shape="rect" title="STL class." alt="" coords="7,145,172,172"><area shape="rect" href="classBarry_1_1DataQueue.html" title="This class provides a thread aware fifo queue for Data objects, providing memory..." alt="" coords="27,300,152,327"><area shape="rect" href="classBarry_1_1IConvHandle.html" title="Wrapper class for a two&#45;way iconv_t handle pair." alt="" coords="865,171,999,197"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classBarry_1_1Mode_1_1Desktop-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
The main interface class to the device databases. 
<p>
To use this class, use the following steps:<p>
<ul>
<li>Create a <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> object (see <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> class for more details)</li><li>Create this <a class="el" href="classBarry_1_1Mode_1_1Desktop.html" title="The main interface class to the device databases.">Mode::Desktop</a> object, passing in the <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> object during construction</li><li>Call <a class="el" href="classBarry_1_1Mode_1_1Mode.html#1110243f16be2b647ed9810da27abe11" title="Select device mode.">Open()</a> to open database socket and finish constructing.</li><li>Call <a class="el" href="classBarry_1_1Mode_1_1Desktop.html#41d83954c0bcc4b3a707c7501269c5b9" title="Returns DatabaseDatabase object for this connection.">GetDBDB()</a> to get the device's database database</li><li>Call <a class="el" href="classBarry_1_1Mode_1_1Desktop.html#4e1dad976351ad48029dc80d5f05fae3" title="Get numeric database ID by name.">GetDBID()</a> to get a database ID by name</li><li>Call <a class="el" href="classBarry_1_1Mode_1_1Desktop.html#6bb1c96d6082575b5fa684dee2af51a6" title="Retrieve a database from the handheld device, using the given parser to parse the...">LoadDatabase()</a> to retrieve and store a database </li></ul>

<p>Definition at line <a class="el" href="m__desktop_8h-source.html#l00058">58</a> of file <a class="el" href="m__desktop_8h-source.html">m_desktop.h</a>.</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const DatabaseDatabase &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#41d83954c0bcc4b3a707c7501269c5b9">GetDBDB</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns DatabaseDatabase object for this connection.  <a href="#41d83954c0bcc4b3a707c7501269c5b9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#4e1dad976351ad48029dc80d5f05fae3">GetDBID</a> (const std::string &amp;name) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get numeric database ID by name.  <a href="#4e1dad976351ad48029dc80d5f05fae3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#b1d7a169122aae509924729aedfeb24f">GetDBCommand</a> (CommandType ct)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get database command from command table.  <a href="#b1d7a169122aae509924729aedfeb24f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#047fe0a4a6dff740822451ffd38ddd84">GetRecordStateTable</a> (unsigned int dbId, RecordStateTable &amp;result)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve the record state table from the handheld device, using the given database ID.  <a href="#047fe0a4a6dff740822451ffd38ddd84"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#0fec0d31ff496974acfc15fdc75f074a">AddRecord</a> (unsigned int dbId, <a class="el" href="classBarry_1_1Builder.html">Builder</a> &amp;build)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a record to the specified database.  <a href="#0fec0d31ff496974acfc15fdc75f074a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#2420208d094c0195dd41b5836f54dc10">GetRecord</a> (unsigned int dbId, unsigned int stateTableIndex, <a class="el" href="classBarry_1_1Parser.html">Parser</a> &amp;parser)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a specific record from the specified database.  <a href="#2420208d094c0195dd41b5836f54dc10"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#bf813b7fb04062515369209c8073dab0">SetRecord</a> (unsigned int dbId, unsigned int stateTableIndex, <a class="el" href="classBarry_1_1Builder.html">Builder</a> &amp;build)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Overwrites a specific record in the device as identified by the stateTableIndex.  <a href="#bf813b7fb04062515369209c8073dab0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#a766fb027d28f7cf4bb069eb0991baaa">ClearDirty</a> (unsigned int dbId, unsigned int stateTableIndex)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clears the dirty flag on the specified record in the specified database.  <a href="#a766fb027d28f7cf4bb069eb0991baaa"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#04cd4063958483b31cc98a353f335fe0">DeleteRecord</a> (unsigned int dbId, unsigned int stateTableIndex)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes the specified record in the specified database.  <a href="#04cd4063958483b31cc98a353f335fe0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Mode_1_1Desktop.html#6bb1c96d6082575b5fa684dee2af51a6">LoadDatabase</a> (unsigned int dbId, <a class="el" href="classBarry_1_1Parser.html">Parser</a> &amp;parser)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve a database from the handheld device, using the given parser to parse the resulting data, and optionally store it.  <a href="#6bb1c96d6082575b5fa684dee2af51a6"></a><br></td></tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="41d83954c0bcc4b3a707c7501269c5b9"></a><!-- doxytag: member="Barry::Mode::Desktop::GetDBDB" ref="41d83954c0bcc4b3a707c7501269c5b9" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const DatabaseDatabase&amp; Barry::Mode::Desktop::GetDBDB           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns DatabaseDatabase object for this connection. 
<p>
Must call <a class="el" href="classBarry_1_1Mode_1_1Mode.html#1110243f16be2b647ed9810da27abe11" title="Select device mode.">Open()</a> first, which loads the DBDB. 
<p>Definition at line <a class="el" href="m__desktop_8h-source.html#l00094">94</a> of file <a class="el" href="m__desktop_8h-source.html">m_desktop.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4e1dad976351ad48029dc80d5f05fae3"></a><!-- doxytag: member="Barry::Mode::Desktop::GetDBID" ref="4e1dad976351ad48029dc80d5f05fae3" args="(const std::string &amp;name) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int Barry::Mode::Desktop::GetDBID           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get numeric database ID by name. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>name</em>&nbsp;</td><td>Name of database, which matches one of the names listed in <a class="el" href="classBarry_1_1Mode_1_1Desktop.html#41d83954c0bcc4b3a707c7501269c5b9" title="Returns DatabaseDatabase object for this connection.">GetDBDB()</a></td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classBarry_1_1Error.html" title="The base class for any future derived exceptions.">Barry::Error</a></em>&nbsp;</td><td>Thrown if name not found. </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00134">134</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

</div>
</div><p>
<a class="anchor" name="b1d7a169122aae509924729aedfeb24f"></a><!-- doxytag: member="Barry::Mode::Desktop::GetDBCommand" ref="b1d7a169122aae509924729aedfeb24f" args="(CommandType ct)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int Barry::Mode::Desktop::GetDBCommand           </td>
          <td>(</td>
          <td class="paramtype">CommandType&nbsp;</td>
          <td class="paramname"> <em>ct</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get database command from command table. 
<p>
Must call <a class="el" href="classBarry_1_1Mode_1_1Mode.html#1110243f16be2b647ed9810da27abe11" title="Select device mode.">Open()</a> before this. 
<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00150">150</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>Referenced by <a class="el" href="packet_8cc-source.html#l00205">Barry::DBPacket::ClearDatabase()</a>, <a class="el" href="packet_8cc-source.html#l00306">Barry::DBPacket::DeleteRecordByIndex()</a>, <a class="el" href="packet_8cc-source.html#l00228">Barry::DBPacket::GetDBDB()</a>, <a class="el" href="packet_8cc-source.html#l00331">Barry::DBPacket::GetRecordByIndex()</a>, <a class="el" href="packet_8cc-source.html#l00396">Barry::DBPacket::GetRecords()</a>, <a class="el" href="packet_8cc-source.html#l00251">Barry::DBPacket::GetRecordStateTable()</a>, <a class="el" href="packet_8cc-source.html#l00423">Barry::DBPacket::SetRecord()</a>, <a class="el" href="packet_8cc-source.html#l00359">Barry::DBPacket::SetRecordByIndex()</a>, and <a class="el" href="packet_8cc-source.html#l00278">Barry::DBPacket::SetRecordFlags()</a>.</p>

<p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_b1d7a169122aae509924729aedfeb24f_icgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_b1d7a169122aae509924729aedfeb24f_icgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_b1d7a169122aae509924729aedfeb24f_icgraph_map">
<area shape="rect" href="classBarry_1_1DBPacket.html#ace85c6dd63c5f85e21e9f61e10e5af5" title="Builds a command packet for the CLEAR_DATABASE command code, placing the data in..." alt="" coords="331,5,541,32"><area shape="rect" href="classBarry_1_1DBPacket.html#fb9625f072f936a03ebee1ac64b78bf4" title="Builds a command packet in the send buffer for the DELETE_RECORD_BY_INDEX command..." alt="" coords="309,56,563,83"><area shape="rect" href="classBarry_1_1DBPacket.html#206e98e5159e7fe7790d4976d0f039a0" title="Builds a command packet for the GET_DBDB command code, placing the data in m_send..." alt="" coords="344,107,528,133"><area shape="rect" href="classBarry_1_1DBPacket.html#95355f6de0ab12e9eacd0727e8a66965" title="Builds a command packet in the send buffer for the GET_RECORD_BY_INDEX command code..." alt="" coords="317,157,555,184"><area shape="rect" href="classBarry_1_1DBPacket.html#173b8eb90186edc54e8a679d7498bcb5" title="Builds a command packet in the send buffer for the GET_RECORDS command code." alt="" coords="339,208,533,235"><area shape="rect" href="classBarry_1_1DBPacket.html#07e2e8ca566a1f4d7cc493983b56c32b" title="Builds a command packet in the send buffer for the GET_RECORD_STATE_TABLE command..." alt="" coords="311,259,561,285"><area shape="rect" href="classBarry_1_1DBPacket.html#26c4025403d129f658c1919190c0a0f0" title="Builds a command packet in the m_send buffer for the SET_RECORD command code." alt="" coords="343,309,529,336"><area shape="rect" href="classBarry_1_1DBPacket.html#7a41833dcc12c2823cd54991161e8d26" title="Builds a command packet in the m_send buffer for the SET_RECORD_BY_INDEX command..." alt="" coords="319,360,553,387"><area shape="rect" href="classBarry_1_1DBPacket.html#9f0237393389b714f30bf56e616183dd" title="Builds a command packet in the send buffer for the SET_RECORD_FLAGS command code..." alt="" coords="327,411,545,437"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#04cd4063958483b31cc98a353f335fe0" title="Deletes the specified record in the specified database." alt="" coords="633,56,868,83"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#2420208d094c0195dd41b5836f54dc10" title="Retrieves a specific record from the specified database." alt="" coords="641,157,860,184"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#047fe0a4a6dff740822451ffd38ddd84" title="Retrieve the record state table from the handheld device, using the given database..." alt="" coords="611,259,891,285"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#0fec0d31ff496974acfc15fdc75f074a" title="Adds a record to the specified database." alt="" coords="641,309,860,336"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#bf813b7fb04062515369209c8073dab0" title="Overwrites a specific record in the device as identified by the stateTableIndex." alt="" coords="643,360,859,387"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#a766fb027d28f7cf4bb069eb0991baaa" title="Clears the dirty flag on the specified record in the specified database." alt="" coords="644,411,857,437"></map>
</div>

</div>
</div><p>
<a class="anchor" name="047fe0a4a6dff740822451ffd38ddd84"></a><!-- doxytag: member="Barry::Mode::Desktop::GetRecordStateTable" ref="047fe0a4a6dff740822451ffd38ddd84" args="(unsigned int dbId, RecordStateTable &amp;result)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Barry::Mode::Desktop::GetRecordStateTable           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>dbId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">RecordStateTable &amp;&nbsp;</td>
          <td class="paramname"> <em>result</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieve the record state table from the handheld device, using the given database ID. 
<p>
Results will be stored in result, which will be cleared before adding. 
<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00186">186</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>References <a class="el" href="packet_8cc-source.html#l00251">Barry::DBPacket::GetRecordStateTable()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_047fe0a4a6dff740822451ffd38ddd84_cgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_047fe0a4a6dff740822451ffd38ddd84_cgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_047fe0a4a6dff740822451ffd38ddd84_cgraph_map">
<area shape="rect" href="classBarry_1_1DBPacket.html#07e2e8ca566a1f4d7cc493983b56c32b" title="Builds a command packet in the send buffer for the GET_RECORD_STATE_TABLE command..." alt="" coords="335,5,585,32"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#b1d7a169122aae509924729aedfeb24f" title="Get database command from command table." alt="" coords="636,5,889,32"></map>
</div>

</div>
</div><p>
<a class="anchor" name="0fec0d31ff496974acfc15fdc75f074a"></a><!-- doxytag: member="Barry::Mode::Desktop::AddRecord" ref="0fec0d31ff496974acfc15fdc75f074a" args="(unsigned int dbId, Builder &amp;build)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Barry::Mode::Desktop::AddRecord           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>dbId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classBarry_1_1Builder.html">Builder</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>build</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Adds a record to the specified database. 
<p>
RecordId is retrieved from build, and duplicate IDs are allowed by the device (i.e. you can have two records with the same ID) but *not* recommended! 
<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00212">212</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>References <a class="el" href="packet_8cc-source.html#l00456">Barry::DBPacket::ReturnCode()</a>, and <a class="el" href="packet_8cc-source.html#l00423">Barry::DBPacket::SetRecord()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_0fec0d31ff496974acfc15fdc75f074a_cgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_0fec0d31ff496974acfc15fdc75f074a_cgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_0fec0d31ff496974acfc15fdc75f074a_cgraph_map">
<area shape="rect" href="classBarry_1_1DBPacket.html#580e45267843fc6d43ca13c009e98978" title="Barry::DBPacket::ReturnCode" alt="" coords="276,31,471,57"><area shape="rect" href="classBarry_1_1DBPacket.html#26c4025403d129f658c1919190c0a0f0" title="Builds a command packet in the m_send buffer for the SET_RECORD command code." alt="" coords="280,81,467,108"><area shape="rect" href="classBarry_1_1Builder.html#4a3d38061d957eb6dd0539b18d40e6ad" title="Called to build the record field data." alt="" coords="559,5,737,32"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#b1d7a169122aae509924729aedfeb24f" title="Get database command from command table." alt="" coords="521,56,775,83"><area shape="rect" href="classBarry_1_1DBData.html#07523eb3b1dcfd99a917a184b61cb10a" title="Barry::DBData::GetRecType" alt="" coords="556,107,740,133"><area shape="rect" href="classBarry_1_1DBData.html#2a0106c7330842c455fc5393a3abfbc7" title="Barry::DBData::GetUniqueId" alt="" coords="556,157,740,184"></map>
</div>

</div>
</div><p>
<a class="anchor" name="2420208d094c0195dd41b5836f54dc10"></a><!-- doxytag: member="Barry::Mode::Desktop::GetRecord" ref="2420208d094c0195dd41b5836f54dc10" args="(unsigned int dbId, unsigned int stateTableIndex, Parser &amp;parser)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Barry::Mode::Desktop::GetRecord           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>dbId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>stateTableIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classBarry_1_1Parser.html">Parser</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>parser</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieves a specific record from the specified database. 
<p>
The stateTableIndex comes from the <a class="el" href="classBarry_1_1Mode_1_1Desktop.html#047fe0a4a6dff740822451ffd38ddd84" title="Retrieve the record state table from the handheld device, using the given database...">GetRecordStateTable()</a> function. <a class="el" href="classBarry_1_1Mode_1_1Desktop.html#2420208d094c0195dd41b5836f54dc10" title="Retrieves a specific record from the specified database.">GetRecord()</a> does not clear the dirty flag. 
<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00247">247</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>References <a class="el" href="packet_8cc-source.html#l00331">Barry::DBPacket::GetRecordByIndex()</a>, and <a class="el" href="packet_8cc-source.html#l00492">Barry::DBPacket::Parse()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_2420208d094c0195dd41b5836f54dc10_cgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_2420208d094c0195dd41b5836f54dc10_cgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_2420208d094c0195dd41b5836f54dc10_cgraph_map">
<area shape="rect" href="classBarry_1_1DBPacket.html#95355f6de0ab12e9eacd0727e8a66965" title="Builds a command packet in the send buffer for the GET_RECORD_BY_INDEX command code..." alt="" coords="272,5,509,32"><area shape="rect" href="classBarry_1_1DBPacket.html#fd64b6c98e7ad1d482a8339e0283ff90" title="Parses the data in the receive buffer, and attempts to be smart about it, using the..." alt="" coords="311,56,471,83"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#b1d7a169122aae509924729aedfeb24f" title="Get database command from command table." alt="" coords="559,5,812,32"><area shape="rect" href="classBarry_1_1Parser.html#1d8325c74140cda51c5735c6f82b7511" title="Called to parse sub fields in the raw data packet." alt="" coords="595,56,776,83"></map>
</div>

</div>
</div><p>
<a class="anchor" name="bf813b7fb04062515369209c8073dab0"></a><!-- doxytag: member="Barry::Mode::Desktop::SetRecord" ref="bf813b7fb04062515369209c8073dab0" args="(unsigned int dbId, unsigned int stateTableIndex, Builder &amp;build)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Barry::Mode::Desktop::SetRecord           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>dbId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>stateTableIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classBarry_1_1Builder.html">Builder</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>build</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Overwrites a specific record in the device as identified by the stateTableIndex. 
<p>

<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00297">297</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>References <a class="el" href="packet_8cc-source.html#l00456">Barry::DBPacket::ReturnCode()</a>, and <a class="el" href="packet_8cc-source.html#l00359">Barry::DBPacket::SetRecordByIndex()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_bf813b7fb04062515369209c8073dab0_cgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_bf813b7fb04062515369209c8073dab0_cgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_bf813b7fb04062515369209c8073dab0_cgraph_map">
<area shape="rect" href="classBarry_1_1DBPacket.html#580e45267843fc6d43ca13c009e98978" title="Barry::DBPacket::ReturnCode" alt="" coords="293,5,488,32"><area shape="rect" href="classBarry_1_1DBPacket.html#7a41833dcc12c2823cd54991161e8d26" title="Builds a command packet in the m_send buffer for the SET_RECORD_BY_INDEX command..." alt="" coords="273,56,508,83"><area shape="rect" href="classBarry_1_1Builder.html#4a3d38061d957eb6dd0539b18d40e6ad" title="Called to build the record field data." alt="" coords="596,31,775,57"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#b1d7a169122aae509924729aedfeb24f" title="Get database command from command table." alt="" coords="559,81,812,108"></map>
</div>

</div>
</div><p>
<a class="anchor" name="a766fb027d28f7cf4bb069eb0991baaa"></a><!-- doxytag: member="Barry::Mode::Desktop::ClearDirty" ref="a766fb027d28f7cf4bb069eb0991baaa" args="(unsigned int dbId, unsigned int stateTableIndex)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Barry::Mode::Desktop::ClearDirty           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>dbId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>stateTableIndex</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Clears the dirty flag on the specified record in the specified database. 
<p>

<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00333">333</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>References <a class="el" href="packet_8cc-source.html#l00278">Barry::DBPacket::SetRecordFlags()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_a766fb027d28f7cf4bb069eb0991baaa_cgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_a766fb027d28f7cf4bb069eb0991baaa_cgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_a766fb027d28f7cf4bb069eb0991baaa_cgraph_map">
<area shape="rect" href="classBarry_1_1DBPacket.html#9f0237393389b714f30bf56e616183dd" title="Builds a command packet in the send buffer for the SET_RECORD_FLAGS command code..." alt="" coords="268,5,487,32"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#b1d7a169122aae509924729aedfeb24f" title="Get database command from command table." alt="" coords="537,5,791,32"></map>
</div>

</div>
</div><p>
<a class="anchor" name="04cd4063958483b31cc98a353f335fe0"></a><!-- doxytag: member="Barry::Mode::Desktop::DeleteRecord" ref="04cd4063958483b31cc98a353f335fe0" args="(unsigned int dbId, unsigned int stateTableIndex)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Barry::Mode::Desktop::DeleteRecord           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>dbId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>stateTableIndex</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Deletes the specified record in the specified database. 
<p>

<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00352">352</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>References <a class="el" href="packet_8cc-source.html#l00306">Barry::DBPacket::DeleteRecordByIndex()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_04cd4063958483b31cc98a353f335fe0_cgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_04cd4063958483b31cc98a353f335fe0_cgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_04cd4063958483b31cc98a353f335fe0_cgraph_map">
<area shape="rect" href="classBarry_1_1DBPacket.html#fb9625f072f936a03ebee1ac64b78bf4" title="Builds a command packet in the send buffer for the DELETE_RECORD_BY_INDEX command..." alt="" coords="288,5,541,32"><area shape="rect" href="classBarry_1_1Mode_1_1Desktop.html#b1d7a169122aae509924729aedfeb24f" title="Get database command from command table." alt="" coords="591,5,844,32"></map>
</div>

</div>
</div><p>
<a class="anchor" name="6bb1c96d6082575b5fa684dee2af51a6"></a><!-- doxytag: member="Barry::Mode::Desktop::LoadDatabase" ref="6bb1c96d6082575b5fa684dee2af51a6" args="(unsigned int dbId, Parser &amp;parser)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Barry::Mode::Desktop::LoadDatabase           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>dbId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classBarry_1_1Parser.html">Parser</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>parser</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieve a database from the handheld device, using the given parser to parse the resulting data, and optionally store it. 
<p>
See the RecordParser&lt;&gt; template to create a parser object. The RecordParser&lt;&gt; template allows custom storage based on the type of database record retrieved. The database ID and the parser Record type must match.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>dbId</em>&nbsp;</td><td>Database Database ID - use <a class="el" href="classBarry_1_1Mode_1_1Desktop.html#4e1dad976351ad48029dc80d5f05fae3" title="Get numeric database ID by name.">GetDBID()</a> </td></tr>
    <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td><a class="el" href="classBarry_1_1Parser.html" title="Base class for the parser hierarchy.">Parser</a> object which parses the resulting protocol data, and optionally stores it in a custom fashion. See the RecordParser&lt;&gt; template.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em><a class="el" href="classBarry_1_1Error.html" title="The base class for any future derived exceptions.">Barry::Error</a></em>&nbsp;</td><td>Thrown on protocol error.</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>std::logic_error</em>&nbsp;</td><td>Thrown if not in <a class="el" href="classBarry_1_1Mode_1_1Desktop.html" title="The main interface class to the device databases.">Desktop</a> mode. </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="m__desktop_8cc-source.html#l00389">389</a> of file <a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a>.</p>

<p>References <a class="el" href="m__desktop_8cc-source.html#l00520">Barry::Mode::DBLoader::GetNextRecord()</a>, <a class="el" href="classBarry_1_1Parser.html#1d8325c74140cda51c5735c6f82b7511">Barry::Parser::ParseRecord()</a>, and <a class="el" href="m__desktop_8cc-source.html#l00493">Barry::Mode::DBLoader::StartDBLoad()</a>.</p>

<p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Mode_1_1Desktop_6bb1c96d6082575b5fa684dee2af51a6_cgraph.png" border="0" usemap="#classBarry_1_1Mode_1_1Desktop_6bb1c96d6082575b5fa684dee2af51a6_cgraph_map" alt=""></center>
<map name="classBarry_1_1Mode_1_1Desktop_6bb1c96d6082575b5fa684dee2af51a6_cgraph_map">
<area shape="rect" href="classBarry_1_1Mode_1_1DBLoader.html#2f1152364ff8ea48e8735fe57fcaa15c" title="Barry::Mode::DBLoader::GetNextRecord" alt="" coords="295,5,548,32"><area shape="rect" href="classBarry_1_1Parser.html#1d8325c74140cda51c5735c6f82b7511" title="Called to parse sub fields in the raw data packet." alt="" coords="331,56,512,83"><area shape="rect" href="classBarry_1_1Mode_1_1DBLoader.html#91865cdae00722a8c6fc53bcdf806a15" title="Barry::Mode::DBLoader::StartDBLoad" alt="" coords="301,107,541,133"></map>
</div>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="m__desktop_8h-source.html">m_desktop.h</a><li><a class="el" href="m__desktop_8cc-source.html">m_desktop.cc</a><li><a class="el" href="m__desktoptmpl_8h-source.html">m_desktoptmpl.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Mar 1 17:51:05 2011 for Barry by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>