Show
Ignore:
Timestamp:
06/24/09 13:38:47 (16 years ago)
Author:
mido
Message:

UI documentation almost finished; UIException redesigned and used instead of UI::ui_error function

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • library/doc/html/classbdm_1_1UI.html

    r385 r396  
    55<link href="doxygen.css" rel="stylesheet" type="text/css"> 
    66</head><body> 
    7 <!-- Generated by Doxygen 1.5.8 --> 
     7<!-- Generated by Doxygen 1.5.9 --> 
    88<script type="text/javascript"> 
    99<!-- 
     
    6969</div> 
    7070<div class="contents"> 
    71 <h1>bdm::UI Class Reference</h1><!-- doxytag: class="bdm::UI" -->This class serves to load and/or save DOMElements into/from files stored on a hard-disk 
     71<h1>bdm::UI Class Reference</h1><!-- doxytag: class="bdm::UI" --><a class="el" href="classbdm_1_1UI.html" title="UI is an abstract class and it is intended for internal purposes only.">UI</a> is an abstract class and it is intended for internal purposes only 
    7272<a href="#_details">More...</a> 
    7373<p> 
    74 <code>#include &lt;<a class="el" href="user__info_8h-source.html">user_info.h</a>&gt;</code> 
     74<code>#include &lt;<a class="el" href="user__info_8h_source.html">user_info.h</a>&gt;</code> 
    7575<p> 
    7676 
     
    7979<tr><td></td></tr> 
    8080<tr><td colspan="2"><br><h2>Classes</h2></td></tr> 
    81 <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><b>Mapped_UI</b></td></tr> 
    82  
    83 <tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI_1_1SettingsResolver.html">SettingsResolver</a></td></tr> 
     81<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><b>MappedUI</b></td></tr> 
    8482 
    8583<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr> 
     84<tr><td colspan="2"><div class="groupHeader">Initialization of classes</div></td></tr> 
     85<tr><td colspan="2"><div class="groupText">The type T has to be a <a class="el" href="classbdm_1_1root.html" title="Root class of BDM objects.">root</a> descendant class <br><br></div></td></tr> 
     86<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="dda27449f8bd19d54db9ccfb2644e908"></a><!-- doxytag: member="bdm::UI::build" ref="dda27449f8bd19d54db9ccfb2644e908" args="(const Setting &amp;element, const string &amp;name)" --> 
     87template&lt;class T &gt; </td></tr> 
     88<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static T *&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#dda27449f8bd19d54db9ccfb2644e908">build</a> (const Setting &amp;element, const string &amp;name)</td></tr> 
     89 
     90<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The new instance of type T* is constructed and initialized with values stored in the Setting element[name]. <br></td></tr> 
    8691<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f0eccc7bbe4b680f3e1cb84b455a1125"></a><!-- doxytag: member="bdm::UI::build" ref="f0eccc7bbe4b680f3e1cb84b455a1125" args="(const Setting &amp;element, const int index)" --> 
    8792template&lt;class T &gt; </td></tr> 
    8893<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static T *&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#f0eccc7bbe4b680f3e1cb84b455a1125">build</a> (const Setting &amp;element, const int index)</td></tr> 
    8994 
    90 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Prototype of a <a class="el" href="classbdm_1_1UI.html" title="This class serves to load and/or save DOMElements into/from files stored on a hard-disk...">UI</a> builder. Return value is by the second argument since it type checking via <code>dynamic_cast</code>. <br></td></tr> 
    91 <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="dda27449f8bd19d54db9ccfb2644e908"></a><!-- doxytag: member="bdm::UI::build" ref="dda27449f8bd19d54db9ccfb2644e908" args="(const Setting &amp;element, const string &amp;name)" --> 
    92 template&lt;class T &gt; </td></tr> 
    93 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static T *&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>build</b> (const Setting &amp;element, const string &amp;name)</td></tr> 
    94  
     95<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The new instance of type T* is constructed and initialized with values stored in the Setting element[index]. <br></td></tr> 
     96<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6e2da6a142fecf5f21e0bb86a7211cb4"></a><!-- doxytag: member="bdm::UI::build" ref="6e2da6a142fecf5f21e0bb86a7211cb4" args="(const Setting &amp;element)" --> 
     97template&lt;class T &gt; </td></tr> 
     98<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static T *&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#6e2da6a142fecf5f21e0bb86a7211cb4">build</a> (const Setting &amp;element)</td></tr> 
     99 
     100<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The new instance of type T* is constructed and initialized with values stored in the Setting element. <br></td></tr> 
     101<tr><td colspan="2"><div class="groupHeader">Initialization of structures</div></td></tr> 
     102<tr><td colspan="2"><div class="groupText">The type T has to be int, double, string, vec, ivec or mat. <br><br></div></td></tr> 
    95103<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="652bfd23f5052e4f1cb317057d74a3e2"></a><!-- doxytag: member="bdm::UI::get" ref="652bfd23f5052e4f1cb317057d74a3e2" args="(T &amp;instance, const Setting &amp;element, const string &amp;name)" --> 
    96104template&lt;class T &gt; </td></tr> 
    97105<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#652bfd23f5052e4f1cb317057d74a3e2">get</a> (T &amp;instance, const Setting &amp;element, const string &amp;name)</td></tr> 
    98106 
    99 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to build a new double matrix. <br></td></tr> 
     107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The existing instance of type T is initialized with values stored in the Setting element[name]. <br></td></tr> 
    100108<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3d04bb3d7dbcf0da0b4d5d3d5b7df51a"></a><!-- doxytag: member="bdm::UI::get" ref="3d04bb3d7dbcf0da0b4d5d3d5b7df51a" args="(T &amp;instance, const Setting &amp;element, const int index)" --> 
    101109template&lt;class T &gt; </td></tr> 
    102110<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#3d04bb3d7dbcf0da0b4d5d3d5b7df51a">get</a> (T &amp;instance, const Setting &amp;element, const int index)</td></tr> 
    103111 
    104 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to build a new double matrix. <br></td></tr> 
     112<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The existing instance of type T is initialized with values stored in the Setting element[index]. <br></td></tr> 
     113<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="25747ac6d0232aa7102dbb316f65ddce"></a><!-- doxytag: member="bdm::UI::get" ref="25747ac6d0232aa7102dbb316f65ddce" args="(T &amp;instance, const Setting &amp;element)" --> 
     114template&lt;class T &gt; </td></tr> 
     115<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#25747ac6d0232aa7102dbb316f65ddce">get</a> (T &amp;instance, const Setting &amp;element)</td></tr> 
     116 
     117<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The existing instance of type T is initialized with values stored in the Setting element directly. <br></td></tr> 
     118<tr><td colspan="2"><div class="groupHeader">Initialization of arrays Array&lt;T&gt;</div></td></tr> 
     119<tr><td colspan="2"><div class="groupText">The type T has to be int, double, string, vec, ivec or mat, or pointer to any <a class="el" href="classbdm_1_1root.html" title="Root class of BDM objects.">root</a> descendant. <br><br></div></td></tr> 
    105120<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="00bb5f2a328d272b0a3ffbda1a902d54"></a><!-- doxytag: member="bdm::UI::get" ref="00bb5f2a328d272b0a3ffbda1a902d54" args="(Array&lt; T &gt; &amp;array_to_load, const Setting &amp;element, const string &amp;name)" --> 
    106121template&lt;class T &gt; </td></tr> 
    107122<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#00bb5f2a328d272b0a3ffbda1a902d54">get</a> (Array&lt; T &gt; &amp;array_to_load, const Setting &amp;element, const string &amp;name)</td></tr> 
    108123 
    109 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to build a new double matrix. <br></td></tr> 
     124<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The existing array of type T is initialized with values stored in the Setting element[name]. <br></td></tr> 
    110125<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b6a224b6aea027e167d3d565b39144e0"></a><!-- doxytag: member="bdm::UI::get" ref="b6a224b6aea027e167d3d565b39144e0" args="(Array&lt; T &gt; &amp;array_to_load, const Setting &amp;element, const int index)" --> 
    111126template&lt;class T &gt; </td></tr> 
    112127<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#b6a224b6aea027e167d3d565b39144e0">get</a> (Array&lt; T &gt; &amp;array_to_load, const Setting &amp;element, const int index)</td></tr> 
    113128 
    114 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to build a new double matrix. <br></td></tr> 
     129<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The existing array of type T is initialized with values stored in the Setting element[index]. <br></td></tr> 
     130<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4fc5efdc58e4e184218b6d5beeb5ceab"></a><!-- doxytag: member="bdm::UI::get" ref="4fc5efdc58e4e184218b6d5beeb5ceab" args="(Array&lt; T &gt; &amp;array_to_load, const Setting &amp;element)" --> 
     131template&lt;class T &gt; </td></tr> 
     132<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#4fc5efdc58e4e184218b6d5beeb5ceab">get</a> (Array&lt; T &gt; &amp;array_to_load, const Setting &amp;element)</td></tr> 
     133 
     134<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The existing array of type T is initialized with values stored in the Setting element. <br></td></tr> 
     135<tr><td colspan="2"><div class="groupHeader">Serialization of objects and structures into a new Setting</div></td></tr> 
     136<tr><td colspan="2"><div class="groupText">The new child Setting can be accessed either by its name - if some name is passed as a parameter - or by its integer index. In that case, the new element is added at the very end of the current list of child Settings. <br><br></div></td></tr> 
    115137<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c83987949e6a9e79d6e093797ab7d917"></a><!-- doxytag: member="bdm::UI::save" ref="c83987949e6a9e79d6e093797ab7d917" args="(const T *const instance, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
    116138template&lt;class T &gt; </td></tr> 
    117 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>save</b> (const T *const instance, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
    118  
     139<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#c83987949e6a9e79d6e093797ab7d917">save</a> (const T *const instance, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
     140 
     141<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A <a class="el" href="classbdm_1_1root.html" title="Root class of BDM objects.">root</a> descendant instance is stored in the new child Setting appended to the passed element. <br></td></tr> 
    119142<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4514f93573a9d9126c506d176fbd3163"></a><!-- doxytag: member="bdm::UI::save" ref="4514f93573a9d9126c506d176fbd3163" args="(const Array&lt; T &gt; &amp;array_to_save, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
    120143template&lt;class T &gt; </td></tr> 
    121144<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#4514f93573a9d9126c506d176fbd3163">save</a> (const Array&lt; T &gt; &amp;array_to_save, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
    122145 
    123 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to save a double vec. <br></td></tr> 
     146<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An Array&lt;T&gt; instance is stored in the new child Setting appended to the passed element. <br></td></tr> 
    124147<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="42e908a4f1b09d701be69c8784a02df7"></a><!-- doxytag: member="bdm::UI::save" ref="42e908a4f1b09d701be69c8784a02df7" args="(const mat &amp;matrix, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
    125148static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#42e908a4f1b09d701be69c8784a02df7">save</a> (const mat &amp;matrix, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
    126149 
    127 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to save a double matrix. <br></td></tr> 
    128 <tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#cc2afb61a772d8571f7bb19065da4695">save</a> (const ivec &amp;vec, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
    129  
    130 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to save a double vec.  <a href="#cc2afb61a772d8571f7bb19065da4695"></a><br></td></tr> 
    131 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7d4028226c09da8bdf442c1e183d564e"></a><!-- doxytag: member="bdm::UI::save" ref="7d4028226c09da8bdf442c1e183d564e" args="(const vec &amp;vector, Setting &amp;element, const string &amp;name)" --> 
    132 static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#7d4028226c09da8bdf442c1e183d564e">save</a> (const vec &amp;vector, Setting &amp;element, const string &amp;name)</td></tr> 
    133  
    134 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This methods tries to save a double vector. <br></td></tr> 
     150<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A matrix(of type mat) is stored in the new child Setting appended to the passed element. <br></td></tr> 
     151<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cc2afb61a772d8571f7bb19065da4695"></a><!-- doxytag: member="bdm::UI::save" ref="cc2afb61a772d8571f7bb19065da4695" args="(const ivec &amp;vec, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
     152static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#cc2afb61a772d8571f7bb19065da4695">save</a> (const ivec &amp;vec, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
     153 
     154<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An integer vector (of type ivec) is stored in the new child Setting appended to the passed element. <br></td></tr> 
     155<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c3b1846b2f29fb70e6a9d789daab808"></a><!-- doxytag: member="bdm::UI::save" ref="7c3b1846b2f29fb70e6a9d789daab808" args="(const vec &amp;vector, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
     156static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#7c3b1846b2f29fb70e6a9d789daab808">save</a> (const vec &amp;vector, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
     157 
     158<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A double vector (of type vec) is stored in the new child Setting appended to the passed element. <br></td></tr> 
     159<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c822efd5f8550480d0756352d430c05"></a><!-- doxytag: member="bdm::UI::save" ref="7c822efd5f8550480d0756352d430c05" args="(const string &amp;str, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
     160static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#7c822efd5f8550480d0756352d430c05">save</a> (const string &amp;<a class="el" href="classbdm_1_1str.html">str</a>, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
     161 
     162<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A string is stored in the new child Setting appended to the passed element. <br></td></tr> 
     163<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8cd58216bcd732856846d18503c92d48"></a><!-- doxytag: member="bdm::UI::save" ref="8cd58216bcd732856846d18503c92d48" args="(const int &amp;integer, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
     164static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#8cd58216bcd732856846d18503c92d48">save</a> (const int &amp;integer, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
     165 
     166<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An integer is stored in the new child Setting appended to the passed element. <br></td></tr> 
     167<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e943ed7b3e65c9fd2842670fa8cf4a8"></a><!-- doxytag: member="bdm::UI::save" ref="4e943ed7b3e65c9fd2842670fa8cf4a8" args="(const double &amp;real, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
     168static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#4e943ed7b3e65c9fd2842670fa8cf4a8">save</a> (const double &amp;real, Setting &amp;element, const string &amp;name=&quot;&quot;)</td></tr> 
     169 
     170<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A double is stored in the new child Setting appended to the passed element. <br></td></tr> 
    135171<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> 
    136 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d60234c0673f345424329894b9b0cef8"></a><!-- doxytag: member="bdm::UI::UI" ref="d60234c0673f345424329894b9b0cef8" args="(const string &amp;class_name, const type_info *const class_type_info)" --> 
    137 &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#d60234c0673f345424329894b9b0cef8">UI</a> (const string &amp;class_name, const type_info *const class_type_info)</td></tr> 
    138  
    139 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">default constructor <br></td></tr> 
    140 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="95a5a0e160bf21357f99a9291b0b5e88"></a><!-- doxytag: member="bdm::UI::~UI" ref="95a5a0e160bf21357f99a9291b0b5e88" args="()" --> 
    141 virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#95a5a0e160bf21357f99a9291b0b5e88">~UI</a> ()</td></tr> 
    142  
    143 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Virtual destructor for future use;. <br></td></tr> 
     172<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1UI.html#d60234c0673f345424329894b9b0cef8">UI</a> (const string &amp;class_name, const type_info *const class_type_info)</td></tr> 
     173 
     174<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor for internal use only, see.  <a href="#d60234c0673f345424329894b9b0cef8"></a><br></td></tr> 
    144175</table> 
    145176<hr><a name="_details"></a><h2>Detailed Description</h2> 
    146 This class serves to load and/or save DOMElements into/from files stored on a hard-disk.  
    147 <p> 
    148 Firstly, you associate new RootElement instance with some filename during a time of its construtcion. Then, you save some object into the new RootElement instance, and save it into the file this way: <div class="fragment"><pre class="fragment">        CAudi audi; 
    149         RootElement root(<span class="stringliteral">"cars.xml"</span>); 
    150         UserInfo::save( audi, root, <span class="stringliteral">"TT"</span>); 
    151         root.save(); 
    152 </pre></div><p> 
    153 In the other way round, when loading object from a XML file, the appropriate code looks like this: <div class="fragment"><pre class="fragment">        RootElement root(<span class="stringliteral">"cars.xml"</span>); 
    154         root.load(); 
    155         UserInfo::build&lt;T&gt;(root,<span class="stringliteral">"TT"</span>); 
    156 </pre></div><p> 
    157 UserInfo is an abstract is for internal purposes only. Use CompoundUserInfo&lt;T&gt; or Particular_UI&lt;T&gt; instead. The raison d'etre of this class is to allow pointers to its templated descendants.Also, the main functions of the whole UserInfo library are included within this class, see static methods 'build' and 'save'. <hr><h2>Member Function Documentation</h2> 
    158 <a class="anchor" name="cc2afb61a772d8571f7bb19065da4695"></a><!-- doxytag: member="bdm::UI::save" ref="cc2afb61a772d8571f7bb19065da4695" args="(const ivec &amp;vec, Setting &amp;element, const string &amp;name=&quot;&quot;)" --> 
     177<a class="el" href="classbdm_1_1UI.html" title="UI is an abstract class and it is intended for internal purposes only.">UI</a> is an abstract class and it is intended for internal purposes only.  
     178<p> 
     179This class exists mainly to allow pointers to its templated descendant ParticularUI&lt;T&gt;. Next, it collects all the auxiliary functions useful to prepare some concret user-infos, see static methods 'build', 'get' and 'save'. <hr><h2>Constructor &amp; Destructor Documentation</h2> 
     180<a class="anchor" name="d60234c0673f345424329894b9b0cef8"></a><!-- doxytag: member="bdm::UI::UI" ref="d60234c0673f345424329894b9b0cef8" args="(const string &amp;class_name, const type_info *const class_type_info)" --> 
    159181<div class="memitem"> 
    160182<div class="memproto"> 
    161183      <table class="memname"> 
    162184        <tr> 
    163           <td class="memname">void bdm::UI::save           </td> 
     185          <td class="memname">bdm::UI::UI           </td> 
    164186          <td>(</td> 
    165           <td class="paramtype">const ivec &amp;&nbsp;</td> 
    166           <td class="paramname"> <em>vec</em>, </td> 
     187          <td class="paramtype">const string &amp;&nbsp;</td> 
     188          <td class="paramname"> <em>class_name</em>, </td> 
    167189        </tr> 
    168190        <tr> 
    169191          <td class="paramkey"></td> 
    170192          <td></td> 
    171           <td class="paramtype">Setting &amp;&nbsp;</td> 
    172           <td class="paramname"> <em>element</em>, </td> 
    173         </tr> 
    174         <tr> 
    175           <td class="paramkey"></td> 
    176           <td></td> 
    177           <td class="paramtype">const string &amp;&nbsp;</td> 
    178           <td class="paramname"> <em>name</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td> 
     193          <td class="paramtype">const type_info *const &nbsp;</td> 
     194          <td class="paramname"> <em>class_type_info</em></td><td>&nbsp;</td> 
    179195        </tr> 
    180196        <tr> 
    181197          <td></td> 
    182198          <td>)</td> 
    183           <td></td><td></td><td><code> [static]</code></td> 
     199          <td></td><td></td><td><code> [inline, protected]</code></td> 
    184200        </tr> 
    185201      </table> 
     
    188204 
    189205<p> 
    190 This methods tries to save a double vec.  
    191 <p> 
    192 This methods tries to save a integer vector.  
     206Default constructor for internal use only, see.  
     207<p> 
     208<dl class="see" compact><dt><b>See also:</b></dt><dd>ParticularUI&lt;T&gt; </dd></dl> 
     209 
    193210</div> 
    194211</div><p> 
    195212<hr>The documentation for this class was generated from the following files:<ul> 
    196 <li><a class="el" href="user__info_8h-source.html">user_info.h</a><li>user_info.cpp</ul> 
    197 </div> 
    198 <hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 17 14:13:29 2009 for mixpp by&nbsp; 
     213<li><a class="el" href="user__info_8h_source.html">user_info.h</a><li>user_info.cpp</ul> 
     214</div> 
     215<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 24 13:35:49 2009 for mixpp by&nbsp; 
    199216<a href="http://www.doxygen.org/index.html"> 
    200 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address> 
     217<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address> 
    201218</body> 
    202219</html>