<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Yate: SignallingDumper 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.7.1 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main 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> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="namespaceTelEngine.html">TelEngine</a>::<a class="el" href="classTelEngine_1_1SignallingDumper.html">SignallingDumper</a> </div> </div> <div class="contents"> <h1>SignallingDumper Class Reference</h1><!-- doxytag: class="TelEngine::SignallingDumper" -->A generic data dumper. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="yatesig_8h-source.html">yatesig.h</a>></code> <p> <p> <a href="classTelEngine_1_1SignallingDumper-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 Types</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> { <b>Hexa</b>, <b>Hdlc</b>, <b>Mtp2</b>, <b>Mtp3</b> }</td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#8cf69e37516088c0232e1a1f2fb24b3a">SignallingDumper</a> (<a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> type=Hexa)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#fd28d8c083804f038edb8a58a95e1b22">~SignallingDumper</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#fbd0fa31db28593e9669c3c56711c0a7">type</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#6fd1dc792a0b98e6530a7383d4ef3074">active</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#74a45d2648335936561898c390281a6a">terminate</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#35256d9f139b5f860326b272df096c73">setStream</a> (<a class="el" href="classTelEngine_1_1Stream.html">Stream</a> *stream=0)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#4926bfb60864d5580435a97008edf0d4">dump</a> (void *buf, unsigned int len, bool sent=false, int link=0)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#8cfd57608770166158479ca246b38c80">dump</a> (const <a class="el" href="classTelEngine_1_1DataBlock.html">DataBlock</a> &data, bool sent=false, int link=0)</td></tr> <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classTelEngine_1_1SignallingDumper.html">SignallingDumper</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1SignallingDumper.html#1aea78986372a99c39d1012f31b30fa1">create</a> (<a class="el" href="classTelEngine_1_1DebugEnabler.html">DebugEnabler</a> *dbg, const char *filename, <a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> type, bool create=true, bool append=false)</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A generic data dumper. <p> This class is a generic data dumper with libpcap compatibility <hr><h2>Member Enumeration Documentation</h2> <a class="anchor" name="1d1cfd8ffb84e947f82999c682b666a7"></a><!-- doxytag: member="TelEngine::SignallingDumper::Type" ref="1d1cfd8ffb84e947f82999c682b666a7" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type of dumper output </div> </div><p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="8cf69e37516088c0232e1a1f2fb24b3a"></a><!-- doxytag: member="TelEngine::SignallingDumper::SignallingDumper" ref="8cf69e37516088c0232e1a1f2fb24b3a" args="(Type type=Hexa)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classTelEngine_1_1SignallingDumper.html">SignallingDumper</a> </td> <td>(</td> <td class="paramtype"><a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> </td> <td class="paramname"> <em>type</em> = <code>Hexa</code> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>type</em> </td><td>Type of the output desired </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="fd28d8c083804f038edb8a58a95e1b22"></a><!-- doxytag: member="TelEngine::SignallingDumper::~SignallingDumper" ref="fd28d8c083804f038edb8a58a95e1b22" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">~<a class="el" href="classTelEngine_1_1SignallingDumper.html">SignallingDumper</a> </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Destructor, closes the output </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="6fd1dc792a0b98e6530a7383d4ef3074"></a><!-- doxytag: member="TelEngine::SignallingDumper::active" ref="6fd1dc792a0b98e6530a7383d4ef3074" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool active </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Check if the dumper is active <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the object will actually send data to something </dd></dl> </div> </div><p> <a class="anchor" name="1aea78986372a99c39d1012f31b30fa1"></a><!-- doxytag: member="TelEngine::SignallingDumper::create" ref="1aea78986372a99c39d1012f31b30fa1" args="(DebugEnabler *dbg, const char *filename, Type type, bool create=true, bool append=false)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classTelEngine_1_1SignallingDumper.html">SignallingDumper</a>* create </td> <td>(</td> <td class="paramtype"><a class="el" href="classTelEngine_1_1DebugEnabler.html">DebugEnabler</a> * </td> <td class="paramname"> <em>dbg</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>filename</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> </td> <td class="paramname"> <em>type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>create</em> = <code>true</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>append</em> = <code>false</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a file to dump data in it. The file is opened/created in write only, binary mode <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>dbg</em> </td><td><a class="el" href="classTelEngine_1_1DebugEnabler.html" title="A holder for a debug level.">DebugEnabler</a> requesting the operation (used for debug message on failure) </td></tr> <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>The file name to use </td></tr> <tr><td valign="top"></td><td valign="top"><em>type</em> </td><td>The dumper type </td></tr> <tr><td valign="top"></td><td valign="top"><em>create</em> </td><td>True to create the file if doesn't exist </td></tr> <tr><td valign="top"></td><td valign="top"><em>append</em> </td><td>Append to an existing file. If false and the file already exists, it will be truncated </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd><a class="el" href="classTelEngine_1_1SignallingDumper.html" title="A generic data dumper.">SignallingDumper</a> pointer on success, 0 on failure </dd></dl> </div> </div><p> <a class="anchor" name="8cfd57608770166158479ca246b38c80"></a><!-- doxytag: member="TelEngine::SignallingDumper::dump" ref="8cfd57608770166158479ca246b38c80" args="(const DataBlock &data, bool sent=false, int link=0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool dump </td> <td>(</td> <td class="paramtype">const <a class="el" href="classTelEngine_1_1DataBlock.html">DataBlock</a> & </td> <td class="paramname"> <em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>sent</em> = <code>false</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>link</em> = <code>0</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Dump the provided data <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>Buffer to dump </td></tr> <tr><td valign="top"></td><td valign="top"><em>sent</em> </td><td>True if data is being sent, false if is being received </td></tr> <tr><td valign="top"></td><td valign="top"><em>link</em> </td><td>Link number (relevant to MTP2 only) </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the data was dumped successfully </dd></dl> <p>References <a class="el" href="yateclass_8h-source.html#l02544">DataBlock::data()</a>, <a class="el" href="yatesig_8h-source.html#l00216">SignallingDumper::dump()</a>, and <a class="el" href="yateclass_8h-source.html#l02558">DataBlock::length()</a>.</p> <p>Referenced by <a class="el" href="yatesig_8h-source.html#l00216">SignallingDumper::dump()</a>.</p> </div> </div><p> <a class="anchor" name="4926bfb60864d5580435a97008edf0d4"></a><!-- doxytag: member="TelEngine::SignallingDumper::dump" ref="4926bfb60864d5580435a97008edf0d4" args="(void *buf, unsigned int len, bool sent=false, int link=0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool dump </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"> <em>len</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>sent</em> = <code>false</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>link</em> = <code>0</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Dump the provided data <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>Pointer to buffer to dump </td></tr> <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>Length of the data </td></tr> <tr><td valign="top"></td><td valign="top"><em>sent</em> </td><td>True if data is being sent, false if is being received </td></tr> <tr><td valign="top"></td><td valign="top"><em>link</em> </td><td>Link number (relevant to MTP2 only) </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the data was dumped successfully </dd></dl> </div> </div><p> <a class="anchor" name="35256d9f139b5f860326b272df096c73"></a><!-- doxytag: member="TelEngine::SignallingDumper::setStream" ref="35256d9f139b5f860326b272df096c73" args="(Stream *stream=0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void setStream </td> <td>(</td> <td class="paramtype"><a class="el" href="classTelEngine_1_1Stream.html">Stream</a> * </td> <td class="paramname"> <em>stream</em> = <code>0</code> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Set a new output stream <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>stream</em> </td><td>New stream for output, NULL to terminate </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="74a45d2648335936561898c390281a6a"></a><!-- doxytag: member="TelEngine::SignallingDumper::terminate" ref="74a45d2648335936561898c390281a6a" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void terminate </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Terminate the dump session, close the output </div> </div><p> <a class="anchor" name="fbd0fa31db28593e9669c3c56711c0a7"></a><!-- doxytag: member="TelEngine::SignallingDumper::type" ref="fbd0fa31db28593e9669c3c56711c0a7" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classTelEngine_1_1SignallingDumper.html#1d1cfd8ffb84e947f82999c682b666a7">Type</a> type </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the type of the dumper <dl class="return" compact><dt><b>Returns:</b></dt><dd>Type of the dumper object </dd></dl> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="yatesig_8h-source.html">yatesig.h</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Sun Dec 7 21:36:13 2008 for Yate by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.7.1 </small></address> </body> </html>