Sophie

Sophie

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

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><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><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="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="dir_81660c05fb6bfb5c6c7ef0fee605ba15.html">datasrcs</a>
  </div>
</div>
<div class="contents">
<h1>DataSource.h</h1><a href="DataSource_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* -*- c++ -*- */</span>
<a name="l00002"></a>00002 
<a name="l00014"></a>00014 <span class="preprocessor">#ifndef DataSource_H</span>
<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="preprocessor">#define DataSource_H</span>
<a name="l00016"></a>00016 <span class="preprocessor"></span>
<a name="l00017"></a>00017 <span class="preprocessor">#ifdef _MSC_VER</span>
<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#include &lt;msdevstudio/MSconfig.h&gt;</span>
<a name="l00019"></a>00019 <span class="preprocessor">#endif</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 <span class="preprocessor">#include &quot;<a class="code" href="Observable_8h.html" title="Observable class interface.">pattern/Observable.h</a>&quot;</span>
<a name="l00022"></a>00022 
<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;string&gt;</span>
<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;vector&gt;</span>
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 <span class="preprocessor">#ifndef _MSC_VER</span>
<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="preprocessor">#include &lt;inttypes.h&gt;</span>
<a name="l00028"></a>00028 <span class="preprocessor">#endif</span>
<a name="l00029"></a>00029 <span class="preprocessor"></span>
<a name="l00030"></a>00030 <span class="keyword">namespace </span>hippodraw {
<a name="l00031"></a>00031   <span class="keyword">class </span>Range;
<a name="l00032"></a>00032 
<a name="l00033"></a>00033 
<a name="l00055"></a><a class="code" href="classhippodraw_1_1DataSource.html">00055</a> <span class="keyword">class </span><a class="code" href="libhippo_8h.html#a480024fd54849c743866874550153711">MDL_HIPPOPLOT_API</a> <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> : <span class="keyword">public</span> <a class="code" href="classhippodraw_1_1Observable.html" title="Part of an implementation of the Observable-Observer pattern based on the example...">Observable</a>
<a name="l00056"></a>00056 {
<a name="l00057"></a>00057 
<a name="l00058"></a>00058  <span class="keyword">private</span>:
<a name="l00059"></a>00059 
<a name="l00066"></a><a class="code" href="classhippodraw_1_1DataSource.html#a44fffac8d043900f294932f30f79e1d5">00066</a>   std::string m_ds_name;
<a name="l00067"></a>00067 
<a name="l00070"></a><a class="code" href="classhippodraw_1_1DataSource.html#a85b5b28ec973f933b9ed1328f2756def">00070</a>   std::string m_title;
<a name="l00071"></a>00071 
<a name="l00074"></a><a class="code" href="classhippodraw_1_1DataSource.html#af0804dacdf17109fce0cdedcfab75f1c">00074</a>   std::vector&lt;std::string&gt; m_labels;
<a name="l00075"></a>00075 
<a name="l00082"></a><a class="code" href="classhippodraw_1_1DataSource.html#a5ee14050d65d7a7b83631acd6018db24">00082</a>   <span class="keywordtype">bool</span> m_is_null;
<a name="l00083"></a>00083 
<a name="l00084"></a>00084 <span class="keyword">protected</span>:
<a name="l00085"></a>00085 
<a name="l00088"></a><a class="code" href="classhippodraw_1_1DataSource.html#abf0ad6ebed92b290c2321dd994aabf19">00088</a>   <span class="keyword">mutable</span> std::vector &lt; double &gt; m_array;
<a name="l00089"></a>00089 
<a name="l00096"></a><a class="code" href="classhippodraw_1_1DataSource.html#a4e73e38e0edb48dacc82de939a94d46b">00096</a>   std::vector &lt; unsigned int &gt; m_shape;
<a name="l00097"></a>00097 
<a name="l00100"></a><a class="code" href="classhippodraw_1_1DataSource.html#ac45a52bd27ca7e33b5b8e49073448560">00100</a>   std::vector &lt; std::string &gt; m_dups;
<a name="l00101"></a>00101 
<a name="l00104"></a>00104   <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> ( <span class="keyword">const</span> std::vector &lt; std::string &gt; &amp; labels );
<a name="l00105"></a>00105 
<a name="l00107"></a>00107   <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> ( <span class="keyword">const</span> std::string &amp; name );
<a name="l00108"></a>00108 
<a name="l00114"></a>00114   <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> ( <span class="keyword">const</span> <span class="keywordtype">char</span> * name );
<a name="l00115"></a>00115 
<a name="l00119"></a>00119   <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> ( <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> &amp; nt);
<a name="l00120"></a>00120 
<a name="l00131"></a>00131   <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> ( <span class="keywordtype">bool</span> dummy );
<a name="l00132"></a>00132 
<a name="l00135"></a>00135   <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> ();
<a name="l00136"></a>00136 
<a name="l00140"></a>00140   <span class="keyword">virtual</span> <span class="keywordtype">void</span> copyPrivate ( <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> &amp; other );
<a name="l00141"></a>00141 
<a name="l00144"></a>00144   <span class="keyword">virtual</span> <span class="keywordtype">void</span> addLabel ( <span class="keyword">const</span> std::string &amp; label );
<a name="l00145"></a>00145 
<a name="l00149"></a>00149   <span class="keywordtype">bool</span> isValidColumn ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l00150"></a>00150 
<a name="l00156"></a>00156   <span class="keyword">virtual</span> <span class="keywordtype">void</span> checkWidth ( <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> * source );
<a name="l00157"></a>00157 
<a name="l00158"></a>00158  <span class="keyword">public</span>:
<a name="l00159"></a>00159 
<a name="l00162"></a>00162   <span class="keyword">virtual</span> ~<a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a>();
<a name="l00163"></a>00163 
<a name="l00167"></a>00167   <span class="keywordtype">bool</span> isNull () <span class="keyword">const</span>;
<a name="l00168"></a>00168 
<a name="l00171"></a>00171   <span class="keywordtype">void</span> setName ( <span class="keyword">const</span> std::string &amp; name );
<a name="l00172"></a>00172 
<a name="l00175"></a>00175   <span class="keyword">const</span> std::string &amp; getName () <span class="keyword">const</span>;
<a name="l00176"></a>00176 
<a name="l00182"></a>00182   <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> columns() <span class="keyword">const</span>;
<a name="l00183"></a>00183 
<a name="l00186"></a>00186   <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> rows () <span class="keyword">const</span> = 0;
<a name="l00187"></a>00187 
<a name="l00190"></a>00190   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> empty () <span class="keyword">const</span> = 0;
<a name="l00191"></a>00191 
<a name="l00194"></a>00194   <span class="keyword">const</span> std::string &amp; title() <span class="keyword">const</span>;
<a name="l00195"></a>00195 
<a name="l00198"></a>00198   <span class="keyword">virtual</span> <span class="keywordtype">void</span> setTitle ( <span class="keyword">const</span> std::string &amp; title );
<a name="l00199"></a>00199 
<a name="l00204"></a>00204   <span class="keywordtype">bool</span> isValidLabel ( <span class="keyword">const</span> std::string &amp; label ) <span class="keyword">const</span>;
<a name="l00205"></a>00205 
<a name="l00212"></a>00212   <span class="keyword">virtual</span> <span class="keywordtype">void</span> throwIfInvalidLabel ( <span class="keyword">const</span> std::string &amp; label ) <span class="keyword">const</span>;
<a name="l00213"></a>00213 
<a name="l00217"></a>00217   <span class="keywordtype">void</span> throwIfInvalidRowSize ( <span class="keyword">const</span> std::vector &lt; double &gt; &amp; row );
<a name="l00218"></a>00218 
<a name="l00225"></a>00225   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> setLabelAt ( <span class="keyword">const</span> std::string &amp; s, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index );
<a name="l00226"></a>00226 
<a name="l00229"></a>00229   <span class="keyword">virtual</span> <span class="keywordtype">void</span> setLabels ( <span class="keyword">const</span> std::vector&lt;std::string&gt; &amp; v );
<a name="l00230"></a>00230 
<a name="l00234"></a>00234   <span class="keyword">virtual</span> <span class="keywordtype">double</span> valueAt ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> row, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span> = 0;
<a name="l00235"></a>00235 
<a name="l00239"></a>00239   <span class="keyword">virtual</span> <span class="keywordtype">double</span> valueAtNoCache ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> row, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span>;
<a name="l00240"></a>00240 
<a name="l00243"></a>00243   <span class="keyword">virtual</span> <span class="keyword">const</span> std::vector &lt; double &gt; &amp;
<a name="l00244"></a>00244   getColumn ( <span class="keyword">const</span> std::string &amp; name ) <span class="keyword">const</span>;
<a name="l00245"></a>00245 
<a name="l00248"></a>00248   <span class="keyword">virtual</span> <span class="keyword">const</span> std::vector &lt; double &gt; &amp; 
<a name="l00249"></a>00249   getColumn ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span>;
<a name="l00250"></a>00250 
<a name="l00253"></a>00253   <span class="keyword">virtual</span> <span class="keyword">const</span> std::vector &lt; double &gt; &amp; getRow ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ) <span class="keyword">const</span> = 0;
<a name="l00254"></a>00254 
<a name="l00257"></a>00257   <span class="keyword">virtual</span> <span class="keyword">const</span> std::vector &lt; std::string &gt; &amp; getLabels () <span class="keyword">const</span>;
<a name="l00258"></a>00258 
<a name="l00263"></a>00263   <span class="keyword">virtual</span> <span class="keyword">const</span> std::string &amp; getLabelAt ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l00264"></a>00264 
<a name="l00273"></a>00273   <span class="keyword">virtual</span> <span class="keywordtype">int</span> indexOf ( <span class="keyword">const</span> std::string &amp; label ) <span class="keyword">const</span>;
<a name="l00274"></a>00274 
<a name="l00281"></a>00281   <span class="keyword">virtual</span> <span class="keywordtype">void</span> setShape ( std::vector &lt; unsigned int &gt; &amp; <a class="code" href="namespacenum__util.html#a8570d9b34e8e9d714823c1b1986764f7">shape</a> );
<a name="l00282"></a>00282 
<a name="l00285"></a>00285   <span class="keyword">virtual</span> <span class="keyword">const</span> std::vector &lt; unsigned int &gt; &amp; getShape () <span class="keyword">const</span>;
<a name="l00286"></a>00286 
<a name="l00294"></a>00294   <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillShape ( std::vector &lt; int &gt; &amp; v,
<a name="l00295"></a>00295                            <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span>;
<a name="l00296"></a>00296 
<a name="l00304"></a>00304   <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillShape ( std::vector &lt; int &gt; &amp; v,
<a name="l00305"></a>00305                            <span class="keyword">const</span> std::string &amp; label ) <span class="keyword">const</span>;
<a name="l00306"></a>00306 
<a name="l00310"></a>00310   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> getRank () <span class="keyword">const</span>;
<a name="l00311"></a>00311 
<a name="l00320"></a>00320   <span class="keyword">virtual</span> <span class="keywordtype">void</span> replaceColumn ( <span class="keyword">const</span> std::string &amp; label,
<a name="l00321"></a>00321                                <span class="keyword">const</span> std::vector &lt; double &gt; &amp; array );
<a name="l00322"></a>00322 
<a name="l00327"></a>00327   <span class="keyword">virtual</span> <span class="keywordtype">void</span> replaceColumn ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index,
<a name="l00328"></a>00328                                <span class="keyword">const</span> std::vector &lt; double &gt; &amp; array );
<a name="l00329"></a>00329 
<a name="l00338"></a>00338   <span class="keyword">virtual</span> <span class="keywordtype">void</span> replaceColumn ( <span class="keyword">const</span> std::string &amp; label,
<a name="l00339"></a>00339                                <span class="keyword">const</span> std::vector &lt; double &gt; &amp; <a class="code" href="namespacenum__util.html#a0c664ca7e08d03a2b3275f4f35efa933">data</a>,
<a name="l00340"></a>00340                                <span class="keyword">const</span> std::vector &lt; intptr_t &gt; &amp; <a class="code" href="namespacenum__util.html#a8570d9b34e8e9d714823c1b1986764f7">shape</a> );
<a name="l00341"></a>00341 
<a name="l00349"></a>00349   <span class="keyword">virtual</span> <span class="keywordtype">int</span> addColumn ( <span class="keyword">const</span> std::string &amp; label,
<a name="l00350"></a>00350                           <span class="keyword">const</span> std::vector &lt; double &gt; &amp; <a class="code" href="namespacenum__util.html#a0c664ca7e08d03a2b3275f4f35efa933">data</a>,
<a name="l00351"></a>00351                           <span class="keyword">const</span> std::vector &lt; intptr_t &gt; &amp; <a class="code" href="namespacenum__util.html#a8570d9b34e8e9d714823c1b1986764f7">shape</a> );
<a name="l00352"></a>00352 
<a name="l00359"></a>00359   <span class="keyword">virtual</span> <span class="keywordtype">int</span> addColumn ( <span class="keyword">const</span> std::string &amp; label,
<a name="l00360"></a>00360                           <span class="keyword">const</span> std::vector &lt; double &gt; &amp; <a class="code" href="namespacenum__util.html#a0c664ca7e08d03a2b3275f4f35efa933">data</a> );
<a name="l00361"></a>00361 
<a name="l00367"></a>00367   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> fillRange ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a>, <a class="code" href="classhippodraw_1_1Range.html" title="Expresses a range of values.">Range</a> &amp; ) <span class="keyword">const</span>;
<a name="l00368"></a>00368 
<a name="l00372"></a>00372   <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> indexOfMaxElement ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l00373"></a>00373 
<a name="l00377"></a>00377   <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> indexOfMinElement ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index ) <span class="keyword">const</span>;
<a name="l00378"></a>00378 
<a name="l00379"></a>00379 
<a name="l00383"></a>00383   <span class="keyword">virtual</span> <span class="keywordtype">double</span> sum ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span>;
<a name="l00384"></a>00384 
<a name="l00389"></a>00389   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> isMultiDimensional ( <span class="keyword">const</span> std::string &amp; <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span>;
<a name="l00390"></a>00390   
<a name="l00395"></a>00395   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> isUseable ( <span class="keyword">const</span> std::string &amp; <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span>;
<a name="l00396"></a>00396 
<a name="l00400"></a>00400   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> setReleventIndex( <span class="keyword">const</span> std::string &amp; <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a>,
<a name="l00401"></a>00401                                  <span class="keyword">const</span> std::vector&lt; unsigned int &gt;&amp; index );
<a name="l00402"></a>00402 
<a name="l00405"></a>00405   <span class="keyword">virtual</span> <span class="keywordtype">void</span> clear () = 0;
<a name="l00406"></a>00406 
<a name="l00410"></a>00410   <span class="keyword">virtual</span> <span class="keywordtype">void</span> reserve ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> count ) = 0;
<a name="l00411"></a>00411 
<a name="l00416"></a>00416   <span class="keyword">virtual</span> <span class="keywordtype">void</span> addRow ( <span class="keyword">const</span> std::vector &lt; double &gt; &amp; row );
<a name="l00417"></a>00417 
<a name="l00421"></a>00421   <span class="keyword">virtual</span> <span class="keywordtype">void</span> eraseRow ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index );
<a name="l00422"></a>00422 
<a name="l00423"></a>00423   <span class="keyword">virtual</span> <span class="keywordtype">double</span> 
<a name="l00424"></a>00424   operator [] (  std::vector &lt; unsigned int &gt; &amp; indices ) <span class="keyword">const</span> = 0;
<a name="l00425"></a>00425 
<a name="l00426"></a>00426 
<a name="l00429"></a>00429   <span class="keyword">const</span> std::vector &lt; std::string &gt; &amp; getDuplicatedLabels () <span class="keyword">const</span>;
<a name="l00430"></a>00430 
<a name="l00437"></a>00437   <span class="keyword">virtual</span> <span class="keywordtype">void</span> append ( <span class="keyword">const</span> <a class="code" href="classhippodraw_1_1DataSource.html" title="Base class for DataSource.">DataSource</a> * source );
<a name="l00438"></a>00438 
<a name="l00444"></a>00444   <span class="keyword">virtual</span> <span class="keywordtype">double</span> * doubleArrayAt ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> row,
<a name="l00445"></a>00445                                    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="namespacehippodraw_1_1DataPoint2DTuple.html#ae78e6e11a40e6dba1bae097358f97d15" title="The column indices for 2 dimension data point tuple.">column</a> ) <span class="keyword">const</span>;
<a name="l00446"></a>00446 
<a name="l00447"></a>00447 
<a name="l00451"></a>00451   <span class="keyword">virtual</span> <span class="keywordtype">void</span> expandIfNeeded( <span class="keyword">const</span> std::vector&lt;std::string&gt; &amp; labels ) <span class="keyword">const</span>;
<a name="l00452"></a>00452 
<a name="l00453"></a>00453 };
<a name="l00454"></a>00454 
<a name="l00455"></a>00455 <span class="keyword">inline</span>
<a name="l00456"></a>00456 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>
<a name="l00457"></a>00457 <a class="code" href="classhippodraw_1_1DataSource.html#a903d6ffef3ddea0d904a5336e231b643" title="Returns the number of columns or data arrays available from this DataSource.">DataSource::</a>
<a name="l00458"></a><a class="code" href="classhippodraw_1_1DataSource.html#a903d6ffef3ddea0d904a5336e231b643">00458</a> <a class="code" href="classhippodraw_1_1DataSource.html#a903d6ffef3ddea0d904a5336e231b643" title="Returns the number of columns or data arrays available from this DataSource.">columns</a> ()<span class="keyword"> const</span>
<a name="l00459"></a>00459 <span class="keyword"></span>{
<a name="l00460"></a>00460   <span class="keywordflow">return</span> static_cast &lt; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> &gt; ( <a class="code" href="classhippodraw_1_1DataSource.html#af0804dacdf17109fce0cdedcfab75f1c" title="The labels of the vectors of the data.">m_labels</a>.size() );
<a name="l00461"></a>00461 }
<a name="l00462"></a>00462 
<a name="l00463"></a>00463 } <span class="comment">// namespace hippodraw</span>
<a name="l00464"></a>00464 
<a name="l00465"></a>00465 <span class="preprocessor">#endif // DataSource_H</span>
</pre></div></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>