Sophie

Sophie

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

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::Controller 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>::<a class="el" href="classBarry_1_1Controller.html">Controller</a>
  </div>
</div>
<div class="contents">
<h1>Barry::Controller Class Reference</h1><!-- doxytag: class="Barry::Controller" --><code>#include &lt;<a class="el" href="controller_8h-source.html">controller.h</a>&gt;</code>
<p>
<div class="dynheader">
Collaboration diagram for Barry::Controller:</div>
<div class="dynsection">
<p><center><img src="classBarry_1_1Controller__coll__graph.png" border="0" usemap="#Barry_1_1Controller__coll__map" alt="Collaboration graph"></center>
<map name="Barry_1_1Controller__coll__map">
<area shape="rect" title="STL class." alt="" coords="332,85,412,112"><area shape="rect" title="STL class." alt="" coords="7,85,172,112"><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,399,152,425"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classBarry_1_1Controller-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
The main interface class. 
<p>
This class coordinates the communication to a single handheld. This class also owns the only Usb::Device object the handheld. All other classes reference this one for the low level device object. This class owns the only SocketZero object as well, which is the object that any SocketRoutingQueue is plugged into if constructed that way.<p>
To use this class, use the following steps:<p>
<ul>
<li>Probe the USB bus for matching devices with the Probe class</li><li>Create an optional SocketRoutingQueue object and create a read thread for it, or use its default read thread.</li><li>Pass one of the probe results into the <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> constructor to connect to the USB device. Pass the routing queue to the <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> constructor here too, if needed.</li><li>Create the Mode object of your choice. See <a class="el" href="m__desktop_8h.html" title="Mode class for the Desktop mode.">m_desktop.h</a> and <a class="el" href="m__serial_8h.html" title="Mode class for serial / GPRS modem mode.">m_serial.h</a> for these mode classes. You pass your controller object into these mode constructors to create the mode. </li></ul>

<p>Definition at line <a class="el" href="controller_8h-source.html#l00071">71</a> of file <a class="el" href="controller_8h-source.html">controller.h</a>.</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Controller.html#8b40b5d7e285b39375d857e1cea6cb15">ModeType</a> </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Handheld mode type.  <a href="classBarry_1_1Controller.html#8b40b5d7e285b39375d857e1cea6cb15">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Controller.html#ffac40e1eb00e5cedc3f575a64828e6c">Controller</a> (const ProbeResult &amp;device, int default_timeout=USBWRAP_DEFAULT_TIMEOUT)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for the <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> class.  <a href="#ffac40e1eb00e5cedc3f575a64828e6c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Controller.html#32fbca6195f9e4bf45419ea8d244ebdd">Controller</a> (const ProbeResult &amp;device, SocketRoutingQueue &amp;queue, int default_timeout=USBWRAP_DEFAULT_TIMEOUT)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor for the <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> class.  <a href="#32fbca6195f9e4bf45419ea8d244ebdd"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8d04dbe14f6107d975127a419876dd46"></a><!-- doxytag: member="Barry::Controller::Barry::Mode::Mode" ref="8d04dbe14f6107d975127a419876dd46" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Controller.html#8d04dbe14f6107d975127a419876dd46">Barry::Mode::Mode</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f5dfdb73a8b9f132b5970ba6602ddbfb"></a><!-- doxytag: member="Barry::Controller::Barry::Mode::JavaLoader" ref="f5dfdb73a8b9f132b5970ba6602ddbfb" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Controller.html#f5dfdb73a8b9f132b5970ba6602ddbfb">Barry::Mode::JavaLoader</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e3e279f8c8a0eb5e722eea48b63999b3"></a><!-- doxytag: member="Barry::Controller::Barry::Mode::JVMDebug" ref="e3e279f8c8a0eb5e722eea48b63999b3" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Controller.html#e3e279f8c8a0eb5e722eea48b63999b3">Barry::Mode::JVMDebug</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="35eef200f25d39ce6a6b84f26fe2ae8a"></a><!-- doxytag: member="Barry::Controller::Barry::Mode::RawChannel" ref="35eef200f25d39ce6a6b84f26fe2ae8a" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBarry_1_1Controller.html#35eef200f25d39ce6a6b84f26fe2ae8a">Barry::Mode::RawChannel</a></td></tr>

</table>
<hr><h2>Member Enumeration Documentation</h2>
<a class="anchor" name="8b40b5d7e285b39375d857e1cea6cb15"></a><!-- doxytag: member="Barry::Controller::ModeType" ref="8b40b5d7e285b39375d857e1cea6cb15" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classBarry_1_1Controller.html#8b40b5d7e285b39375d857e1cea6cb15">Barry::Controller::ModeType</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Handheld mode type. 
<p>

<p>Definition at line <a class="el" href="controller_8h-source.html#l00082">82</a> of file <a class="el" href="controller_8h-source.html">controller.h</a>.</p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="ffac40e1eb00e5cedc3f575a64828e6c"></a><!-- doxytag: member="Barry::Controller::Controller" ref="ffac40e1eb00e5cedc3f575a64828e6c" args="(const ProbeResult &amp;device, int default_timeout=USBWRAP_DEFAULT_TIMEOUT)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Barry::Controller::Controller           </td>
          <td>(</td>
          <td class="paramtype">const ProbeResult &amp;&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>default_timeout</em> = <code>USBWRAP_DEFAULT_TIMEOUT</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructor for the <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> class. 
<p>
Requires a valid ProbeResult object to find the USB device to talk to.<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>device</em>&nbsp;</td><td>One of the ProbeResult objects from the Probe class. </td></tr>
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>default_timeout</em>&nbsp;</td><td>Override Usb::Device's default timeout </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="controller_8cc-source.html#l00047">47</a> of file <a class="el" href="controller_8cc-source.html">controller.cc</a>.</p>

</div>
</div><p>
<a class="anchor" name="32fbca6195f9e4bf45419ea8d244ebdd"></a><!-- doxytag: member="Barry::Controller::Controller" ref="32fbca6195f9e4bf45419ea8d244ebdd" args="(const ProbeResult &amp;device, SocketRoutingQueue &amp;queue, int default_timeout=USBWRAP_DEFAULT_TIMEOUT)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Barry::Controller::Controller           </td>
          <td>(</td>
          <td class="paramtype">const ProbeResult &amp;&nbsp;</td>
          <td class="paramname"> <em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">SocketRoutingQueue &amp;&nbsp;</td>
          <td class="paramname"> <em>queue</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>default_timeout</em> = <code>USBWRAP_DEFAULT_TIMEOUT</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructor for the <a class="el" href="classBarry_1_1Controller.html" title="The main interface class.">Controller</a> class. 
<p>
Requires a valid ProbeResult object to find the USB device to talk to.<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>device</em>&nbsp;</td><td>One of the ProbeResult objects from the Probe class. </td></tr>
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>queue</em>&nbsp;</td><td>Plugin router object for reading data from sockets. </td></tr>
    <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>default_timeout</em>&nbsp;</td><td>Override Usb::Device's default timeout </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="controller_8cc-source.html#l00072">72</a> of file <a class="el" href="controller_8cc-source.html">controller.cc</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="controller_8h-source.html">controller.h</a><li><a class="el" href="controller_8cc-source.html">controller.cc</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Mar 1 17:50:56 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>