root/library/doc/html/classbdm_1_1dirfilelog.html @ 656

Revision 656, 19.8 kB (checked in by smidl, 15 years ago)

doc

Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5<title>mixpp: bdm::dirfilelog Class Reference</title>
6<link href="tabs.css" rel="stylesheet" type="text/css"/>
7<link href="doxygen.css" rel="stylesheet" type="text/css"/>
8</head>
9<body>
10<!-- Generated by Doxygen 1.6.1 -->
11<script type="text/javascript">
12<!--
13function changeDisplayState (e){
14  var num=this.id.replace(/[^[0-9]/g,'');
15  var button=this.firstChild;
16  var sectionDiv=document.getElementById('dynsection'+num);
17  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
18    sectionDiv.style.display='block';
19    button.src='open.gif';
20  }else{
21    sectionDiv.style.display='none';
22    button.src='closed.gif';
23  }
24}
25function initDynSections(){
26  var divs=document.getElementsByTagName('div');
27  var sectionCounter=1;
28  for(var i=0;i<divs.length-1;i++){
29    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
30      var header=divs[i];
31      var section=divs[i+1];
32      var button=header.firstChild;
33      if (button!='IMG'){
34        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
35        button=document.createElement('img');
36        divs[i].insertBefore(button,divs[i].firstChild);
37      }
38      header.style.cursor='pointer';
39      header.onclick=changeDisplayState;
40      header.id='dynheader'+sectionCounter;
41      button.src='closed.gif';
42      section.id='dynsection'+sectionCounter;
43      section.style.display='none';
44      section.style.marginLeft='14px';
45      sectionCounter++;
46    }
47  }
48}
49window.onload = initDynSections;
50-->
51</script>
52<div class="navigation" id="top">
53  <div class="tabs">
54    <ul>
55      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
56      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
57      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
58      <li><a href="files.html"><span>Files</span></a></li>
59    </ul>
60  </div>
61  <div class="tabs">
62    <ul>
63      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
64      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
65      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
66      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
67    </ul>
68  </div>
69  <div class="navpath"><b>bdm</b>::<a class="el" href="classbdm_1_1dirfilelog.html">dirfilelog</a>
70  </div>
71</div>
72<div class="contents">
73<h1>bdm::dirfilelog Class Reference</h1><!-- doxytag: class="bdm::dirfilelog" --><!-- doxytag: inherits="bdm::memlog" -->
74<p>Logging into dirfile with buffer in memory. 
75<a href="#_details">More...</a></p>
76<hr/><a name="_details"></a><h2>Detailed Description</h2>
77<p>Logging into dirfile with buffer in memory. </p>
78<p>Dirfile is a special format used by the kst program. See documentation of kst for description.</p>
79<p>This format is used to store scalars, hence multivariate RVs must be separated. </p>
80
81<p><code>#include &lt;<a class="el" href="loggers_8h_source.html">loggers.h</a>&gt;</code></p>
82
83<p><a href="classbdm_1_1dirfilelog-members.html">List of all members.</a></p>
84<table border="0" cellpadding="0" cellspacing="0">
85<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
86<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#a15e1c0228c8ecefb372b364742748dff">dirfilelog</a> (string dirname0, int maxlen0)</td></tr>
87<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor.  <a href="#a15e1c0228c8ecefb372b364742748dff"></a><br/></td></tr>
88<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78a3bd8a83cbd6299e279544bc81493d"></a><!-- doxytag: member="bdm::dirfilelog::init" ref="a78a3bd8a83cbd6299e279544bc81493d" args="()" -->
89void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#a78a3bd8a83cbd6299e279544bc81493d">init</a> ()</td></tr>
90<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize storage. <br/></td></tr>
91<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af79660645d09aa2d8bdd18923a721662"></a><!-- doxytag: member="bdm::dirfilelog::step" ref="af79660645d09aa2d8bdd18923a721662" args="()" -->
92void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#af79660645d09aa2d8bdd18923a721662">step</a> ()</td></tr>
93<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shifts storage position for another time step. <br/></td></tr>
94<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a521d7ba159f97a0182392df27953804f"></a><!-- doxytag: member="bdm::dirfilelog::finalize" ref="a521d7ba159f97a0182392df27953804f" args="()" -->
95void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#a521d7ba159f97a0182392df27953804f">finalize</a> ()</td></tr>
96<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Finalize storing information. <br/></td></tr>
97<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#af595c0df25f5fa5d8c27ea1e375d9c51">write_buffers</a> (int Len)</td></tr>
98<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Write memory storage to disk.  <a href="#af595c0df25f5fa5d8c27ea1e375d9c51"></a><br/></td></tr>
99<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#aa32de0f314a30392d69f07458643514e">from_setting</a> (const Setting &amp;set)</td></tr>
100<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classbdm_1_1UI.html" title="UI is an abstract class which collects all the auxiliary functions useful to prepare...">UI</a> for <a class="el" href="classbdm_1_1dirfilelog.html" title="Logging into dirfile with buffer in memory.">dirfilelog</a> (Kst file format).  <a href="#aa32de0f314a30392d69f07458643514e"></a><br/></td></tr>
101<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a364e58c5d7058776c2a9cfa7d58dad6d"></a><!-- doxytag: member="bdm::dirfilelog::logit" ref="a364e58c5d7058776c2a9cfa7d58dad6d" args="(int id, const vec &amp;v)" -->
102void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1memlog.html#a364e58c5d7058776c2a9cfa7d58dad6d">logit</a> (int id, const vec &amp;v)</td></tr>
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">log this vector <br/></td></tr>
104<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b57dbd3dff49a98c6ce8fccccb170af"></a><!-- doxytag: member="bdm::dirfilelog::logit" ref="a2b57dbd3dff49a98c6ce8fccccb170af" args="(int id, const double &amp;d)" -->
105void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1memlog.html#a2b57dbd3dff49a98c6ce8fccccb170af">logit</a> (int id, const double &amp;d)</td></tr>
106<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">log this double <br/></td></tr>
107<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a74b7a3d889607391594279112aef1f"></a><!-- doxytag: member="bdm::dirfilelog::itsave" ref="a6a74b7a3d889607391594279112aef1f" args="(const char *fname)" -->
108void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1memlog.html#a6a74b7a3d889607391594279112aef1f">itsave</a> (const char *fname)</td></tr>
109<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Save values into an itfile named after <code>fname</code>. <br/></td></tr>
110<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47aa3b098a81d02a8ffaea2c9fa09ac7"></a><!-- doxytag: member="bdm::dirfilelog::add" ref="a47aa3b098a81d02a8ffaea2c9fa09ac7" args="(const RV &amp;rv, string prefix=&quot;&quot;)" -->
111virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1logger.html#a47aa3b098a81d02a8ffaea2c9fa09ac7">add</a> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &amp;rv, string prefix=&quot;&quot;)</td></tr>
112<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns an identifier which will be later needed for calling the <code><a class="el" href="classbdm_1_1logger.html#ae30f695619931b3c372ab280e452d309" title="log this vector">logit()</a></code> function For empty <a class="el" href="classbdm_1_1RV.html" title="Class representing variables, most often random variables.">RV</a> it returns -1, this entry will be ignored by <code><a class="el" href="classbdm_1_1logger.html#ae30f695619931b3c372ab280e452d309" title="log this vector">logit()</a></code>. <br/></td></tr>
113<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf0e6941ba5919cae1bc530e2181b109"></a><!-- doxytag: member="bdm::dirfilelog::to_string" ref="aaf0e6941ba5919cae1bc530e2181b109" args="()" -->
114virtual string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#aaf0e6941ba5919cae1bc530e2181b109">to_string</a> ()</td></tr>
115<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns a basic info about the current instance. <br/></td></tr>
116<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67d954d255ede776eade7334d4895790"></a><!-- doxytag: member="bdm::dirfilelog::to_setting" ref="a67d954d255ede776eade7334d4895790" args="(Setting &amp;set) const " -->
117virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#a67d954d255ede776eade7334d4895790">to_setting</a> (Setting &amp;set) const </td></tr>
118<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method save all the instance properties into the Setting structure. <br/></td></tr>
119<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c314bd6d6dacb8ba78ea5eb88fd9516"></a><!-- doxytag: member="bdm::dirfilelog::validate" ref="a1c314bd6d6dacb8ba78ea5eb88fd9516" args="()" -->
120virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#a1c314bd6d6dacb8ba78ea5eb88fd9516">validate</a> ()</td></tr>
121<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method TODO. <br/></td></tr>
122<tr><td colspan="2"><h2>Protected Attributes</h2></td></tr>
123<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a985eb02770f01e25cdceff32ff53a9c5"></a><!-- doxytag: member="bdm::dirfilelog::dirname" ref="a985eb02770f01e25cdceff32ff53a9c5" args="" -->
124string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#a985eb02770f01e25cdceff32ff53a9c5">dirname</a></td></tr>
125<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">name of the directory <br/></td></tr>
126<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7805040fe1ffa2a048c33980bc995793"></a><!-- doxytag: member="bdm::dirfilelog::scalarnames" ref="a7805040fe1ffa2a048c33980bc995793" args="" -->
127Array&lt; string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1dirfilelog.html#a7805040fe1ffa2a048c33980bc995793">scalarnames</a></td></tr>
128<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Automatically generated. <br/></td></tr>
129<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa690ebd91430b5973855c9b4c9cf1b1d"></a><!-- doxytag: member="bdm::dirfilelog::maxlen" ref="aa690ebd91430b5973855c9b4c9cf1b1d" args="" -->
130int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1memlog.html#aa690ebd91430b5973855c9b4c9cf1b1d">maxlen</a></td></tr>
131<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum length of vectors stored in memory. <br/></td></tr>
132<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70cec1d3549a82796ad7b6f0d07a4570"></a><!-- doxytag: member="bdm::dirfilelog::ind" ref="a70cec1d3549a82796ad7b6f0d07a4570" args="" -->
133int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1memlog.html#a70cec1d3549a82796ad7b6f0d07a4570">ind</a></td></tr>
134<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Currect record to be written. <br/></td></tr>
135<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1fed143162f2de6ef1c1b6557964f24e"></a><!-- doxytag: member="bdm::dirfilelog::vectors" ref="a1fed143162f2de6ef1c1b6557964f24e" args="" -->
136Array&lt; mat &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1memlog.html#a1fed143162f2de6ef1c1b6557964f24e">vectors</a></td></tr>
137<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Storage. <br/></td></tr>
138<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a11fdf8ffca0f509ff637b0c3ac161c1f"></a><!-- doxytag: member="bdm::dirfilelog::itfilename" ref="a11fdf8ffca0f509ff637b0c3ac161c1f" args="" -->
139string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1memlog.html#a11fdf8ffca0f509ff637b0c3ac161c1f">itfilename</a></td></tr>
140<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">name of it file to save results <br/></td></tr>
141<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac54566a4554089443a20b2a49ed1a61f"></a><!-- doxytag: member="bdm::dirfilelog::entries" ref="ac54566a4554089443a20b2a49ed1a61f" args="" -->
142Array&lt; <a class="el" href="classbdm_1_1RV.html">RV</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1logger.html#ac54566a4554089443a20b2a49ed1a61f">entries</a></td></tr>
143<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">RVs of all logged variables. <br/></td></tr>
144<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68ca1f05cf3d414ba0f39211977b8d02"></a><!-- doxytag: member="bdm::dirfilelog::names" ref="a68ca1f05cf3d414ba0f39211977b8d02" args="" -->
145Array&lt; string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1logger.html#a68ca1f05cf3d414ba0f39211977b8d02">names</a></td></tr>
146<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Names of logged quantities, e.g. names of algorithm variants. <br/></td></tr>
147</table>
148<hr/><h2>Constructor &amp; Destructor Documentation</h2>
149<a class="anchor" id="a15e1c0228c8ecefb372b364742748dff"></a><!-- doxytag: member="bdm::dirfilelog::dirfilelog" ref="a15e1c0228c8ecefb372b364742748dff" args="(string dirname0, int maxlen0)" -->
150<div class="memitem">
151<div class="memproto">
152      <table class="memname">
153        <tr>
154          <td class="memname">bdm::dirfilelog::dirfilelog </td>
155          <td>(</td>
156          <td class="paramtype">string&nbsp;</td>
157          <td class="paramname"> <em>dirname0</em>, </td>
158        </tr>
159        <tr>
160          <td class="paramkey"></td>
161          <td></td>
162          <td class="paramtype">int&nbsp;</td>
163          <td class="paramname"> <em>maxlen0</em></td><td>&nbsp;</td>
164        </tr>
165        <tr>
166          <td></td>
167          <td>)</td>
168          <td></td><td></td><td><code> [inline]</code></td>
169        </tr>
170      </table>
171</div>
172<div class="memdoc">
173
174<p>Default constructor. </p>
175<dl><dt><b>Parameters:</b></dt><dd>
176  <table border="0" cellspacing="2" cellpadding="0">
177    <tr><td valign="top"></td><td valign="top"><em>dirname0</em>&nbsp;</td><td>name of the directory in which to store the results </td></tr>
178    <tr><td valign="top"></td><td valign="top"><em>maxlen0</em>&nbsp;</td><td>length of the memory buffers, when full the buffers will be dumped to HDD and returned to the beginning. </td></tr>
179  </table>
180  </dd>
181</dl>
182
183</div>
184</div>
185<hr/><h2>Member Function Documentation</h2>
186<a class="anchor" id="aa32de0f314a30392d69f07458643514e"></a><!-- doxytag: member="bdm::dirfilelog::from_setting" ref="aa32de0f314a30392d69f07458643514e" args="(const Setting &amp;set)" -->
187<div class="memitem">
188<div class="memproto">
189      <table class="memname">
190        <tr>
191          <td class="memname">void bdm::dirfilelog::from_setting </td>
192          <td>(</td>
193          <td class="paramtype">const Setting &amp;&nbsp;</td>
194          <td class="paramname"> <em>set</em></td>
195          <td>&nbsp;)&nbsp;</td>
196          <td><code> [virtual]</code></td>
197        </tr>
198      </table>
199</div>
200<div class="memdoc">
201
202<p><a class="el" href="classbdm_1_1UI.html" title="UI is an abstract class which collects all the auxiliary functions useful to prepare...">UI</a> for <a class="el" href="classbdm_1_1dirfilelog.html" title="Logging into dirfile with buffer in memory.">dirfilelog</a> (Kst file format). </p>
203<div class="fragment"><pre class="fragment">        <a class="code" href="classbdm_1_1logger.html#af9c2fe7db5ddbda0098a4a5bd2c29fbf" title="Default constructor.">logger</a> = {
204                <span class="keyword">class </span>= &quot;<a class="code" href="classbdm_1_1dirfilelog.html#a15e1c0228c8ecefb372b364742748dff" title="Default constructor.">dirfilelog</a>&quot;;
205                <a class="code" href="classbdm_1_1dirfilelog.html#a985eb02770f01e25cdceff32ff53a9c5" title="name of the directory">dirname</a> = <span class="stringliteral">&quot;directory_for_files&quot;</span>; <span class="comment">// resulting files will be stored there</span>
206                <a class="code" href="classbdm_1_1memlog.html#aa690ebd91430b5973855c9b4c9cf1b1d" title="Maximum length of vectors stored in memory.">maxlen</a> = 100;                    <span class="comment">// size of memory buffer, when full results are written to disk</span>
207        }
208</pre></div> 
209<p>Reimplemented from <a class="el" href="classbdm_1_1memlog.html#a7352b474bc54c35ab7c9297c5b958629">bdm::memlog</a>.</p>
210
211<p>References <a class="el" href="loggers_8h_source.html#l00151">dirname</a>, <a class="el" href="loggers_8h_source.html#l00029">bdm::memlog::maxlen</a>, and <a class="el" href="loggers_8h_source.html#l00153">scalarnames</a>.</p>
212
213</div>
214</div>
215<a class="anchor" id="af595c0df25f5fa5d8c27ea1e375d9c51"></a><!-- doxytag: member="bdm::dirfilelog::write_buffers" ref="af595c0df25f5fa5d8c27ea1e375d9c51" args="(int Len)" -->
216<div class="memitem">
217<div class="memproto">
218      <table class="memname">
219        <tr>
220          <td class="memname">void bdm::dirfilelog::write_buffers </td>
221          <td>(</td>
222          <td class="paramtype">int&nbsp;</td>
223          <td class="paramname"> <em>Len</em></td>
224          <td>&nbsp;)&nbsp;</td>
225          <td></td>
226        </tr>
227      </table>
228</div>
229<div class="memdoc">
230
231<p>Write memory storage to disk. </p>
232<dl><dt><b>Parameters:</b></dt><dd>
233  <table border="0" cellspacing="2" cellpadding="0">
234    <tr><td valign="top"></td><td valign="top"><em>Len</em>&nbsp;</td><td>length of buffer to be written, if 0 the file is truncated at 0. </td></tr>
235  </table>
236  </dd>
237</dl>
238
239<p>References <a class="el" href="bdmerror_8h_source.html#l00047">bdm_assert_debug</a>, <a class="el" href="loggers_8h_source.html#l00151">dirname</a>, <a class="el" href="bdmbase_8h_source.html#l00852">bdm::logger::entries</a>, <a class="el" href="loggers_8h_source.html#l00029">bdm::memlog::maxlen</a>, <a class="el" href="loggers_8h_source.html#l00153">scalarnames</a>, and <a class="el" href="loggers_8h_source.html#l00033">bdm::memlog::vectors</a>.</p>
240
241<p>Referenced by <a class="el" href="loggers_8cpp_source.html#l00169">finalize()</a>, <a class="el" href="loggers_8cpp_source.html#l00055">init()</a>, and <a class="el" href="loggers_8cpp_source.html#l00159">step()</a>.</p>
242
243</div>
244</div>
245<hr/>The documentation for this class was generated from the following files:<ul>
246<li><a class="el" href="loggers_8h_source.html">loggers.h</a></li>
247<li>loggers.cpp</li>
248</ul>
249</div>
250<hr size="1"/><address style="text-align: right;"><small>Generated on Mon Oct 12 19:37:21 2009 for mixpp by&nbsp;
251<a href="http://www.doxygen.org/index.html">
252<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
253</body>
254</html>
Note: See TracBrowser for help on using the browser.