<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>liblogging: beepframe.h Source File</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.3.2 --> <div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Compound Members</a> | <a class="qindex" href="globals.html">File Members</a> | <a class="qindex" href="pages.html">Related Pages</a></div> <h1>beepframe.h</h1><a href="beepframe_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 00042 <span class="preprocessor">#ifndef __LIB3195_BEEPFRAME_H_INCLUDED__</span> 00043 <span class="preprocessor"></span><span class="preprocessor">#define __LIB3195_BEEPFRAME_H_INCLUDED__ 1</span> 00044 <span class="preprocessor"></span> 00045 <span class="preprocessor">#include "<a class="code" href="beepmessage_8h.html">beepmessage.h</a>"</span> 00046 <span class="preprocessor">#include "<a class="code" href="beepchannel_8h.html">beepchannel.h</a>"</span> 00047 <span class="preprocessor">#define sbFramCHECKVALIDOBJECT(x) {assert(x != NULL); assert(x->OID == OIDsbFram);}</span> 00048 <span class="preprocessor"></span> <a name="l00050"></a><a class="code" href="beepframe_8h.html#a49">00050</a> <span class="keyword">enum</span> <a class="code" href="beepframe_8h.html#a49">sbFramState_</a> 00051 { 00052 <span class="comment">/* RX flags */</span> 00053 <a class="code" href="beepframe_8h.html#a49a4">sbFRAMSTATE_WAITING_HDR1</a>, 00054 <a class="code" href="beepframe_8h.html#a49a5">sbFRAMSTATE_WAITING_HDR2</a>, 00055 <a class="code" href="beepframe_8h.html#a49a6">sbFRAMSTATE_WAITING_HDR3</a>, 00056 <a class="code" href="beepframe_8h.html#a49a7">sbFRAMSTATE_WAITING_SP_CHAN</a>, 00057 <a class="code" href="beepframe_8h.html#a49a8">sbFRAMSTATE_IN_CHAN</a>, 00058 <a class="code" href="beepframe_8h.html#a49a9">sbFRAMSTATE_WAITING_SP_MSGNO</a>, 00059 <a class="code" href="beepframe_8h.html#a49a10">sbFRAMSTATE_IN_MSGNO</a>, 00060 <a class="code" href="beepframe_8h.html#a49a11">sbFRAMSTATE_WAITING_SP_MORE</a>, 00061 <a class="code" href="beepframe_8h.html#a49a12">sbFRAMSTATE_IN_MORE</a>, 00062 <a class="code" href="beepframe_8h.html#a49a13">sbFRAMSTATE_WAITING_SP_SEQNO</a>, 00063 <a class="code" href="beepframe_8h.html#a49a14">sbFRAMSTATE_IN_SEQNO</a>, 00064 <a class="code" href="beepframe_8h.html#a49a15">sbFRAMSTATE_WAITING_SP_SIZE</a>, 00065 <a class="code" href="beepframe_8h.html#a49a16">sbFRAMSTATE_IN_SIZE</a>, 00066 <a class="code" href="beepframe_8h.html#a49a17">sbFRAMSTATE_WAITING_SP_ANSNO</a>, 00067 <a class="code" href="beepframe_8h.html#a49a18">sbFRAMSTATE_IN_ANSNO</a>, 00068 <a class="code" href="beepframe_8h.html#a49a19">sbFRAMSTATE_WAITING_SP_ACKNO</a>, 00069 <a class="code" href="beepframe_8h.html#a49a20">sbFRAMSTATE_IN_ACKNO</a>, 00070 <a class="code" href="beepframe_8h.html#a49a21">sbFRAMSTATE_WAITING_SP_WINDOW</a>, 00071 <a class="code" href="beepframe_8h.html#a49a22">sbFRAMSTATE_IN_WINDOW</a>, 00072 <a class="code" href="beepframe_8h.html#a49a23">sbFRAMSTATE_WAITING_HDRCR</a>, 00073 <a class="code" href="beepframe_8h.html#a49a24">sbFRAMSTATE_WAITING_HDRLF</a>, 00074 <a class="code" href="beepframe_8h.html#a49a25">sbFRAMSTATE_IN_PAYLOAD</a>, 00075 <a class="code" href="beepframe_8h.html#a49a26">sbFRAMSTATE_WAITING_END1</a>, 00076 <a class="code" href="beepframe_8h.html#a49a27">sbFRAMSTATE_WAITING_END2</a>, 00077 <a class="code" href="beepframe_8h.html#a49a28">sbFRAMSTATE_WAITING_END3</a>, 00078 <a class="code" href="beepframe_8h.html#a49a29">sbFRAMSTATE_WAITING_END4</a>, 00079 <a class="code" href="beepframe_8h.html#a49a30">sbFRAMSTATE_WAITING_END5</a>, 00080 <a class="code" href="beepframe_8h.html#a49a31">sbFRAMSTATE_RECEIVED</a>, 00082 <span class="comment">/* TX flags */</span> 00083 <a class="code" href="beepframe_8h.html#a49a32">sbFRAMSTATE_BEING_BUILD</a>, 00084 <a class="code" href="beepframe_8h.html#a49a33">sbFRAMSTATE_READY_TO_SEND</a>, 00085 <a class="code" href="beepframe_8h.html#a49a34">sbFRAMSTATE_SENDING</a>, 00086 <a class="code" href="beepframe_8h.html#a49a35">sbFRAMSTATE_SENT</a>, 00088 <a class="code" href="beepframe_8h.html#a49a36">sbFRAMSTATE_UNKNOWN</a> = 0 00089 }; 00090 <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="beepframe_8h.html#a49">sbFramState_</a> sbFramState; 00091 <a name="l00092"></a><a class="code" href="structsbFramObject.html">00092</a> <span class="keyword">struct </span><a class="code" href="structsbFramObject.html">sbFramObject</a> 00096 { <a name="l00097"></a><a class="code" href="structsbFramObject.html#o0">00097</a> srObjID <a class="code" href="structsbFramObject.html#o0">OID</a>; <a name="l00098"></a><a class="code" href="structsbFramObject.html#o1">00098</a> <span class="keyword">struct </span>sMesgObject* pMsg; <a name="l00101"></a><a class="code" href="structsbFramObject.html#o2">00101</a> sbFramState <a class="code" href="structsbFramObject.html#o2">iState</a>; <a name="l00102"></a><a class="code" href="structsbFramObject.html#o3">00102</a> <span class="keywordtype">char</span>* <a class="code" href="structsbFramObject.html#o3">szRawBuf</a>; <a name="l00103"></a><a class="code" href="structsbFramObject.html#o4">00103</a> <span class="keywordtype">int</span> <a class="code" href="structsbFramObject.html#o4">iFrameLen</a>; <a name="l00104"></a><a class="code" href="structsbFramObject.html#o5">00104</a> BEEPHdrID <a class="code" href="structsbFramObject.html#o5">idHdr</a>; <a name="l00105"></a><a class="code" href="structsbFramObject.html#o6">00105</a> <a class="code" href="liblogging_8h.html#a12">SBackno</a> <a class="code" href="structsbFramObject.html#o6">uAckno</a>; <a name="l00106"></a><a class="code" href="structsbFramObject.html#o7">00106</a> <a class="code" href="liblogging_8h.html#a13">SBwindow</a> <a class="code" href="structsbFramObject.html#o7">uWindow</a>; <a name="l00107"></a><a class="code" href="structsbFramObject.html#o8">00107</a> <a class="code" href="liblogging_8h.html#a7">SBchannel</a> <a class="code" href="structsbFramObject.html#o8">uChannel</a>; <a name="l00108"></a><a class="code" href="structsbFramObject.html#o9">00108</a> <a class="code" href="liblogging_8h.html#a11">SBmsgno</a> <a class="code" href="structsbFramObject.html#o9">uMsgno</a>; <a name="l00109"></a><a class="code" href="structsbFramObject.html#o10">00109</a> <a class="code" href="liblogging_8h.html#a8">SBseqno</a> <a class="code" href="structsbFramObject.html#o10">uSeqno</a>; <a name="l00110"></a><a class="code" href="structsbFramObject.html#o11">00110</a> <a class="code" href="liblogging_8h.html#a10">SBsize</a> <a class="code" href="structsbFramObject.html#o11">uSize</a>; <a name="l00111"></a><a class="code" href="structsbFramObject.html#o12">00111</a> <span class="keywordtype">char</span> <a class="code" href="structsbFramObject.html#o12">cMore</a>; <a name="l00112"></a><a class="code" href="structsbFramObject.html#o13">00112</a> <a class="code" href="liblogging_8h.html#a9">SBansno</a> <a class="code" href="structsbFramObject.html#o13">uAnsno</a>; 00113 <span class="preprocessor">#if FEATURE_LISTENER == 1</span> <a name="l00114"></a><a class="code" href="structsbFramObject.html#o14">00114</a> <span class="preprocessor"></span> <span class="keywordtype">unsigned</span> <a class="code" href="structsbFramObject.html#o14">uBytesSend</a>; <a name="l00115"></a><a class="code" href="structsbFramObject.html#o15">00115</a> <span class="keyword">struct </span><a class="code" href="structsbChanObject.html">sbChanObject</a> *pChan; <a name="l00116"></a><a class="code" href="structsbFramObject.html#o16">00116</a> <span class="keyword">struct </span><a class="code" href="structsbStrBObject.html">sbStrBObject</a> *pStrBuf; <a name="l00117"></a><a class="code" href="structsbFramObject.html#o17">00117</a> <span class="keywordtype">unsigned</span> <a class="code" href="structsbFramObject.html#o17">uToReceive</a>; 00118 void (*OnFramDestroy)(<span class="keyword">struct </span><a class="code" href="structsbFramObject.html">sbFramObject</a>*); <a name="l00119"></a><a class="code" href="structsbFramObject.html#o19">00119</a> <span class="keywordtype">void</span>* <a class="code" href="structsbFramObject.html#o19">pUsr</a>; 00120 <span class="preprocessor">#endif</span> 00121 <span class="preprocessor"></span>}; 00122 <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structsbFramObject.html">sbFramObject</a> sbFramObj; 00123 00124 <span class="keywordtype">char</span>* <a class="code" href="beepframe_8c.html#a10">sbFramGetFrame</a>(sbFramObj* pThis); 00125 <span class="keywordtype">int</span> <a class="code" href="beepframe_8c.html#a9">sbFramGetFrameLen</a>(sbFramObj* pThis); 00126 BEEPHdrID <a class="code" href="beepframe_8c.html#a8">sbFramGetHdrID</a>(sbFramObj *pThis); 00128 <a class="code" href="liblogging_8h.html#a6">srRetVal</a> <a class="code" href="beepframe_8c.html#a14">sbFramDestroy</a>(sbFramObj *pThis); 00150 sbFramObj* <a class="code" href="beepframe_8c.html#a11">sbFramCreateFramFromMesg</a>(<a class="code" href="structsbChanObject.html">sbChanObj</a>* pChan, <a class="code" href="structsbMesgObject.html">sbMesgObj</a>* pMesg, <span class="keywordtype">char</span>* pszCmd, SBansno uAnsno); 00151 00171 sbFramObj* <a class="code" href="beepframe_8c.html#a13">sbFramActualRecvFram</a>(<a class="code" href="structsbSessObject.html">sbSessObj</a> *pSess); 00172 00183 sbFramObj* <a class="code" href="beepframe_8c.html#a15">sbFramRecvFram</a>(<a class="code" href="structsbChanObject.html">sbChanObj</a>* pChan); 00184 00197 <a class="code" href="liblogging_8h.html#a6">srRetVal</a> <a class="code" href="beepframe_8c.html#a16">sbFramSendFram</a>(sbFramObj* pThis, <a class="code" href="structsbChanObject.html">sbChanObj</a>*pChan); 00198 00208 BEEPHdrID <a class="code" href="beepframe_8c.html#a6">sbFramHdrID</a>(<span class="keywordtype">char</span>* szCmd); 00209 00214 <a class="code" href="liblogging_8h.html#a6">srRetVal</a> <a class="code" href="beepframe_8c.html#a7">sbFramConstruct</a>(sbFramObj **ppThis); 00215 00224 <a class="code" href="liblogging_8h.html#a6">srRetVal</a> <a class="code" href="beepframe_8c.html#a12">sbFramCreateSEQFram</a>(sbFramObj **ppThis, <a class="code" href="structsbChanObject.html">sbChanObj</a>* pChan, SBackno uAckno, SBwindow uWindow); 00225 00234 <a class="code" href="liblogging_8h.html#a6">srRetVal</a> <a class="code" href="beepframe_8h.html#a48">sbFramSetOnDestroyEvent</a>(sbFramObj *pThis, <span class="keywordtype">void</span> (*OnFramDestroy)(<span class="keyword">struct</span> <a class="code" href="structsbFramObject.html">sbFramObject</a> *), <span class="keywordtype">void</span> *pUsr); 00235 00236 <span class="preprocessor">#endif</span> </pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 3 12:29:55 2005 for liblogging by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 > </a>1.3.2 </small></address> </body> </html>