Sophie

Sophie

distrib > Fedora > 13 > i386 > by-pkgid > eebc325dc36bd6e3b09b9b45133e42f8 > files > 3143

HippoDraw-devel-docs-1.21.1-10.fc13.i686.rpm

<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>HippoDraw Class Library</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
<link rel="shortcut icon" href="hippoApp.ico">
</head><body>
<!-- Generated by Doxygen 1.6.2 -->
<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="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>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespacehippodraw.html">hippodraw</a>::<a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a>
  </div>
</div>
<div class="contents">
<h1>NTupleSorter Class Reference</h1><!-- doxytag: class="hippodraw::NTupleSorter" -->
<p>A helper class to sort and keep sorted an <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="NTupleSorter_8h_source.html">NTupleSorter.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for NTupleSorter:</div>
<div class="dynsection">
<div class="center"><img src="classhippodraw_1_1NTupleSorter__coll__graph.gif" border="0" usemap="#NTupleSorter_coll__map" alt="Collaboration graph"/></div>
<map name="NTupleSorter_coll__map" id="NTupleSorter_coll__map">
<area shape="rect" id="node6" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column..." alt="" coords="264,507,328,536"/><area shape="rect" id="node8" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource." alt="" coords="357,411,448,440"/><area shape="rect" id="node10" href="classhippodraw_1_1Observable.html" title="Part of an implementation of the Observable&#45;Observer pattern based on the example..." alt="" coords="267,296,355,325"/><area shape="rect" id="node14" href="classhippodraw_1_1Observer.html" title="Part of an implementation of the Observable Observer pattern based on the example..." alt="" coords="316,101,391,131"/><area shape="rect" id="node16" title="STL class." alt="" coords="435,101,504,131"/><area shape="rect" id="node28" title="STL class." alt="" coords="697,197,788,227"/><area shape="rect" id="node21" title="STL class." alt="" coords="579,197,632,227"/><area shape="rect" id="node23" title="STL class." alt="" coords="535,101,676,131"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classhippodraw_1_1NTupleSorter-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a55232d4408510d28a883c9f71fb61416">addRow</a> (const std::vector&lt; double &gt; &amp;row)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a row to the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  <a href="#a55232d4408510d28a883c9f71fb61416"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#ac8bb3912a3ce86b15842e79d0b421204">clear</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clears the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  <a href="#ac8bb3912a3ce86b15842e79d0b421204"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a903d6ffef3ddea0d904a5336e231b643">columns</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of columns of the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  <a href="#a903d6ffef3ddea0d904a5336e231b643"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#ad25d3586eb1053032c5096681d5d52ef">eraseRow</a> (unsigned int index)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Erases a row from the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  <a href="#ad25d3586eb1053032c5096681d5d52ef"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhippodraw_1_1NTuple.html">NTuple</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a6d44f9b2fa2491bd838dfae2c58bac27">getNTuple</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> being managed by the sorter.  <a href="#a6d44f9b2fa2491bd838dfae2c58bac27"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const std::vector&lt; double &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#ac295953ac88bc39038e4f22781577ec8">getRow</a> (unsigned int index) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a reference to the <em>index</em> row of the sorted <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  <a href="#ac295953ac88bc39038e4f22781577ec8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#aa0b28aa1ba8c4b61ca602001334c168f">NTupleSorter</a> (<a class="el" href="classhippodraw_1_1NTuple.html">NTuple</a> *ntuple)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A constructor taking the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> to be sorted as the parameter.  <a href="#aa0b28aa1ba8c4b61ca602001334c168f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a90d756c579aca9a5ad46f94adfb9f4b9">NTupleSorter</a> (const <a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> &amp;)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The copy constructor.  <a href="#a90d756c579aca9a5ad46f94adfb9f4b9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#afbc9ed407439fc8fcb54db94c9e25ee5">operator()</a> (std::vector&lt; double &gt; *x, std::vector&lt; double &gt; *y) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A predicate function to be used for comparing two rows.  <a href="#afbc9ed407439fc8fcb54db94c9e25ee5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a2b76a8f13ad489df9fa8cc9452c9012b">rows</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of rows of the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  <a href="#a2b76a8f13ad489df9fa8cc9452c9012b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a97bad9f0dec44acd2d007d3fe7235f40">setSorting</a> (int column)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the sorting column.  <a href="#a97bad9f0dec44acd2d007d3fe7235f40"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a47fdc9eea42b6975cdc835bb2e08810e">sort</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sorts the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>.  <a href="#a47fdc9eea42b6975cdc835bb2e08810e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a006d8ef80fb7fd8733bef99fc4522204">~NTupleSorter</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The virtual destructor.  <a href="#a006d8ef80fb7fd8733bef99fc4522204"></a><br/></td></tr>
<tr><td colspan="2"><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a5dcbd79381039e4417b3b7f421275400">operator=</a> (const <a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> &amp;)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Private assignment operator to prevent copying.  <a href="#a5dcbd79381039e4417b3b7f421275400"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a3be3d559b60f6e179d00bda1598b066d">rowwiseCopy</a> (std::vector&lt; std::vector&lt; double &gt; * &gt; &amp;row_copy)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Makes a row-wise copy of the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> object.  <a href="#a3be3d559b60f6e179d00bda1598b066d"></a><br/></td></tr>
<tr><td colspan="2"><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a10127a746e28946d9844af7213b8e742">m_column</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The column used for sorting, or -1 if sorting is disabled.  <a href="#a10127a746e28946d9844af7213b8e742"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#a604040ff73b42c920f956d8500b9ec9c">m_increasing</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The direction of the sort.  <a href="#a604040ff73b42c920f956d8500b9ec9c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhippodraw_1_1NTuple.html">NTuple</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1NTupleSorter.html#ae963c6d828c76ea09f77a3c974b52a11">m_ntuple</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> object that will be used.  <a href="#ae963c6d828c76ea09f77a3c974b52a11"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A helper class to sort and keep sorted an <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>
<p>A class to maintain a sorted <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. Sorting is done by the value of elements in the selected column.</p>
<dl class="author"><dt><b>Author:</b></dt><dd>Paul F. Kunz &lt;<a href="mailto:Paul_Kunz@slac.stanford.edu">Paul_Kunz@slac.stanford.edu</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="NTupleSorter_8h_source.html#l00032">32</a> of file <a class="el" href="NTupleSorter_8h_source.html">NTupleSorter.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a90d756c579aca9a5ad46f94adfb9f4b9"></a><!-- doxytag: member="hippodraw::NTupleSorter::NTupleSorter" ref="a90d756c579aca9a5ad46f94adfb9f4b9" args="(const NTupleSorter &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>sorter</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The copy constructor. </p>
<p>Initializes the newly constructed object with save value of the data members except for m_ntuple which is set to null pointer. It is intended that the copy only be used as predicate to the STL sort function. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00037">37</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="aa0b28aa1ba8c4b61ca602001334c168f"></a><!-- doxytag: member="hippodraw::NTupleSorter::NTupleSorter" ref="aa0b28aa1ba8c4b61ca602001334c168f" args="(NTuple *ntuple)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhippodraw_1_1NTuple.html">NTuple</a> *&nbsp;</td>
          <td class="paramname"> <em>ntuple</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A constructor taking the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> to be sorted as the parameter. </p>
<p>Constructs the object and initialize it to sort column 0 in increasing order. Does not sort the NTuple object. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00029">29</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a006d8ef80fb7fd8733bef99fc4522204"></a><!-- doxytag: member="hippodraw::NTupleSorter::~NTupleSorter" ref="a006d8ef80fb7fd8733bef99fc4522204" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual ~<a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The virtual destructor. </p>
<p>The virtual distructor which is needed only to avoid warning from some compilers such as Gcc 4.0.0. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8h_source.html#l00077">77</a> of file <a class="el" href="NTupleSorter_8h_source.html">NTupleSorter.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a55232d4408510d28a883c9f71fb61416"></a><!-- doxytag: member="hippodraw::NTupleSorter::addRow" ref="a55232d4408510d28a883c9f71fb61416" args="(const std::vector&lt; double &gt; &amp;row)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void addRow </td>
          <td>(</td>
          <td class="paramtype">const std::vector&lt; double &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>row</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a row to the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>
<p>Adds a row to the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> object. Maintains the sorted order with the current sorting column and its direction.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>The implementation of this function has some fine examples of the use of STL template functions from <b>algorithm</b>, <b>functional</b>, and <b>iterator</b>. However, workarounds may be needed for compilers weak in the handling of templates. </dd></dl>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00117">117</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTuple_8cxx_source.html#l00492">NTuple::getColumn()</a>, <a class="el" href="NTuple_8cxx_source.html#l00280">NTuple::insertRow()</a>, <a class="el" href="NTupleSorter_8h_source.html#l00043">NTupleSorter::m_column</a>, <a class="el" href="NTupleSorter_8h_source.html#l00047">NTupleSorter::m_increasing</a>, and <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>.</p>

<p>Referenced by <a class="el" href="NTupleSorter_8cxx_source.html#l00090">NTupleSorter::sort()</a>.</p>

</div>
</div>
<a class="anchor" id="ac8bb3912a3ce86b15842e79d0b421204"></a><!-- doxytag: member="hippodraw::NTupleSorter::clear" ref="ac8bb3912a3ce86b15842e79d0b421204" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void clear </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clears the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00110">110</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTuple_8cxx_source.html#l00211">NTuple::clear()</a>, and <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>.</p>

<p>Referenced by <a class="el" href="PickTable_8cxx_source.html#l00112">PickTable::clear()</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00090">NTupleSorter::sort()</a>.</p>

</div>
</div>
<a class="anchor" id="a903d6ffef3ddea0d904a5336e231b643"></a><!-- doxytag: member="hippodraw::NTupleSorter::columns" ref="a903d6ffef3ddea0d904a5336e231b643" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int columns </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the number of columns of the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00145">145</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="DataSource_8h_source.html#l00458">DataSource::columns()</a>, and <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>.</p>

</div>
</div>
<a class="anchor" id="ad25d3586eb1053032c5096681d5d52ef"></a><!-- doxytag: member="hippodraw::NTupleSorter::eraseRow" ref="ad25d3586eb1053032c5096681d5d52ef" args="(unsigned int index)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void eraseRow </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>index</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Erases a row from the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>
<p>Removes the row <em>index</em> from the NTuple. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classhippodraw_1_1NTuple.html#ad25d3586eb1053032c5096681d5d52ef" title="Erases a row from the NTuple.">NTuple::eraseRow</a>. </dd></dl>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00138">138</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>.</p>

<p>Referenced by <a class="el" href="PickTable_8cxx_source.html#l00185">PickTable::deleteSelectedItem()</a>.</p>

</div>
</div>
<a class="anchor" id="a6d44f9b2fa2491bd838dfae2c58bac27"></a><!-- doxytag: member="hippodraw::NTupleSorter::getNTuple" ref="a6d44f9b2fa2491bd838dfae2c58bac27" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1NTuple.html">NTuple</a> * getNTuple </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> being managed by the sorter. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00046">46</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>.</p>

</div>
</div>
<a class="anchor" id="ac295953ac88bc39038e4f22781577ec8"></a><!-- doxytag: member="hippodraw::NTupleSorter::getRow" ref="ac295953ac88bc39038e4f22781577ec8" args="(unsigned int index) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const vector&lt; double &gt; &amp; getRow </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>index</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a reference to the <em>index</em> row of the sorted <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00159">159</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTuple_8cxx_source.html#l00327">NTuple::getRow()</a>, and <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>.</p>

<p>Referenced by <a class="el" href="PickTable_8cxx_source.html#l00131">PickTable::refreshItems()</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00065">NTupleSorter::rowwiseCopy()</a>.</p>

</div>
</div>
<a class="anchor" id="afbc9ed407439fc8fcb54db94c9e25ee5"></a><!-- doxytag: member="hippodraw::NTupleSorter::operator()" ref="afbc9ed407439fc8fcb54db94c9e25ee5" args="(std::vector&lt; double &gt; *x, std::vector&lt; double &gt; *y) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator() </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; double &gt; *&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; double &gt; *&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A predicate function to be used for comparing two rows. </p>
<p>Returns <code>true</code> if the element of the column used for sorting of row <em>x</em> is less than the element of row <em>y</em>. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00079">79</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTupleSorter_8h_source.html#l00043">NTupleSorter::m_column</a>, and <a class="el" href="NTupleSorter_8h_source.html#l00047">NTupleSorter::m_increasing</a>.</p>

</div>
</div>
<a class="anchor" id="a5dcbd79381039e4417b3b7f421275400"></a><!-- doxytag: member="hippodraw::NTupleSorter::operator=" ref="a5dcbd79381039e4417b3b7f421275400" args="(const NTupleSorter &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a>&amp; operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classhippodraw_1_1NTupleSorter.html">NTupleSorter</a> &amp;&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Private assignment operator to prevent copying. </p>

</div>
</div>
<a class="anchor" id="a2b76a8f13ad489df9fa8cc9452c9012b"></a><!-- doxytag: member="hippodraw::NTupleSorter::rows" ref="a2b76a8f13ad489df9fa8cc9452c9012b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int rows </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the number of rows of the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00152">152</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>, and <a class="el" href="NTuple_8cxx_source.html#l00230">NTuple::rows()</a>.</p>

<p>Referenced by <a class="el" href="PickTable_8cxx_source.html#l00131">PickTable::refreshItems()</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00065">NTupleSorter::rowwiseCopy()</a>.</p>

</div>
</div>
<a class="anchor" id="a3be3d559b60f6e179d00bda1598b066d"></a><!-- doxytag: member="hippodraw::NTupleSorter::rowwiseCopy" ref="a3be3d559b60f6e179d00bda1598b066d" args="(std::vector&lt; std::vector&lt; double &gt; * &gt; &amp;row_copy)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void rowwiseCopy </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; std::vector&lt; double &gt; * &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>row_copy</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Makes a row-wise copy of the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> object. </p>
<p>Clears the vector <em>row_copy</em> and fills it with a pointers to vectors containing the elements of each row. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00065">65</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTupleSorter_8cxx_source.html#l00159">NTupleSorter::getRow()</a>, <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00152">NTupleSorter::rows()</a>.</p>

<p>Referenced by <a class="el" href="NTupleSorter_8cxx_source.html#l00090">NTupleSorter::sort()</a>.</p>

</div>
</div>
<a class="anchor" id="a97bad9f0dec44acd2d007d3fe7235f40"></a><!-- doxytag: member="hippodraw::NTupleSorter::setSorting" ref="a97bad9f0dec44acd2d007d3fe7235f40" args="(int column)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void setSorting </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>column</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the sorting column. </p>
<p>Sets the sorting column and resets the direction. If <em>column</em> is different from the current one, sets the sorting direction to be increasing. If <em>column</em> is the same as previously used, toggles the sorting direction to be the opposite of the current state. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00053">53</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTupleSorter_8h_source.html#l00043">NTupleSorter::m_column</a>, and <a class="el" href="NTupleSorter_8h_source.html#l00047">NTupleSorter::m_increasing</a>.</p>

</div>
</div>
<a class="anchor" id="a47fdc9eea42b6975cdc835bb2e08810e"></a><!-- doxytag: member="hippodraw::NTupleSorter::sort" ref="a47fdc9eea42b6975cdc835bb2e08810e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sort </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sorts the <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a>. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8cxx_source.html#l00090">90</a> of file <a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a>.</p>

<p>References <a class="el" href="NTupleSorter_8cxx_source.html#l00117">NTupleSorter::addRow()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00110">NTupleSorter::clear()</a>, <a class="el" href="NTupleSorter_8h_source.html#l00051">NTupleSorter::m_ntuple</a>, <a class="el" href="NTuple_8cxx_source.html#l00573">NTuple::notifyObservers()</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00065">NTupleSorter::rowwiseCopy()</a>.</p>

<p>Referenced by <a class="el" href="ContourPointRep_8cxx_source.html#l00762">ContourPointRep::drawProjectedValues()</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a10127a746e28946d9844af7213b8e742"></a><!-- doxytag: member="hippodraw::NTupleSorter::m_column" ref="a10127a746e28946d9844af7213b8e742" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classhippodraw_1_1NTupleSorter.html#a10127a746e28946d9844af7213b8e742">m_column</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The column used for sorting, or -1 if sorting is disabled. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8h_source.html#l00043">43</a> of file <a class="el" href="NTupleSorter_8h_source.html">NTupleSorter.h</a>.</p>

<p>Referenced by <a class="el" href="NTupleSorter_8cxx_source.html#l00117">NTupleSorter::addRow()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00079">NTupleSorter::operator()()</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00053">NTupleSorter::setSorting()</a>.</p>

</div>
</div>
<a class="anchor" id="a604040ff73b42c920f956d8500b9ec9c"></a><!-- doxytag: member="hippodraw::NTupleSorter::m_increasing" ref="a604040ff73b42c920f956d8500b9ec9c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classhippodraw_1_1NTupleSorter.html#a604040ff73b42c920f956d8500b9ec9c">m_increasing</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The direction of the sort. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8h_source.html#l00047">47</a> of file <a class="el" href="NTupleSorter_8h_source.html">NTupleSorter.h</a>.</p>

<p>Referenced by <a class="el" href="NTupleSorter_8cxx_source.html#l00117">NTupleSorter::addRow()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00079">NTupleSorter::operator()()</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00053">NTupleSorter::setSorting()</a>.</p>

</div>
</div>
<a class="anchor" id="ae963c6d828c76ea09f77a3c974b52a11"></a><!-- doxytag: member="hippodraw::NTupleSorter::m_ntuple" ref="ae963c6d828c76ea09f77a3c974b52a11" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1NTuple.html">NTuple</a>* <a class="el" href="classhippodraw_1_1NTupleSorter.html#ae963c6d828c76ea09f77a3c974b52a11">m_ntuple</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The <a class="el" href="classhippodraw_1_1NTuple.html" title="A DataSource class implemented with std::vector&lt;double&gt; to store the column...">NTuple</a> object that will be used. </p>

<p>Definition at line <a class="el" href="NTupleSorter_8h_source.html#l00051">51</a> of file <a class="el" href="NTupleSorter_8h_source.html">NTupleSorter.h</a>.</p>

<p>Referenced by <a class="el" href="NTupleSorter_8cxx_source.html#l00117">NTupleSorter::addRow()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00110">NTupleSorter::clear()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00145">NTupleSorter::columns()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00138">NTupleSorter::eraseRow()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00046">NTupleSorter::getNTuple()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00159">NTupleSorter::getRow()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00152">NTupleSorter::rows()</a>, <a class="el" href="NTupleSorter_8cxx_source.html#l00065">NTupleSorter::rowwiseCopy()</a>, and <a class="el" href="NTupleSorter_8cxx_source.html#l00090">NTupleSorter::sort()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="NTupleSorter_8h_source.html">NTupleSorter.h</a></li>
<li><a class="el" href="NTupleSorter_8cxx_source.html">NTupleSorter.cxx</a></li>
</ul>
</div>
<hr size="1"><address style="align: right;"><small>
Generated for HippoDraw Class Library by <a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0>
</a> </small></address>
</body>
</html>