Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > d5e74628f0e673bb8680aebce32b2c04 > files > 8561

itk-doc-3.12.0-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ITK: itk::SmapsFileParser&lt; TSmapsDataType &gt; Class Template Reference</title>
<link href="DoxygenStyle.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">


<!--  Section customized for INSIGHT : Tue Jul 17 01:02:45 2001 -->
<center>
<a href="index.html" class="qindex">Main Page</a>&nbsp;&nbsp; 
<a href="modules.html" class="qindex">Groups</a>&nbsp;&nbsp;
<a href="namespaces.html" class="qindex">Namespace List</a>&nbsp;&nbsp;
<a href="hierarchy.html" class="qindex">Class Hierarchy</a>&nbsp;&nbsp;
<a href="classes.html" class="qindex">Alphabetical List</a>&nbsp;&nbsp;
<a href="annotated.html" class="qindex">Compound List</a>&nbsp;&nbsp; 
<a href="files.html" class="qindex">File
List</a>&nbsp;&nbsp; 
<a href="namespacemembers.html" class="qindex">Namespace Members</a>&nbsp;&nbsp; 
<a href="functions.html" class="qindex">Compound Members</a>&nbsp;&nbsp; 
<a href="globals.html" class="qindex">File Members</a>&nbsp;&nbsp;
<a href="pages.html" class="qindex">Concepts</a></center>


<!-- Generated by Doxygen 1.5.9 -->
  <div class="navpath"><a class="el" href="namespaceitk.html">itk</a>::<a class="el" href="classitk_1_1SmapsFileParser.html">SmapsFileParser</a>
  </div>
<div class="contents">
<h1>itk::SmapsFileParser&lt; TSmapsDataType &gt; Class Template Reference</h1><!-- doxytag: class="itk::SmapsFileParser" --><!-- doxytag: inherits="MapFileParser&lt; TSmapsDataType &gt;" -->Read a smap file (typically located in /proc/PID/smaps) and extract the memory usage information. Any smaps data reader can be used in template as long as they implement a operator&gt;&gt;(istream&amp;) and have GetXXXUsage() methods.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="itkSmapsFileParser_8h_source.html">itkSmapsFileParser.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for itk::SmapsFileParser&lt; TSmapsDataType &gt;:</div>
<div class="dynsection">
<p><center><img src="classitk_1_1SmapsFileParser__inherit__graph.png" border="0" usemap="#itk_1_1SmapsFileParser_3_01TSmapsDataType_01_4__inherit__map" alt="Inheritance graph"></center>
<map name="itk_1_1SmapsFileParser_3_01TSmapsDataType_01_4__inherit__map">
<area shape="rect" id="node2" href="classitk_1_1MapFileParser.html" title="itk::MapFileParser\&lt; TSmapsDataType \&gt;" alt="" coords="13,101,301,131"><area shape="rect" id="node4" href="classitk_1_1MapFileParser.html" title="itk::MapFileParser\&lt; TMapData \&gt;" alt="" coords="37,5,277,35"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
<div class="dynheader">
Collaboration diagram for itk::SmapsFileParser&lt; TSmapsDataType &gt;:</div>
<div class="dynsection">
<p><center><img src="classitk_1_1SmapsFileParser__coll__graph.png" border="0" usemap="#itk_1_1SmapsFileParser_3_01TSmapsDataType_01_4__coll__map" alt="Collaboration graph"></center>
<map name="itk_1_1SmapsFileParser_3_01TSmapsDataType_01_4__coll__map">
<area shape="rect" id="node2" href="classitk_1_1MapFileParser.html" title="itk::MapFileParser\&lt; TSmapsDataType \&gt;" alt="" coords="13,197,301,227"><area shape="rect" id="node4" href="classitk_1_1MapFileParser.html" title="itk::MapFileParser\&lt; TMapData \&gt;" alt="" coords="37,101,277,131"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classitk_1_1SmapsFileParser-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">typedef <br class="typebreak">
TSmapsDataType::MemoryLoadType&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a></td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#e670235a75f31d4b1eb46c9fe637dcbd">GetHeapUsage</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#f937ebc93becd0f03a6a9ee58f450637">GetMemoryUsage</a> (const char *filter, const char *token=&quot;Size&quot;)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#af06f3f72b7678263f885f76133836e6">GetStackUsage</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#b393eef00513e0329191910e86ae618a">GetTotalMemoryUsage</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1SmapsFileParser.html#c03d0367d0d1c4ed31fcc9560192b315">ReadFile</a> (const std::string &amp;mapFileLocation=&quot;&quot;)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#18e08fdc9e5418b4ce689d3c5d5995b6">Update</a> (void)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1SmapsFileParser.html#7a7273f91556d45c7536febc9ca42a7e">~SmapsFileParser</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">TSmapsDataType&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#a79bce2bea6e201358be3bfb8a3ce42d">m_MapData</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1MapFileParser.html#79a889263cee6e58f4566e58b045a318">m_MapFilePath</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class TSmapsDataType&gt;<br>
 class itk::SmapsFileParser&lt; TSmapsDataType &gt;</h3>

Read a smap file (typically located in /proc/PID/smaps) and extract the memory usage information. Any smaps data reader can be used in template as long as they implement a operator&gt;&gt;(istream&amp;) and have GetXXXUsage() methods. 
<p>Definition at line <a class="el" href="itkSmapsFileParser_8h_source.html#l00257">257</a> of file <a class="el" href="itkSmapsFileParser_8h_source.html">itkSmapsFileParser.h</a>.</p>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="c24a127cc5bfeac4e0c747bd66733352"></a><!-- doxytag: member="itk::SmapsFileParser::MemoryLoadType" ref="c24a127cc5bfeac4e0c747bd66733352" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef TSmapsDataType ::<a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a> <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::<a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a><code> [inherited]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="itkSmapsFileParser_8h_source.html#l00212">212</a> of file <a class="el" href="itkSmapsFileParser_8h_source.html">itkSmapsFileParser.h</a>.</p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="7a7273f91556d45c7536febc9ca42a7e"></a><!-- doxytag: member="itk::SmapsFileParser::~SmapsFileParser" ref="7a7273f91556d45c7536febc9ca42a7e" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TSmapsDataType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classitk_1_1SmapsFileParser.html">itk::SmapsFileParser</a>&lt; TSmapsDataType &gt;::~<a class="el" href="classitk_1_1SmapsFileParser.html">SmapsFileParser</a>           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="e670235a75f31d4b1eb46c9fe637dcbd"></a><!-- doxytag: member="itk::SmapsFileParser::GetHeapUsage" ref="e670235a75f31d4b1eb46c9fe637dcbd" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a> <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::GetHeapUsage           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the heap usage in kB of the process. If no file has been loaded yet, load a default file. 
</div>
</div><p>
<a class="anchor" name="f937ebc93becd0f03a6a9ee58f450637"></a><!-- doxytag: member="itk::SmapsFileParser::GetMemoryUsage" ref="f937ebc93becd0f03a6a9ee58f450637" args="(const char *filter, const char *token=&quot;Size&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a> <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::GetMemoryUsage           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>filter</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>token</em> = <code>&quot;Size&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the memory usage in kB of a process segment. If no file has been loaded yet, load a default file. 
</div>
</div><p>
<a class="anchor" name="af06f3f72b7678263f885f76133836e6"></a><!-- doxytag: member="itk::SmapsFileParser::GetStackUsage" ref="af06f3f72b7678263f885f76133836e6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a> <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::GetStackUsage           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the heap usage in kB of the process. If no file has been loaded yet, load a default file. 
</div>
</div><p>
<a class="anchor" name="b393eef00513e0329191910e86ae618a"></a><!-- doxytag: member="itk::SmapsFileParser::GetTotalMemoryUsage" ref="b393eef00513e0329191910e86ae618a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1MapFileParser.html#c24a127cc5bfeac4e0c747bd66733352">MemoryLoadType</a> <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::GetTotalMemoryUsage           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the total memory usage in kB of a process. If no file has been loaded yet, load a default file. 
</div>
</div><p>
<a class="anchor" name="c03d0367d0d1c4ed31fcc9560192b315"></a><!-- doxytag: member="itk::SmapsFileParser::ReadFile" ref="c03d0367d0d1c4ed31fcc9560192b315" args="(const std::string &amp;mapFileLocation=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TSmapsDataType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classitk_1_1SmapsFileParser.html">itk::SmapsFileParser</a>&lt; TSmapsDataType &gt;::ReadFile           </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>mapFileLocation</em> = <code>&quot;&quot;</code>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Load and parse the smaps file pointed by smapsFileLocation. If smapsFileLocation is empty, load the file located at "/proc/" + PID + "/smaps" Throw an exception is the file can't be opened. 
<p>Implements <a class="el" href="classitk_1_1MapFileParser.html#bab55738918698361c1b979e48454880">itk::MapFileParser&lt; TSmapsDataType &gt;</a>.</p>

</div>
</div><p>
<a class="anchor" name="18e08fdc9e5418b4ce689d3c5d5995b6"></a><!-- doxytag: member="itk::SmapsFileParser::Update" ref="18e08fdc9e5418b4ce689d3c5d5995b6" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::Update           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
ReRead the last parsed file to refresh the memory usage. Returns true if read from the default location "". 
</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="a79bce2bea6e201358be3bfb8a3ce42d"></a><!-- doxytag: member="itk::SmapsFileParser::m_MapData" ref="a79bce2bea6e201358be3bfb8a3ce42d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TSmapsDataType  <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::<a class="el" href="classitk_1_1MapFileParser.html#a79bce2bea6e201358be3bfb8a3ce42d">m_MapData</a><code> [protected, inherited]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="itkSmapsFileParser_8h_source.html#l00248">248</a> of file <a class="el" href="itkSmapsFileParser_8h_source.html">itkSmapsFileParser.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="79a889263cee6e58f4566e58b045a318"></a><!-- doxytag: member="itk::SmapsFileParser::m_MapFilePath" ref="79a889263cee6e58f4566e58b045a318" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string <a class="el" href="classitk_1_1MapFileParser.html">itk::MapFileParser</a>&lt; TSmapsDataType  &gt;::<a class="el" href="classitk_1_1MapFileParser.html#79a889263cee6e58f4566e58b045a318">m_MapFilePath</a><code> [protected, inherited]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="itkSmapsFileParser_8h_source.html#l00247">247</a> of file <a class="el" href="itkSmapsFileParser_8h_source.html">itkSmapsFileParser.h</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="itkSmapsFileParser_8h_source.html">itkSmapsFileParser.h</a></ul>
</div>
<hr><address><small>
Generated at Fri May 8 07:04:51 2009 for ITK  by <a href="http://www.stack.nl/~dimitri/doxygen/index.html"> <img 
src="http://www.stack.nl/~dimitri/doxygen/doxygen.png" alt="doxygen"
align="middle" border=0 width=110 height=53>
</a> 1.5.9 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>,
 &copy;&nbsp;1997-2000</small></address>
</body>
</html>