Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 54cac1c2268db633d66eeff1b4faa585 > files > 361

frepple-doc-0.8.1-3.fc15.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>C++ API frePPLe: frepple::utils::HasName&lt; T &gt; Class Template Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="../styles.css" rel="stylesheet"  type="text/css">
</head>
<body>
<div id="container">

<div id="menubar"> 
<div id="logo" align="center">
<br/><img src='../frepple.bmp' alt="frepple" /><br/>
<a href='http://www.frepple.com/'>
<strong>a Free<br/>Production Planning<br/>Library</strong>
</a>
</div>
<div id="menu">
<br/>
<h3><a href='../Main/HomePage.html'>Main</a></h3>
<h3><a href='../UI/Main.html'>User Manual</a></h3>
<h3><a href='../Tutorial/Main.html'>Tutorial</a></h3>
<h3><a href='../Frepple/Main.html'>Reference Manual</a></h3>
<h3><a href='../Main/FAQ.html'>FAQ</a></h3>
<h3><a href='index.html'>C++ API</a></h3>
<br/>
</div>  
</div>

<div id="content">
<br/>
<!-- Generated by Doxygen 1.6.1 -->
<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="a00256.html">frepple</a>::<a class="el" href="a00257.html">utils</a>::<a class="el" href="a00085.html">HasName</a>
  </div>
</div>
<div class="contents">
<h1>frepple::utils::HasName&lt; T &gt; Class Template Reference</h1><!-- doxytag: class="frepple::utils::HasName" --><!-- doxytag: inherits="frepple::utils::NonCopyable,frepple::utils::Tree::TreeNode,frepple::utils::Object" -->
<p>Base class for objects using a string as their primary key.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00252_source.html">utils.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for frepple::utils::HasName&lt; T &gt;:</div>
<div class="dynsection">
<div class="center"><img src="a00592.png" border="0" usemap="#frepple_1_1utils_1_1_has_name_3_01_t_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="frepple_1_1utils_1_1_has_name_3_01_t_01_4_inherit__map" id="frepple_1_1utils_1_1_has_name_3_01_t_01_4_inherit__map">
<area shape="rect" id="node11" href="a00083.html" title="This is a base class for the main objects." alt="" coords="195,238,403,266"/>
<area shape="rect" id="node2" href="a00119.html" title="Class NonCopyable is a base class. Derive your own class from it when you want to..." alt="" coords="5,83,181,111"/>
<area shape="rect" id="node4" href="a00182.html" title="This class represents a node in the tree." alt="" coords="205,83,392,111"/>
<area shape="rect" id="node6" href="a00120.html" title="Object is the abstract base class for the main entities." alt="" coords="416,83,552,111"/>
<area shape="rect" id="node8" href="a00151.html" title="This is a base class for all Python extension types." alt="" coords="371,6,597,34"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="a00593.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00094.html">iterator</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class models a STL-like <a class="el" href="a00094.html" title="This class models a STL-like iterator that allows us to iterate over the named entities...">iterator</a> that allows us to iterate over the named entities in a simple and safe way.  <a href="a00094.html#_details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a1dd5c411d61d9ed47104058f948c9f44">compare</a> (const PyObject *other) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a431f09e6eaacebca17532dcf212fe4ac">endElement</a> (<a class="el" href="a00186.html">XMLInput</a> &amp;pIn, const <a class="el" href="a00002.html">Attribute</a> &amp;pAttr, const <a class="el" href="a00047.html">DataElement</a> &amp;pElement)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a1d5482aa038cbf9516a4c9eda0949ac7">HasName</a> (const char *n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a9edd00f5d9a00c005914bbb227ff2846">HasName</a> (const string &amp;n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a97d855d8c9bc9774da9cd8905e242dde">setName</a> (const string &amp;newname)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#aab52641207b1b912edea8a3e1d0cb08b">str</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a1f5fd13addab69245e351062430e73c8">~HasName</a> ()</td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static T *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#aca831abacc00ce1a580c92977645ee91">add</a> (T *t, T *hint)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static T *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a23fd83e323843432f5eface12860d715">add</a> (T *t)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static T *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a63b0e8c75aecc6fde9f4053ece52fde0">add</a> (const string &amp;k, const <a class="el" href="a00115.html">MetaClass</a> &amp;cls)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="a00094.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a1926a798edd9c04bc37e596936003cd6">begin</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a73371df3a83f5d8dcec7392f5e1aa83b">clear</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a5514c78c650d5d2cc5dadc72869259fc">empty</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="a00094.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#abb9d04973550ac71037718511358f2ff">end</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static T *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#aad19dfc63a16f3fb30f7bda2e00f3cdc">find</a> (const string &amp;k)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static T *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#ade245d7c33eb12b46f2f538fa90e3fee">findLowerBound</a> (const string &amp;k, bool *f=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="a00120.html">Object</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#ac14340cc8781e6f2b7235d50a1d17914">reader</a> (const <a class="el" href="a00115.html">MetaClass</a> *cat, const <a class="el" href="a00003.html">AttributeList</a> &amp;in)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a942c27efb3a90dba22215a6e4287d8e4">size</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#acdcda2efe85d50aaf3e6329079f99c06">verify</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00085.html#a1071369052edea444a06baa35d7e991e">writer</a> (const <a class="el" href="a00114.html">MetaCategory</a> *c, <a class="el" href="a00189.html">XMLOutput</a> *o)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class T&gt;<br/>
 class frepple::utils::HasName&lt; T &gt;</h3>

<p>Base class for objects using a string as their primary key. </p>
<p>Instances of this class have the following properties:</p>
<ul>
<li>Have a unique name.</li>
<li>A hashtable (keyed on the name) is maintained as a container with all active instances. </li>
</ul>

<p>Definition at line <a class="el" href="a00252_source.html#l04496">4496</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a9edd00f5d9a00c005914bbb227ff2846"></a><!-- doxytag: member="frepple::utils::HasName::HasName" ref="a9edd00f5d9a00c005914bbb227ff2846" args="(const string &amp;n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::<a class="el" href="a00085.html">HasName</a> </td>
          <td>(</td>
          <td class="paramtype">const string &amp;&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Constructor. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04582">4582</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1d5482aa038cbf9516a4c9eda0949ac7"></a><!-- doxytag: member="frepple::utils::HasName::HasName" ref="a1d5482aa038cbf9516a4c9eda0949ac7" args="(const char *n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::<a class="el" href="a00085.html">HasName</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Constructor. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04585">4585</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1f5fd13addab69245e351062430e73c8"></a><!-- doxytag: member="frepple::utils::HasName::~HasName" ref="a1f5fd13addab69245e351062430e73c8" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::~<a class="el" href="a00085.html">HasName</a> </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Destructor. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04591">4591</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="aca831abacc00ce1a580c92977645ee91"></a><!-- doxytag: member="frepple::utils::HasName::add" ref="aca831abacc00ce1a580c92977645ee91" args="(T *t, T *hint)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static T* <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::add </td>
          <td>(</td>
          <td class="paramtype">T *&nbsp;</td>
          <td class="paramname"> <em>t</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T *&nbsp;</td>
          <td class="paramname"> <em>hint</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Registers an entity created by the default constructor. The second argument is a hint: when passing an entity with a name close to the new one, the insertion will be sped up considerably. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04649">4649</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a23fd83e323843432f5eface12860d715"></a><!-- doxytag: member="frepple::utils::HasName::add" ref="a23fd83e323843432f5eface12860d715" args="(T *t)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static T* <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::add </td>
          <td>(</td>
          <td class="paramtype">T *&nbsp;</td>
          <td class="paramname"> <em>t</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Registers an entity created by the default constructor. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04643">4643</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a63b0e8c75aecc6fde9f4053ece52fde0"></a><!-- doxytag: member="frepple::utils::HasName::add" ref="a63b0e8c75aecc6fde9f4053ece52fde0" args="(const string &amp;k, const MetaClass &amp;cls)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static T* <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::add </td>
          <td>(</td>
          <td class="paramtype">const string &amp;&nbsp;</td>
          <td class="paramname"> <em>k</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00115.html">MetaClass</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>cls</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Creates a new entity. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04630">4630</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1926a798edd9c04bc37e596936003cd6"></a><!-- doxytag: member="frepple::utils::HasName::begin" ref="a1926a798edd9c04bc37e596936003cd6" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a00094.html">iterator</a> <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::begin </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns a STL-like <a class="el" href="a00094.html" title="This class models a STL-like iterator that allows us to iterate over the named entities...">iterator</a> to the start of the entity list. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04566">4566</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a73371df3a83f5d8dcec7392f5e1aa83b"></a><!-- doxytag: member="frepple::utils::HasName::clear" ref="a73371df3a83f5d8dcec7392f5e1aa83b" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static void <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::clear </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Deletes all elements from the list. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04579">4579</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1dd5c411d61d9ed47104058f948c9f44"></a><!-- doxytag: member="frepple::utils::HasName::compare" ref="a1dd5c411d61d9ed47104058f948c9f44" args="(const PyObject *other) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::compare </td>
          <td>(</td>
          <td class="paramtype">const PyObject *&nbsp;</td>
          <td class="paramname"> <em>other</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Comparison operator for Python. </p>

<p>Reimplemented from <a class="el" href="a00151.html#a5f7e4126cc181a0c359dba281f54e95f">frepple::utils::PythonExtensionBase</a>.</p>

<p>Definition at line <a class="el" href="a00252_source.html#l04597">4597</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5514c78c650d5d2cc5dadc72869259fc"></a><!-- doxytag: member="frepple::utils::HasName::empty" ref="a5514c78c650d5d2cc5dadc72869259fc" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::empty </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns false if no named entities have been defined yet. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04569">4569</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="abb9d04973550ac71037718511358f2ff"></a><!-- doxytag: member="frepple::utils::HasName::end" ref="abb9d04973550ac71037718511358f2ff" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a00094.html">iterator</a> <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::end </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns a STL-like <a class="el" href="a00094.html" title="This class models a STL-like iterator that allows us to iterate over the named entities...">iterator</a> to the end of the entity list. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04563">4563</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a431f09e6eaacebca17532dcf212fe4ac"></a><!-- doxytag: member="frepple::utils::HasName::endElement" ref="a431f09e6eaacebca17532dcf212fe4ac" args="(XMLInput &amp;pIn, const Attribute &amp;pAttr, const DataElement &amp;pElement)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::endElement </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00186.html">XMLInput</a> &amp;&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> &amp;&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00047.html">DataElement</a> &amp;&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Called while restoring the model from an XML-file.<br/>
 This is called when the corresponding close element tag is encountered, and the Data() member of pElement is valid. </p>

<p>Implements <a class="el" href="a00120.html#a88eab6db69f9b38c6b3f5ea37da630fd">frepple::utils::Object</a>.</p>

<p>Reimplemented in <a class="el" href="a00013.html#af329023a8f1fc62b562fd360c3a95140">frepple::Calendar</a>, <a class="el" href="a00023.html#aa6b62fc5a84316ae8e83b925d843873f">frepple::CalendarValue&lt; T &gt;</a>, <a class="el" href="a00021.html#a9e01b406c79687a2961ebc2d007673ad">frepple::CalendarPointer&lt; T &gt;</a>, <a class="el" href="a00171.html#ab301716662e85f733e8529d305bcc259">frepple::Solver</a>, <a class="el" href="a00108.html#a4ed966c56ce9f0d36c2eafdf6d33c9a8">frepple::Location</a>, <a class="el" href="a00044.html#ad1392742a456d7eb2c9ca9e393cbfe5e">frepple::Customer</a>, <a class="el" href="a00121.html#aa201f6f1dd9d0194ac419345333a5a7f">frepple::Operation</a>, <a class="el" href="a00123.html#aa83d7a485466fa68f047cd9bcacb5bf7">frepple::OperationFixedTime</a>, <a class="el" href="a00130.html#a19fb3f3759863a01b23df6566c602495">frepple::OperationTimePer</a>, <a class="el" href="a00128.html#a17ba27923c4f9e18199c48a9e4c7c980">frepple::OperationRouting</a>, <a class="el" href="a00122.html#aa1a730f69090603825c925e332491b4c">frepple::OperationAlternate</a>, <a class="el" href="a00088.html#a86f4b3f7c6e468862ecafaebac75ef1b">frepple::Item</a>, <a class="el" href="a00008.html#a561782e0a5a6fb84c62209aba172a241">frepple::Buffer</a>, <a class="el" href="a00012.html#a50c10dee04e69195b5cccf8d91f9a3e9">frepple::BufferProcure</a>, <a class="el" href="a00165.html#a8fd8e1aa2ff563c3d26a6306b4ea495c">frepple::SetupMatrix</a>, <a class="el" href="a00156.html#a9c2b68e465e4a45d7e1c0f2125172eb6">frepple::Resource</a>, <a class="el" href="a00051.html#a368aa3430232ac2886706f8c1c448c73">frepple::Demand</a>, <a class="el" href="a00173.html#ace591189b4cce0a842d7ca10a224988c">frepple::SolverMRP</a>, <a class="el" href="a00083.html#acd3a64f385bb9fd2fb56505c12918bb5">frepple::utils::HasHierarchy&lt; T &gt;</a>, <a class="el" href="a00072.html#a7684ca786326565eb2f7ceed1a821c5d">module_forecast::Forecast</a>, <a class="el" href="a00112.html#a1efedc96cb52751b3b3efca56401fd30">module_lp_solver::LPSolver</a>, <a class="el" href="a00083.html#acd3a64f385bb9fd2fb56505c12918bb5">frepple::utils::HasHierarchy&lt; Item &gt;</a>, <a class="el" href="a00083.html#acd3a64f385bb9fd2fb56505c12918bb5">frepple::utils::HasHierarchy&lt; Location &gt;</a>, <a class="el" href="a00083.html#acd3a64f385bb9fd2fb56505c12918bb5">frepple::utils::HasHierarchy&lt; Demand &gt;</a>, <a class="el" href="a00083.html#acd3a64f385bb9fd2fb56505c12918bb5">frepple::utils::HasHierarchy&lt; Customer &gt;</a>, <a class="el" href="a00083.html#acd3a64f385bb9fd2fb56505c12918bb5">frepple::utils::HasHierarchy&lt; Resource &gt;</a>, and <a class="el" href="a00083.html#acd3a64f385bb9fd2fb56505c12918bb5">frepple::utils::HasHierarchy&lt; Buffer &gt;</a>.</p>

<p>Definition at line <a class="el" href="a00252_source.html#l04651">4651</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="aad19dfc63a16f3fb30f7bda2e00f3cdc"></a><!-- doxytag: member="frepple::utils::HasName::find" ref="aad19dfc63a16f3fb30f7bda2e00f3cdc" args="(const string &amp;k)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static T* <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::find </td>
          <td>(</td>
          <td class="paramtype">const string &amp;&nbsp;</td>
          <td class="paramname"> <em>k</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Find an entity given its name. In case it can't be found, a NULL pointer is returned. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04612">4612</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="ade245d7c33eb12b46f2f538fa90e3fee"></a><!-- doxytag: member="frepple::utils::HasName::findLowerBound" ref="ade245d7c33eb12b46f2f538fa90e3fee" args="(const string &amp;k, bool *f=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static T* <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::findLowerBound </td>
          <td>(</td>
          <td class="paramtype">const string &amp;&nbsp;</td>
          <td class="paramname"> <em>k</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&nbsp;</td>
          <td class="paramname"> <em>f</em> = <code>NULL</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Find the element with this given key or the element immediately preceding it.<br/>
 The optional second argument is a boolean that is set to true when the element is found in the list. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04623">4623</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac14340cc8781e6f2b7235d50a1d17914"></a><!-- doxytag: member="frepple::utils::HasName::reader" ref="ac14340cc8781e6f2b7235d50a1d17914" args="(const MetaClass *cat, const AttributeList &amp;in)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a00120.html">Object</a>* <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::reader </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00115.html">MetaClass</a> *&nbsp;</td>
          <td class="paramname"> <em>cat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00003.html">AttributeList</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>in</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This method is available as a object creation factory for classes that are using a string as a key identifier, in particular classes derived from the <a class="el" href="a00085.html" title="Base class for objects using a string as their primary key.">HasName</a> base class. The following attributes are recognized:</p>
<ul>
<li>name:<br/>
 Name of the entity to be created/changed/removed.<br/>
 The default value is "unspecified".</li>
<li>type:<br/>
 Determines the subclass to be created.<br/>
 The default value is "default".</li>
<li>action:<br/>
 Determines the action to be performed on the object.<br/>
 This can be A (for 'add'), C (for 'change'), AC (for 'add_change') or R (for 'remove').<br/>
 'add_change' is the default value. <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00085.html" title="Base class for objects using a string as their primary key.">HasName</a> </dd></dl>
</li>
</ul>

<p>Definition at line <a class="el" href="a00252_source.html#l04670">4670</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a97d855d8c9bc9774da9cd8905e242dde"></a><!-- doxytag: member="frepple::utils::HasName::setName" ref="a97d855d8c9bc9774da9cd8905e242dde" args="(const string &amp;newname)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::setName </td>
          <td>(</td>
          <td class="paramtype">const string &amp;&nbsp;</td>
          <td class="paramname"> <em>newname</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Rename the entity. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04588">4588</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a942c27efb3a90dba22215a6e4287d8e4"></a><!-- doxytag: member="frepple::utils::HasName::size" ref="a942c27efb3a90dba22215a6e4287d8e4" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static size_t <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::size </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns the number of defined entities. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04572">4572</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="aab52641207b1b912edea8a3e1d0cb08b"></a><!-- doxytag: member="frepple::utils::HasName::str" ref="aab52641207b1b912edea8a3e1d0cb08b" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual PyObject* <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::str </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the name as the string representation in Python. </p>

<p>Reimplemented from <a class="el" href="a00151.html#a5107e1ef282ff7f6b4e9cd47e74bb069">frepple::utils::PythonExtensionBase</a>.</p>

<p>Definition at line <a class="el" href="a00252_source.html#l04594">4594</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="acdcda2efe85d50aaf3e6329079f99c06"></a><!-- doxytag: member="frepple::utils::HasName::verify" ref="acdcda2efe85d50aaf3e6329079f99c06" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static void <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::verify </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Debugging method to verify the validity of the tree. An exception is thrown when the tree is corrupted. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04576">4576</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1071369052edea444a06baa35d7e991e"></a><!-- doxytag: member="frepple::utils::HasName::writer" ref="a1071369052edea444a06baa35d7e991e" args="(const MetaCategory *c, XMLOutput *o)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static void <a class="el" href="a00085.html">frepple::utils::HasName</a>&lt; T &gt;::writer </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00114.html">MetaCategory</a> *&nbsp;</td>
          <td class="paramname"> <em>c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00189.html">XMLOutput</a> *&nbsp;</td>
          <td class="paramname"> <em>o</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>A handler that is used to persist the tree. </p>

<p>Definition at line <a class="el" href="a00252_source.html#l04765">4765</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="a00252_source.html">utils.h</a></li>
<li><a class="el" href="a00194_source.html">buffer.cpp</a></li>
<li><a class="el" href="a00195_source.html">calendar.cpp</a></li>
<li><a class="el" href="a00197_source.html">customer.cpp</a></li>
<li><a class="el" href="a00199_source.html">demand.cpp</a></li>
<li><a class="el" href="a00208_source.html">item.cpp</a></li>
<li><a class="el" href="a00214_source.html">location.cpp</a></li>
<li><a class="el" href="a00223_source.html">operation.cpp</a></li>
<li><a class="el" href="a00235_source.html">resource.cpp</a></li>
<li><a class="el" href="a00237_source.html">setupmatrix.cpp</a></li>
<li><a class="el" href="a00238_source.html">solver.cpp</a></li>
</ul>
</div>
<hr size="1"/><address style="align: right;"><small>Documentation generated for frePPLe by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"/></a></small></address>
</div>
</div>
</body>
</html>