Sophie

Sophie

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

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_1RootController.html">RootController</a>
  </div>
</div>
<div class="contents">
<h1>RootController Class Reference</h1><!-- doxytag: class="hippodraw::RootController" --><!-- doxytag: inherits="hippodraw::Observer" -->
<p>A Controller class for ROOT files.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="RootController_8h_source.html">RootController.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for RootController:</div>
<div class="dynsection">
<div class="center"><img src="classhippodraw_1_1RootController__inherit__graph.gif" border="0" usemap="#RootController_inherit__map" alt="Inheritance graph"/></div>
<map name="RootController_inherit__map" id="RootController_inherit__map">
<area shape="rect" id="node2" href="classhippodraw_1_1Observer.html" title="Part of an implementation of the Observable Observer pattern based on the example..." alt="" coords="21,5,96,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for RootController:</div>
<div class="dynsection">
<div class="center"><img src="classhippodraw_1_1RootController__coll__graph.gif" border="0" usemap="#RootController_coll__map" alt="Collaboration graph"/></div>
<map name="RootController_coll__map" id="RootController_coll__map">
<area shape="rect" id="node2" href="classhippodraw_1_1Observer.html" title="Part of an implementation of the Observable Observer pattern based on the example..." alt="" coords="180,221,255,251"/><area shape="rect" id="node9" title="STL class." alt="" coords="460,236,513,265"/><area shape="rect" id="node29" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource." alt="" coords="1157,456,1248,485"/><area shape="rect" id="node11" title="STL class." alt="" coords="147,136,288,165"/><area shape="rect" id="node13" title="STL class." alt="" coords="439,21,535,51"/><area shape="rect" id="node23" title="STL class." alt="" coords="441,555,532,584"/><area shape="rect" id="node36" title="STL class." alt="" coords="183,348,252,377"/><area shape="rect" id="node31" href="classhippodraw_1_1Observable.html" title="Part of an implementation of the Observable&#45;Observer pattern based on the example..." alt="" coords="772,440,860,469"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classhippodraw_1_1RootController-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">const std::vector&lt; std::string &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#ad351e6ca9b3d6de267c1d8735285cd64">getNTupleNames</a> (const std::string &amp;)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the names of the <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> objects contained in the file <em>name</em>.  <a href="#ad351e6ca9b3d6de267c1d8735285cd64"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const std::string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a8395fc086f9cfe5d544d04cae22dd059">version</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the version of ROOT being used.  <a href="#a8395fc086f9cfe5d544d04cae22dd059"></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_1RootController.html#a7627ada60f270ecc44e22c8fdb90f13b">~RootController</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The destructor.  <a href="#a7627ada60f270ecc44e22c8fdb90f13b"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">can be of the</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrp106e1cf119e50639c7e3cb0f9903b2e9"></a>Creates a <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a> object named <em>name</em>.</p>
<p>form "filename.root: tree", in which case the part left of `:' is taken as the filename and the part right of the `:' is taken as the tree name. If a `:' does not exist in <em>name</em>, then the first tree is used. </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#adab48c4c82532db750113681d5105632">createNTuple</a> (const std::string &amp;filename, const std::string &amp;treename)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a> from the file <em>filename</em> and <a class="el" href="classTTree.html" title="The ROOT TTree class.">TTree</a> named <em>treename</em>.  <a href="#adab48c4c82532db750113681d5105632"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a48af7a2d287944b83e258f9437f0ca1c">createNTuple</a> (const std::string &amp;name)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#ac246db3c052c00155714ad67dfd2065a">fillDimSize</a> (std::vector&lt; int &gt; &amp;dims, const <a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *source, const std::string &amp;column)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fills the vector <em>dims</em>.  <a href="#ac246db3c052c00155714ad67dfd2065a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTTree.html">TTree</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#abe1cda573f6457b97f9dd316bcb4dce7">getTree</a> (const std::string &amp;file, const std::string &amp;tree)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the named <em>tree</em> from <em>file</em> in the ROOT file.  <a href="#abe1cda573f6457b97f9dd316bcb4dce7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a1ffa8297351d8be3daaca3d6d29f0514">initNTuple</a> (<a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *source, const std::string &amp;filename, const std::string &amp;treename)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialized and registers new <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a>.  <a href="#a1ffa8297351d8be3daaca3d6d29f0514"></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_1RootController.html#ad0d72cf863ae116fe0ab803ee9f06b6d">smartExpandRootNTuple</a> (<a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *source, std::string &amp;column)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Expands the array column.  <a href="#ad0d72cf863ae116fe0ab803ee9f06b6d"></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_1RootController.html#ae6b85d8f95c1889865463b18e33d08a5">update</a> (const <a class="el" href="classhippodraw_1_1Observable.html">Observable</a> *)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Does nothing, but satisfies the pure virtual function in base.  <a href="#ae6b85d8f95c1889865463b18e33d08a5"></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_1RootController.html#adefbc387148a9902e36e5768871713ce">willDelete</a> (const <a class="el" href="classhippodraw_1_1Observable.html">Observable</a> *obs)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Closes the file that was used to create the observed <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a>.  <a href="#adefbc387148a9902e36e5768871713ce"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classhippodraw_1_1RootController.html">RootController</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a2f7a156f73540d35fb849101403bc947">instance</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the singleton instance of the <a class="el" href="classhippodraw_1_1RootController.html" title="A Controller class for ROOT files.">RootController</a>.  <a href="#a2f7a156f73540d35fb849101403bc947"></a><br/></td></tr>
<tr><td colspan="2"><h2>Private Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; const <br class="typebreak"/>
<a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *, std::string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a52f52ad990b29458c02bb87d40bc3a61">TupleToFileMap_t</a></td></tr>
<tr><td colspan="2"><h2>Private 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_1RootController.html#a917c528adccaa019ab4a003046e7f21c">closeFile</a> (const std::string &amp;name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Closed the named file, if found in list of opened files.  <a href="#a917c528adccaa019ab4a003046e7f21c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">TFile *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#acfd500c1b325f78793d9b8e07a6e50f7">openFile</a> (const std::string &amp;name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to open the file <em>name</em>.  <a href="#acfd500c1b325f78793d9b8e07a6e50f7"></a><br/></td></tr>
<tr><td colspan="2"><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, TFile * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a25e9f4c37b2ba6fa71e0349a997b19cb">m_file_map</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The list of opened ROOT files.  <a href="#a25e9f4c37b2ba6fa71e0349a997b19cb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a4d277b66ef016a78b2d85f29d164273b">m_ntuple_names</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Temporary list of <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> names in the file.  <a href="#a4d277b66ef016a78b2d85f29d164273b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhippodraw_1_1RootController.html#a52f52ad990b29458c02bb87d40bc3a61">TupleToFileMap_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a34e52adcf5491503e585777b7ec95e61">m_tuple_map</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A map to find which ROOT file was used to create <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a>.  <a href="#a34e52adcf5491503e585777b7ec95e61"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a5ebb5240c11541d46b3bfe086e4a8b87">m_version</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The version of ROOT being used.  <a href="#a5ebb5240c11541d46b3bfe086e4a8b87"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classhippodraw_1_1RootController.html">RootController</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classhippodraw_1_1RootController.html#a29059518ecd96088c2009ec25bbdf301">s_instance</a> = 0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The singleton instance of the <a class="el" href="classhippodraw_1_1RootController.html" title="A Controller class for ROOT files.">RootController</a>.  <a href="#a29059518ecd96088c2009ec25bbdf301"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A Controller class for ROOT files. </p>
<dl class="bug"><dt><b><a class="el" href="bug.html#_bug000141">Bug:</a></b></dt><dd>@@@ testsuite/towercut.py needs fixing.</dd></dl>
<dl class="requests"><dt><b><a class="el" href="requests.html#_requests000105">Requests:</a></b></dt><dd>@@ Be able to chain ROOT files.</dd></dl>
<dl class="requests"><dt><b><a class="el" href="requests.html#_requests000106">Requests:</a></b></dt><dd>Read TH1 and TH2 histograms in ROOT file and convert to corresponding static histograms.</dd></dl>
<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="RootController_8h_source.html#l00042">42</a> of file <a class="el" href="RootController_8h_source.html">RootController.h</a>.</p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a52f52ad990b29458c02bb87d40bc3a61"></a><!-- doxytag: member="hippodraw::RootController::TupleToFileMap_t" ref="a52f52ad990b29458c02bb87d40bc3a61" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::map&lt; const <a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *, std::string &gt; <a class="el" href="classhippodraw_1_1RootController.html#a52f52ad990b29458c02bb87d40bc3a61">TupleToFileMap_t</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="RootController_8h_source.html#l00052">52</a> of file <a class="el" href="RootController_8h_source.html">RootController.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a7627ada60f270ecc44e22c8fdb90f13b"></a><!-- doxytag: member="hippodraw::RootController::~RootController" ref="a7627ada60f270ecc44e22c8fdb90f13b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">~<a class="el" href="classhippodraw_1_1RootController.html">RootController</a> </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The destructor. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00057">57</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a917c528adccaa019ab4a003046e7f21c"></a><!-- doxytag: member="hippodraw::RootController::closeFile" ref="a917c528adccaa019ab4a003046e7f21c" args="(const std::string &amp;name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void closeFile </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Closed the named file, if found in list of opened files. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00097">97</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8h_source.html#l00048">RootController::m_file_map</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00112">RootController::getNTupleNames()</a>, and <a class="el" href="RootController_8cxx_source.html#l00253">RootController::willDelete()</a>.</p>

</div>
</div>
<a class="anchor" id="adab48c4c82532db750113681d5105632"></a><!-- doxytag: member="hippodraw::RootController::createNTuple" ref="adab48c4c82532db750113681d5105632" args="(const std::string &amp;filename, const std::string &amp;treename)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> * createNTuple </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>treename</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates a <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a> from the file <em>filename</em> and <a class="el" href="classTTree.html" title="The ROOT TTree class.">TTree</a> named <em>treename</em>. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00155">155</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8cxx_source.html#l00141">RootController::getTree()</a>, and <a class="el" href="RootController_8cxx_source.html#l00167">RootController::initNTuple()</a>.</p>

</div>
</div>
<a class="anchor" id="a48af7a2d287944b83e258f9437f0ca1c"></a><!-- doxytag: member="hippodraw::RootController::createNTuple" ref="a48af7a2d287944b83e258f9437f0ca1c" args="(const std::string &amp;name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> * createNTuple </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00188">188</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8cxx_source.html#l00112">RootController::getNTupleNames()</a>.</p>

</div>
</div>
<a class="anchor" id="ac246db3c052c00155714ad67dfd2065a"></a><!-- doxytag: member="hippodraw::RootController::fillDimSize" ref="ac246db3c052c00155714ad67dfd2065a" args="(std::vector&lt; int &gt; &amp;dims, const DataSource *source, const std::string &amp;column)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void fillDimSize </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; int &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>dims</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *&nbsp;</td>
          <td class="paramname"> <em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>column</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Fills the vector <em>dims</em>. </p>
<p>If the <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> is a <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a>, fills the vector <em>dim</em> with the dimension of he column labeled <em>column</em>, otherwise does nothing. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00210">210</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="num__util_8cpp_source.html#l00317">num_util::shape()</a>.</p>

</div>
</div>
<a class="anchor" id="ad351e6ca9b3d6de267c1d8735285cd64"></a><!-- doxytag: member="hippodraw::RootController::getNTupleNames" ref="ad351e6ca9b3d6de267c1d8735285cd64" args="(const std::string &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const vector&lt; string &gt; &amp; getNTupleNames </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>file_name</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the names of the <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> objects contained in the file <em>name</em>. </p>
<p>For ROOT files, this is the names of the <a class="el" href="classTTree.html" title="The ROOT TTree class.">TTree</a>.</p>
<dl class="bug"><dt><b><a class="el" href="bug.html#_bug000142">Bug:</a></b></dt><dd>Returns all top level names instead of only the ones that could be a <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a>. </dd></dl>
<dl class="bug"><dt><b><a class="el" href="bug.html#_bug000140">Bug:</a></b></dt><dd>@@@ If can not open file, should thrown an exception. When fixing this bug, check also the <a class="el" href="classhippodraw_1_1FitsController.html" title="A Controller class for FITS files.">FitsController</a> for same bug. </dd></dl>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00112">112</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8cxx_source.html#l00097">RootController::closeFile()</a>, <a class="el" href="RootController_8h_source.html#l00060">RootController::m_ntuple_names</a>, <a class="el" href="RootController_8cxx_source.html#l00071">RootController::openFile()</a>, and <a class="el" href="num__util_8cpp_source.html#l00296">num_util::size()</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00188">RootController::createNTuple()</a>.</p>

</div>
</div>
<a class="anchor" id="abe1cda573f6457b97f9dd316bcb4dce7"></a><!-- doxytag: member="hippodraw::RootController::getTree" ref="abe1cda573f6457b97f9dd316bcb4dce7" args="(const std::string &amp;file, const std::string &amp;tree)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classTTree.html">TTree</a> * getTree </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>tree</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the named <em>tree</em> from <em>file</em> in the ROOT file. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00141">141</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8cxx_source.html#l00071">RootController::openFile()</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00155">RootController::createNTuple()</a>.</p>

</div>
</div>
<a class="anchor" id="a1ffa8297351d8be3daaca3d6d29f0514"></a><!-- doxytag: member="hippodraw::RootController::initNTuple" ref="a1ffa8297351d8be3daaca3d6d29f0514" args="(DataSource *source, const std::string &amp;filename, const std::string &amp;treename)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> * initNTuple </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *&nbsp;</td>
          <td class="paramname"> <em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>treename</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Initialized and registers new <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a>. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00167">167</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8cxx_source.html#l00042">RootController::instance()</a>, and <a class="el" href="RootController_8h_source.html#l00056">RootController::m_tuple_map</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00155">RootController::createNTuple()</a>.</p>

</div>
</div>
<a class="anchor" id="a2f7a156f73540d35fb849101403bc947"></a><!-- doxytag: member="hippodraw::RootController::instance" ref="a2f7a156f73540d35fb849101403bc947" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1RootController.html">RootController</a> * instance </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the singleton instance of the <a class="el" href="classhippodraw_1_1RootController.html" title="A Controller class for ROOT files.">RootController</a>. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00042">42</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8h_source.html#l00067">RootController::s_instance</a>.</p>

<p>Referenced by <a class="el" href="Inspector_8cxx_source.html#l01400">Inspector::addDataRepButton_clicked()</a>, <a class="el" href="Inspector_8cxx_source.html#l01252">Inspector::getArrayTupleLabel()</a>, <a class="el" href="HiNTupleXML_8cxx_source.html#l00085">HiNTupleXML::getObject()</a>, <a class="el" href="CanvasView_8cxx_source.html#l02822">CanvasView::helpAbout()</a>, <a class="el" href="RootController_8cxx_source.html#l00167">RootController::initNTuple()</a>, <a class="el" href="Inspector_8cxx_source.html#l01325">Inspector::newPlotButton_clicked()</a>, and <a class="el" href="QtFileDialog_8cxx_source.html#l00407">QtFileDialog::openRootTuple()</a>.</p>

</div>
</div>
<a class="anchor" id="acfd500c1b325f78793d9b8e07a6e50f7"></a><!-- doxytag: member="hippodraw::RootController::openFile" ref="acfd500c1b325f78793d9b8e07a6e50f7" args="(const std::string &amp;name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TFile * openFile </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Attempts to open the file <em>name</em>. </p>
<p>Throws a std::runtime_error exception if file not found. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00071">71</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8h_source.html#l00048">RootController::m_file_map</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00112">RootController::getNTupleNames()</a>, and <a class="el" href="RootController_8cxx_source.html#l00141">RootController::getTree()</a>.</p>

</div>
</div>
<a class="anchor" id="ad0d72cf863ae116fe0ab803ee9f06b6d"></a><!-- doxytag: member="hippodraw::RootController::smartExpandRootNTuple" ref="ad0d72cf863ae116fe0ab803ee9f06b6d" args="(DataSource *source, std::string &amp;column)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool smartExpandRootNTuple </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classhippodraw_1_1DataSource.html">DataSource</a> *&nbsp;</td>
          <td class="paramname"> <em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>column</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Expands the array column. </p>
<p>If the <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> is a <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a>, expands the column with array <a class="el" href="classTLeaf.html" title="The ROOT TLeaf class.">TLeaf</a> and returns <code>true</code>, otherwise returns <code>false</code>. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00229">229</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="ae6b85d8f95c1889865463b18e33d08a5"></a><!-- doxytag: member="hippodraw::RootController::update" ref="ae6b85d8f95c1889865463b18e33d08a5" args="(const Observable *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void update </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classhippodraw_1_1Observable.html">Observable</a> *&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Does nothing, but satisfies the pure virtual function in base. </p>

<p>Implements <a class="el" href="classhippodraw_1_1Observer.html#ab42954b72ba11d6f27a226f712ea77be">Observer</a>.</p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00243">243</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a8395fc086f9cfe5d544d04cae22dd059"></a><!-- doxytag: member="hippodraw::RootController::version" ref="a8395fc086f9cfe5d544d04cae22dd059" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string &amp; version </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the version of ROOT being used. </p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00063">63</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8h_source.html#l00063">RootController::m_version</a>.</p>

</div>
</div>
<a class="anchor" id="adefbc387148a9902e36e5768871713ce"></a><!-- doxytag: member="hippodraw::RootController::willDelete" ref="adefbc387148a9902e36e5768871713ce" args="(const Observable *obs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void willDelete </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classhippodraw_1_1Observable.html">Observable</a> *&nbsp;</td>
          <td class="paramname"> <em>obs</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Closes the file that was used to create the observed <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a>. </p>
<p>Closes the file that was used to create the observed <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a> if it was the only <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a> created from that file.</p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000200">Todo:</a></b></dt><dd>This method does get called with obs != <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a>, find out why. </dd></dl>

<p>Reimplemented from <a class="el" href="classhippodraw_1_1Observer.html#a5380948822be75c060ae8cc538cd1327">Observer</a>.</p>

<p>Definition at line <a class="el" href="RootController_8cxx_source.html#l00253">253</a> of file <a class="el" href="RootController_8cxx_source.html">RootController.cxx</a>.</p>

<p>References <a class="el" href="RootController_8cxx_source.html#l00097">RootController::closeFile()</a>, and <a class="el" href="RootController_8h_source.html#l00056">RootController::m_tuple_map</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a25e9f4c37b2ba6fa71e0349a997b19cb"></a><!-- doxytag: member="hippodraw::RootController::m_file_map" ref="a25e9f4c37b2ba6fa71e0349a997b19cb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::map&lt; std::string, TFile * &gt; <a class="el" href="classhippodraw_1_1RootController.html#a25e9f4c37b2ba6fa71e0349a997b19cb">m_file_map</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The list of opened ROOT files. </p>

<p>Definition at line <a class="el" href="RootController_8h_source.html#l00048">48</a> of file <a class="el" href="RootController_8h_source.html">RootController.h</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00097">RootController::closeFile()</a>, and <a class="el" href="RootController_8cxx_source.html#l00071">RootController::openFile()</a>.</p>

</div>
</div>
<a class="anchor" id="a4d277b66ef016a78b2d85f29d164273b"></a><!-- doxytag: member="hippodraw::RootController::m_ntuple_names" ref="a4d277b66ef016a78b2d85f29d164273b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; std::string &gt; <a class="el" href="classhippodraw_1_1RootController.html#a4d277b66ef016a78b2d85f29d164273b">m_ntuple_names</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Temporary list of <a class="el" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> names in the file. </p>

<p>Definition at line <a class="el" href="RootController_8h_source.html#l00060">60</a> of file <a class="el" href="RootController_8h_source.html">RootController.h</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00112">RootController::getNTupleNames()</a>.</p>

</div>
</div>
<a class="anchor" id="a34e52adcf5491503e585777b7ec95e61"></a><!-- doxytag: member="hippodraw::RootController::m_tuple_map" ref="a34e52adcf5491503e585777b7ec95e61" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1RootController.html#a52f52ad990b29458c02bb87d40bc3a61">TupleToFileMap_t</a> <a class="el" href="classhippodraw_1_1RootController.html#a34e52adcf5491503e585777b7ec95e61">m_tuple_map</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A map to find which ROOT file was used to create <a class="el" href="classhippodraw_1_1RootNTuple.html" title="A DataSource class implemented with a ROOT TBranch objects from a ROOT TTree to store...">RootNTuple</a>. </p>

<p>Definition at line <a class="el" href="RootController_8h_source.html#l00056">56</a> of file <a class="el" href="RootController_8h_source.html">RootController.h</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00167">RootController::initNTuple()</a>, and <a class="el" href="RootController_8cxx_source.html#l00253">RootController::willDelete()</a>.</p>

</div>
</div>
<a class="anchor" id="a5ebb5240c11541d46b3bfe086e4a8b87"></a><!-- doxytag: member="hippodraw::RootController::m_version" ref="a5ebb5240c11541d46b3bfe086e4a8b87" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string <a class="el" href="classhippodraw_1_1RootController.html#a5ebb5240c11541d46b3bfe086e4a8b87">m_version</a><code> [mutable, private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The version of ROOT being used. </p>

<p>Definition at line <a class="el" href="RootController_8h_source.html#l00063">63</a> of file <a class="el" href="RootController_8h_source.html">RootController.h</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00063">RootController::version()</a>.</p>

</div>
</div>
<a class="anchor" id="a29059518ecd96088c2009ec25bbdf301"></a><!-- doxytag: member="hippodraw::RootController::s_instance" ref="a29059518ecd96088c2009ec25bbdf301" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classhippodraw_1_1RootController.html">RootController</a> * <a class="el" href="classhippodraw_1_1RootController.html#a29059518ecd96088c2009ec25bbdf301">s_instance</a> = 0<code> [static, private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The singleton instance of the <a class="el" href="classhippodraw_1_1RootController.html" title="A Controller class for ROOT files.">RootController</a>. </p>

<p>Definition at line <a class="el" href="RootController_8h_source.html#l00067">67</a> of file <a class="el" href="RootController_8h_source.html">RootController.h</a>.</p>

<p>Referenced by <a class="el" href="RootController_8cxx_source.html#l00042">RootController::instance()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="RootController_8h_source.html">RootController.h</a></li>
<li><a class="el" href="RootController_8cxx_source.html">RootController.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>