Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 06e1e0ab98898582c876a8be34ecb5e9 > files > 201

capisuite-0.4.5-5mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>CapiSuite: CallInterface Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.8 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>CallInterface Class Reference</h1>Interface class for all signals specific to a certain call.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="callinterface_8h-source.html">callinterface.h</a>&gt;</code>
<p>
<p>Inheritance diagram for CallInterface:
<p><center><img src="classCallInterface.png" usemap="#CallInterface_map" border="0" alt=""></center>
<map name="CallInterface_map">
<area href="classCallModule.html" alt="CallModule" shape="rect" coords="0,56,117,80">
<area href="classAudioReceive.html" alt="AudioReceive" shape="rect" coords="127,112,244,136">
<area href="classAudioSend.html" alt="AudioSend" shape="rect" coords="127,168,244,192">
<area href="classCallOutgoing.html" alt="CallOutgoing" shape="rect" coords="127,224,244,248">
<area href="classConnectModule.html" alt="ConnectModule" shape="rect" coords="127,280,244,304">
<area href="classDisconnectModule.html" alt="DisconnectModule" shape="rect" coords="127,336,244,360">
<area href="classFaxReceive.html" alt="FaxReceive" shape="rect" coords="127,392,244,416">
<area href="classFaxSend.html" alt="FaxSend" shape="rect" coords="127,448,244,472">
<area href="classReadDTMF.html" alt="ReadDTMF" shape="rect" coords="127,504,244,528">
<area href="classSwitch2FaxG3.html" alt="Switch2FaxG3" shape="rect" coords="127,560,244,584">
</map>
<a href="classCallInterface-members.html">List of all members.</a><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>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classCallInterface.html#a0">alerting</a> (void)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called if the other party is alerted, i.e. it has started "ringing" there.  <a href="#a0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classCallInterface.html#a1">callConnected</a> (void)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called if the connection is completely established (physical + logical).  <a href="#a1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classCallInterface.html#a2">callDisconnectedLogical</a> (void)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">called if logical connection is finished  <a href="#a2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classCallInterface.html#a3">callDisconnectedPhysical</a> (void)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">called if physical connection is finished.  <a href="#a3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classCallInterface.html#a4">transmissionComplete</a> (void)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">called if the file requested for sending is sent completely  <a href="#a4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classCallInterface.html#a5">gotDTMF</a> (void)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">called by <a class="el" href="classConnection.html">Connection</a> object if DMTF characters were received.  <a href="#a5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classCallInterface.html#a6">dataIn</a> (unsigned char *data, unsigned length)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">called by <a class="el" href="classConnection.html">Connection</a> object for each received data packet.  <a href="#a6"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Interface class for all signals specific to a certain call. 
<p>
While <a class="el" href="classApplicationInterface.html">ApplicationInterface</a> contains the methods to inform the application about general events, this interface has all the signals which describe events of a certain connection like DTMF signal received, call is disconnected logical, etc.<p>
The application is supposed to create objects for each call which implement this interface and register them with <a class="el" href="classConnection.html#a2">Connection::registerCallInterface()</a>. It's possible to use different modules for different tasks during one connection and to dynamically register/unregister them. If no object is registered, the callbacks are simply not called. However, there are certain events which need a registered CallInterface implementing object - otherwise <a class="el" href="classConnection.html">Connection</a> will throw exceptions.<p>
<dl compact><dt><b>Author:</b></dt><dd>Gernot Hillier </dd></dl>

<p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="a0" doxytag="CallInterface::alerting" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void CallInterface::alerting           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Called if the other party is alerted, i.e. it has started "ringing" there. 
<p>

<p>
Implemented in <a class="el" href="classCallModule.html#a4">CallModule</a>, and <a class="el" href="classCallOutgoing.html#a3">CallOutgoing</a>.
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a1" doxytag="CallInterface::callConnected" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void CallInterface::callConnected           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Called if the connection is completely established (physical + logical). 
<p>

<p>
Implemented in <a class="el" href="classCallModule.html#a5">CallModule</a>, <a class="el" href="classCallOutgoing.html#a2">CallOutgoing</a>, <a class="el" href="classConnectModule.html#a2">ConnectModule</a>, and <a class="el" href="classSwitch2FaxG3.html#a3">Switch2FaxG3</a>.
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a2" doxytag="CallInterface::callDisconnectedLogical" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void CallInterface::callDisconnectedLogical           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
called if logical connection is finished 
<p>

<p>
Implemented in <a class="el" href="classCallModule.html#a6">CallModule</a>, <a class="el" href="classDisconnectModule.html#a2">DisconnectModule</a>, and <a class="el" href="classSwitch2FaxG3.html#a2">Switch2FaxG3</a>.
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a3" doxytag="CallInterface::callDisconnectedPhysical" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void CallInterface::callDisconnectedPhysical           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
called if physical connection is finished. 
<p>
This is called when the connection has been cleared down completely.<p>
Attention: You must delete the <a class="el" href="classConnection.html">Connection</a> object yourself if you don't need it any more!
<p>
Implemented in <a class="el" href="classCallModule.html#a7">CallModule</a>, and <a class="el" href="classDisconnectModule.html#a3">DisconnectModule</a>.
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a6" doxytag="CallInterface::dataIn" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void CallInterface::dataIn           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">unsigned char *&nbsp;</td>
          <td class="mdname" nowrap> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td></td>
          <td class="md" nowrap>unsigned&nbsp;</td>
          <td class="mdname" nowrap> <em>length</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
called by <a class="el" href="classConnection.html">Connection</a> object for each received data packet. 
<p>
You can either use this to save your data manually and/or tell connection to save it to a file (with start_file_reception)() )<p>
But please not that this is a performance issue: calling an application function for each received function should only be done if really necessary.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td></td><td valign=top><em>data</em>&nbsp;</td><td>pointer to data as received by CAPI </td></tr>
    <tr><td></td><td valign=top><em>length</em>&nbsp;</td><td>length of data in bytes</td></tr>
  </table>
</dl>

<p>
Implemented in <a class="el" href="classAudioReceive.html#a2">AudioReceive</a>, and <a class="el" href="classCallModule.html#a9">CallModule</a>.
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a5" doxytag="CallInterface::gotDTMF" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void CallInterface::gotDTMF           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
called by <a class="el" href="classConnection.html">Connection</a> object if DMTF characters were received. 
<p>
It is necessary to enable DTMF receiving with <a class="el" href="classConnection.html#a12">Connection::enableDTMF</a> before any DTMFs are signalled. DTMF chars can be read with <a class="el" href="classConnection.html#a14">Connection::getDTMF()</a>.
<p>
Implemented in <a class="el" href="classCallModule.html#a8">CallModule</a>, and <a class="el" href="classReadDTMF.html#a2">ReadDTMF</a>.
<p>
    </td>
  </tr>
</table>
<a class="anchor" name="a4" doxytag="CallInterface::transmissionComplete" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void CallInterface::transmissionComplete           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
called if the file requested for sending is sent completely 
<p>

<p>
Implemented in <a class="el" href="classAudioSend.html#a2">AudioSend</a>, <a class="el" href="classCallModule.html#a3">CallModule</a>, <a class="el" href="classFaxReceive.html#a2">FaxReceive</a>, and <a class="el" href="classFaxSend.html#a2">FaxSend</a>.
<p>
    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="callinterface_8h-source.html">callinterface.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 28 14:37:44 2004 for CapiSuite by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
</body>
</html>