Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > c200d180bc1063a7706e0da42a546b51 > files > 359

atlascpp-devel-0.6.1-7.fc12.x86_64.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>Atlas-C++: DebugBridge.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    </ul>
  </div>
<h1>DebugBridge.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef DEBUG_BRIDGE_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define DEBUG_BRIDGE_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include &lt;iostream&gt;</span>
<a name="l00005"></a>00005 <span class="preprocessor">#include &lt;string&gt;</span>
<a name="l00006"></a>00006 <span class="preprocessor">#include &lt;Atlas/Bridge.h&gt;</span>
<a name="l00007"></a>00007 
<a name="l00008"></a>00008 <span class="keyword">class </span>DebugBridge : <span class="keyword">public</span> Atlas::Bridge
<a name="l00009"></a>00009 {
<a name="l00010"></a>00010 <span class="keyword">public</span>:
<a name="l00011"></a>00011 
<a name="l00012"></a>00012     DebugBridge()
<a name="l00013"></a>00013     {
<a name="l00014"></a>00014         padding = <span class="stringliteral">""</span>;
<a name="l00015"></a>00015     }
<a name="l00016"></a>00016 
<a name="l00017"></a>00017     <span class="keyword">virtual</span> ~DebugBridge() { }
<a name="l00018"></a>00018 
<a name="l00019"></a>00019     <span class="keyword">virtual</span> <span class="keywordtype">void</span> streamBegin() {
<a name="l00020"></a>00020         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"streamBegin"</span> &lt;&lt; std::endl;
<a name="l00021"></a>00021         addPadding();
<a name="l00022"></a>00022     }
<a name="l00023"></a>00023     <span class="keyword">virtual</span> <span class="keywordtype">void</span> streamMessage() {
<a name="l00024"></a>00024         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"New Map"</span> &lt;&lt; std::endl;
<a name="l00025"></a>00025         addPadding();
<a name="l00026"></a>00026     }
<a name="l00027"></a>00027     <span class="keyword">virtual</span> <span class="keywordtype">void</span> streamEnd() {
<a name="l00028"></a>00028         removePadding();
<a name="l00029"></a>00029         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"streamEnd"</span> &lt;&lt; std::endl;
<a name="l00030"></a>00030     }
<a name="l00031"></a>00031     
<a name="l00032"></a>00032     <span class="keyword">virtual</span> <span class="keywordtype">void</span> mapMapItem(<span class="keyword">const</span> std::string&amp; name)
<a name="l00033"></a>00033     {
<a name="l00034"></a>00034         std::cout &lt;&lt; padding &lt;&lt; name &lt;&lt; <span class="stringliteral">" -&gt; New Map"</span> &lt;&lt; std::endl;
<a name="l00035"></a>00035         addPadding();
<a name="l00036"></a>00036     }
<a name="l00037"></a>00037     <span class="keyword">virtual</span> <span class="keywordtype">void</span> mapListItem(<span class="keyword">const</span> std::string&amp; name)
<a name="l00038"></a>00038     {
<a name="l00039"></a>00039         std::cout &lt;&lt; padding &lt;&lt; name &lt;&lt; <span class="stringliteral">" -&gt; New List"</span> &lt;&lt; std::endl;
<a name="l00040"></a>00040         addPadding();
<a name="l00041"></a>00041     }
<a name="l00042"></a>00042     <span class="keyword">virtual</span> <span class="keywordtype">void</span> mapIntItem(<span class="keyword">const</span> std::string&amp; name, <span class="keywordtype">long</span> i)
<a name="l00043"></a>00043     {
<a name="l00044"></a>00044         std::cout &lt;&lt; padding &lt;&lt; name &lt;&lt; <span class="stringliteral">" -&gt; Int: "</span> &lt;&lt; i &lt;&lt; std::endl;
<a name="l00045"></a>00045     }
<a name="l00046"></a>00046     <span class="keyword">virtual</span> <span class="keywordtype">void</span> mapFloatItem(<span class="keyword">const</span> std::string&amp; name, <span class="keywordtype">double</span> d)
<a name="l00047"></a>00047     {
<a name="l00048"></a>00048         std::cout &lt;&lt; padding &lt;&lt; name &lt;&lt; <span class="stringliteral">" -&gt; Float: "</span> &lt;&lt; d &lt;&lt; std::endl;
<a name="l00049"></a>00049     }
<a name="l00050"></a>00050     <span class="keyword">virtual</span> <span class="keywordtype">void</span> mapStringItem(<span class="keyword">const</span> std::string&amp; name, <span class="keyword">const</span> std::string&amp; s)
<a name="l00051"></a>00051     {
<a name="l00052"></a>00052         std::cout &lt;&lt; padding &lt;&lt; name &lt;&lt; <span class="stringliteral">" -&gt; String: "</span> &lt;&lt; s &lt;&lt; std::endl;
<a name="l00053"></a>00053     }
<a name="l00054"></a>00054     <span class="keyword">virtual</span> <span class="keywordtype">void</span> mapEnd()
<a name="l00055"></a>00055     {
<a name="l00056"></a>00056         removePadding();
<a name="l00057"></a>00057         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"mapEnd"</span> &lt;&lt; std::endl;
<a name="l00058"></a>00058     }
<a name="l00059"></a>00059     
<a name="l00060"></a>00060     <span class="keyword">virtual</span> <span class="keywordtype">void</span> listMapItem()
<a name="l00061"></a>00061     {
<a name="l00062"></a>00062         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"New Map"</span> &lt;&lt; std::endl;
<a name="l00063"></a>00063         addPadding();
<a name="l00064"></a>00064     }
<a name="l00065"></a>00065     <span class="keyword">virtual</span> <span class="keywordtype">void</span> listListItem()
<a name="l00066"></a>00066     {
<a name="l00067"></a>00067         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"New List"</span> &lt;&lt; std::endl;
<a name="l00068"></a>00068         addPadding();
<a name="l00069"></a>00069     }
<a name="l00070"></a>00070     <span class="keyword">virtual</span> <span class="keywordtype">void</span> listIntItem(<span class="keywordtype">long</span> i)
<a name="l00071"></a>00071     {
<a name="l00072"></a>00072         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"Int: "</span> &lt;&lt; i &lt;&lt; std::endl;
<a name="l00073"></a>00073     }
<a name="l00074"></a>00074     <span class="keyword">virtual</span> <span class="keywordtype">void</span> listFloatItem(<span class="keywordtype">double</span> d)
<a name="l00075"></a>00075     {
<a name="l00076"></a>00076         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"Float: "</span> &lt;&lt; d &lt;&lt; std::endl;
<a name="l00077"></a>00077     }
<a name="l00078"></a>00078     <span class="keyword">virtual</span> <span class="keywordtype">void</span> listStringItem(<span class="keyword">const</span> std::string&amp; s)
<a name="l00079"></a>00079     {
<a name="l00080"></a>00080         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"String: "</span> &lt;&lt; s &lt;&lt; std::endl;
<a name="l00081"></a>00081     }
<a name="l00082"></a>00082     <span class="keyword">virtual</span> <span class="keywordtype">void</span> listEnd()
<a name="l00083"></a>00083     {
<a name="l00084"></a>00084         removePadding();
<a name="l00085"></a>00085         std::cout &lt;&lt; padding &lt;&lt; <span class="stringliteral">"listEnd"</span> &lt;&lt; std::endl;
<a name="l00086"></a>00086     }
<a name="l00087"></a>00087 
<a name="l00088"></a>00088 <span class="keyword">protected</span>:
<a name="l00089"></a>00089     <span class="keyword">virtual</span> <span class="keywordtype">void</span> addPadding()
<a name="l00090"></a>00090     {
<a name="l00091"></a>00091         padding += <span class="stringliteral">"  "</span>;
<a name="l00092"></a>00092     }
<a name="l00093"></a>00093 
<a name="l00094"></a>00094     <span class="keyword">virtual</span> <span class="keywordtype">void</span> removePadding()
<a name="l00095"></a>00095     {
<a name="l00096"></a>00096         padding.erase(padding.end() - 2, padding.end());
<a name="l00097"></a>00097     }
<a name="l00098"></a>00098 
<a name="l00099"></a>00099     std::string padding;
<a name="l00100"></a>00100 };
<a name="l00101"></a>00101 
<a name="l00102"></a>00102 <span class="preprocessor">#endif // DEBUG_BRIDGE_H</span>
</pre></div></div>
<HR>
<P>Copyright 2000-2004 the respective authors.</P>
<P>This document can be licensed under the terms of the GNU Free Documentation
License or the GNU General Public License and may be freely distributed under
the terms given by one of these licenses.</P>