<!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::MetaCategory Class 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 Page</span></a></li> <li><a href="pages.html"><span>Related 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 List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class 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="a00114.html">MetaCategory</a> </div> </div> <div class="contents"> <h1>frepple::utils::MetaCategory Class Reference</h1><!-- doxytag: class="frepple::utils::MetaCategory" --><!-- doxytag: inherits="frepple::utils::MetaClass" --> <p>A <a class="el" href="a00114.html" title="A MetaCategory instance represents metadata for a category of object.">MetaCategory</a> instance represents metadata for a category of object. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="a00252_source.html">utils.h</a>></code></p> <div class="dynheader"> Inheritance diagram for frepple::utils::MetaCategory:</div> <div class="dynsection"> <div class="center"><img src="a00601.png" border="0" usemap="#frepple_1_1utils_1_1_meta_category_inherit__map" alt="Inheritance graph"/></div> <map name="frepple_1_1utils_1_1_meta_category_inherit__map" id="frepple_1_1utils_1_1_meta_category_inherit__map"> <area shape="rect" id="node2" href="a00115.html" title="This class stores metadata about the classes in the library. The stored information..." alt="" coords="15,83,175,111"/> <area shape="rect" id="node4" href="a00119.html" title="Class NonCopyable is a base class. Derive your own class from it when you want to..." alt="" coords="7,6,183,34"/> </map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="a00602.html">List of all members.</a></p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Public Types</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef map< <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>, const <br class="typebreak"/> <a class="el" href="a00114.html">MetaCategory</a> *, less< <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#aa7163794297440d3b6ef53b53f03084e">CategoryMap</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef map< <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>, const <br class="typebreak"/> <a class="el" href="a00115.html">MetaClass</a> *, less< <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#ae8ea89936520b3d78c8047c3cffe45d1">ClassMap</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00120.html">Object</a> *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#ac6ae34c0961084eb520656cd334f4840">readController</a> )(const <a class="el" href="a00115.html">MetaClass</a> *, const <a class="el" href="a00003.html">AttributeList</a> &)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a97a66dcf7eb6256f5e0efad4ffb08c89">writeController</a> )(const <a class="el" href="a00114.html">MetaCategory</a> *, <a class="el" href="a00189.html">XMLOutput</a> *o)</td></tr> <tr><td colspan="2"><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00115.html">MetaClass</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#ae136db23de357da3cc00db3a64451cd9">findClass</a> (const <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00115.html">MetaClass</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a3472af066bddae41ca38a0b48ac0fd24">findClass</a> (const char *) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a129cc0601853bb65f5850e54784a6df3">MetaCategory</a> (const string &t, const string &g, <a class="el" href="a00114.html#ac6ae34c0961084eb520656cd334f4840">readController</a>=NULL, <a class="el" href="a00114.html#a97a66dcf7eb6256f5e0efad4ffb08c89">writeController</a>=NULL)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a3f475daecd7903b96aaed3cd78595281">~MetaCategory</a> ()</td></tr> <tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="a00120.html">Object</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a7842f6be8852a47e3a1d4ececb40c42e">ControllerDefault</a> (const <a class="el" href="a00115.html">MetaClass</a> *, const <a class="el" href="a00003.html">AttributeList</a> &)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="a00114.html">MetaCategory</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a35e0d66624ab7351a0b08a6823883653">findCategoryByGroupTag</a> (const <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="a00114.html">MetaCategory</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a8221e194d1809fcc1868a5b1bf2d319b">findCategoryByGroupTag</a> (const char *)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="a00114.html">MetaCategory</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a64fdf78b23c9da0c72937d1ee173f10e">findCategoryByTag</a> (const <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="a00114.html">MetaCategory</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#ae560068cd28964a67324d31b38863816">findCategoryByTag</a> (const char *)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#aa04358522c716d21f11ab487c179b10c">persist</a> (<a class="el" href="a00189.html">XMLOutput</a> *)</td></tr> <tr><td colspan="2"><h2>Public Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">string </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#ab4095aa6c4dd8dc0049f4013a5950b3e">group</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00096.html">Keyword</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#abf52fd75f82c4de4091e3b1921b43ba5">grouptag</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00114.html#ac6ae34c0961084eb520656cd334f4840">readController</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#a12334a610fa3ae152311a623ea11ce1d">readFunction</a></td></tr> <tr><td colspan="2"><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#ac99dac5fa2403dc498114676259a9e09">HasName</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00114.html#adbc9f4440ff4966e487d83342518a696">MetaClass</a></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>A <a class="el" href="a00114.html" title="A MetaCategory instance represents metadata for a category of object.">MetaCategory</a> instance represents metadata for a category of object. </p> <p>A <a class="el" href="a00115.html" title="This class stores metadata about the classes in the library. The stored information...">MetaClass</a> instance represents metadata for a specific instance type. For instance, 'Resource' is a category while 'ResourceDefault' and 'ResourceInfinite' are specific classes.<br/> A category has the following specific pieces of data:</p> <ul> <li>A reader function for creating objects.<br/> The reader function creates objects for all classes registered with it.</li> <li>A writer function for persisting objects.<br/> The writer function will typically iterate over all objects of the category and call the writeElement method on them.</li> <li>A group tag used for the grouping objects of the category in the XML output stream. <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00115.html" title="This class stores metadata about the classes in the library. The stored information...">MetaClass</a> </dd></dl> </li> </ul> <p>Definition at line <a class="el" href="a00252_source.html#l01370">1370</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> <hr/><h2>Member Typedef Documentation</h2> <a class="anchor" id="aa7163794297440d3b6ef53b53f03084e"></a><!-- doxytag: member="frepple::utils::MetaCategory::CategoryMap" ref="aa7163794297440d3b6ef53b53f03084e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef map< <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>, const <a class="el" href="a00114.html">MetaCategory</a>*, less<<a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>> > <a class="el" href="a00114.html#aa7163794297440d3b6ef53b53f03084e">frepple::utils::MetaCategory::CategoryMap</a></td> </tr> </table> </div> <div class="memdoc"> <p>Type definition for the map of all categories. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01403">1403</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="ae8ea89936520b3d78c8047c3cffe45d1"></a><!-- doxytag: member="frepple::utils::MetaCategory::ClassMap" ref="ae8ea89936520b3d78c8047c3cffe45d1" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef map< <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>, const <a class="el" href="a00115.html">MetaClass</a>*, less<<a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a>> > <a class="el" href="a00114.html#ae8ea89936520b3d78c8047c3cffe45d1">frepple::utils::MetaCategory::ClassMap</a></td> </tr> </table> </div> <div class="memdoc"> <p>Type definition for the map of all registered classes. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01400">1400</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="ac6ae34c0961084eb520656cd334f4840"></a><!-- doxytag: member="frepple::utils::MetaCategory::readController" ref="ac6ae34c0961084eb520656cd334f4840" args=")(const MetaClass *, const AttributeList &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="a00120.html">Object</a>*(* <a class="el" href="a00114.html#ac6ae34c0961084eb520656cd334f4840">frepple::utils::MetaCategory::readController</a>)(const <a class="el" href="a00115.html">MetaClass</a> *, const <a class="el" href="a00003.html">AttributeList</a> &)</td> </tr> </table> </div> <div class="memdoc"> <p>Type definition for the read control function. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01382">1382</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="a97a66dcf7eb6256f5e0efad4ffb08c89"></a><!-- doxytag: member="frepple::utils::MetaCategory::writeController" ref="a97a66dcf7eb6256f5e0efad4ffb08c89" args=")(const MetaCategory *, XMLOutput *o)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef void(* <a class="el" href="a00114.html#a97a66dcf7eb6256f5e0efad4ffb08c89">frepple::utils::MetaCategory::writeController</a>)(const <a class="el" href="a00114.html">MetaCategory</a> *, <a class="el" href="a00189.html">XMLOutput</a> *o)</td> </tr> </table> </div> <div class="memdoc"> <p>Type definition for the write control function. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01385">1385</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a3f475daecd7903b96aaed3cd78595281"></a><!-- doxytag: member="frepple::utils::MetaCategory::~MetaCategory" ref="a3f475daecd7903b96aaed3cd78595281" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual frepple::utils::MetaCategory::~MetaCategory </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Destructor. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01393">1393</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="a129cc0601853bb65f5850e54784a6df3"></a><!-- doxytag: member="frepple::utils::MetaCategory::MetaCategory" ref="a129cc0601853bb65f5850e54784a6df3" args="(const string &t, const string &g, readController=NULL, writeController=NULL)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">frepple::utils::MetaCategory::MetaCategory </td> <td>(</td> <td class="paramtype">const string & </td> <td class="paramname"> <em>t</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const string & </td> <td class="paramname"> <em>g</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00114.html#ac6ae34c0961084eb520656cd334f4840">readController</a> </td> <td class="paramname"> <em>f</em> = <code>NULL</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00114.html#a97a66dcf7eb6256f5e0efad4ffb08c89">writeController</a> </td> <td class="paramname"> <em>w</em> = <code>NULL</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00248">248</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a7842f6be8852a47e3a1d4ececb40c42e"></a><!-- doxytag: member="frepple::utils::MetaCategory::ControllerDefault" ref="a7842f6be8852a47e3a1d4ececb40c42e" args="(const MetaClass *, const AttributeList &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00120.html">Object</a> * frepple::utils::MetaCategory::ControllerDefault </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00115.html">MetaClass</a> * </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> & </td> <td class="paramname"> <em>in</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>This template method is available as a object creation factory for classes without key fields and which rely on a default constructor. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00405">405</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <a class="anchor" id="a35e0d66624ab7351a0b08a6823883653"></a><!-- doxytag: member="frepple::utils::MetaCategory::findCategoryByGroupTag" ref="a35e0d66624ab7351a0b08a6823883653" args="(const hashtype)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00114.html">MetaCategory</a> * frepple::utils::MetaCategory::findCategoryByGroupTag </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a> </td> <td class="paramname"> <em>h</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Looks up a category name in the registry. If the category can't be located the return value is NULL. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00300">300</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <a class="anchor" id="a8221e194d1809fcc1868a5b1bf2d319b"></a><!-- doxytag: member="frepple::utils::MetaCategory::findCategoryByGroupTag" ref="a8221e194d1809fcc1868a5b1bf2d319b" args="(const char *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00114.html">MetaCategory</a> * frepple::utils::MetaCategory::findCategoryByGroupTag </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>c</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Looks up a category name in the registry. If the catgory can't be located the return value is NULL. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00292">292</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <a class="anchor" id="a64fdf78b23c9da0c72937d1ee173f10e"></a><!-- doxytag: member="frepple::utils::MetaCategory::findCategoryByTag" ref="a64fdf78b23c9da0c72937d1ee173f10e" args="(const hashtype)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00114.html">MetaCategory</a> * frepple::utils::MetaCategory::findCategoryByTag </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a> </td> <td class="paramname"> <em>h</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Looks up a category name in the registry. If the catgory can't be located the return value is NULL. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00284">284</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <a class="anchor" id="ae560068cd28964a67324d31b38863816"></a><!-- doxytag: member="frepple::utils::MetaCategory::findCategoryByTag" ref="ae560068cd28964a67324d31b38863816" args="(const char *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00114.html">MetaCategory</a> * frepple::utils::MetaCategory::findCategoryByTag </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>c</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Looks up a category name in the registry. If the catgory can't be located the return value is NULL. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00276">276</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <a class="anchor" id="ae136db23de357da3cc00db3a64451cd9"></a><!-- doxytag: member="frepple::utils::MetaCategory::findClass" ref="ae136db23de357da3cc00db3a64451cd9" args="(const hashtype) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00115.html">MetaClass</a> * frepple::utils::MetaCategory::findClass </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00257.html#af8a429831281b355afd656cb83d31443">hashtype</a> </td> <td class="paramname"> <em>h</em></td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Find a class in this category with a specified name.<br/> If the catrgory can't be found the return value is NULL. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00316">316</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <a class="anchor" id="a3472af066bddae41ca38a0b48ac0fd24"></a><!-- doxytag: member="frepple::utils::MetaCategory::findClass" ref="a3472af066bddae41ca38a0b48ac0fd24" args="(const char *) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00115.html">MetaClass</a> * frepple::utils::MetaCategory::findClass </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>c</em></td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Find a class in this category with a specified name.<br/> If the catrgory can't be found the return value is NULL. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00308">308</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <a class="anchor" id="aa04358522c716d21f11ab487c179b10c"></a><!-- doxytag: member="frepple::utils::MetaCategory::persist" ref="aa04358522c716d21f11ab487c179b10c" args="(XMLOutput *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void frepple::utils::MetaCategory::persist </td> <td>(</td> <td class="paramtype"><a class="el" href="a00189.html">XMLOutput</a> * </td> <td class="paramname"> <em>o</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>This method takes care of the persistence of all categories. It loops through all registered categories (in the order of their registration) and calls the persistance handler. </p> <p>Definition at line <a class="el" href="a00211_source.html#l00324">324</a> of file <a class="el" href="a00211_source.html">utils/library.cpp</a>.</p> </div> </div> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="ac99dac5fa2403dc498114676259a9e09"></a><!-- doxytag: member="frepple::utils::MetaCategory::HasName" ref="ac99dac5fa2403dc498114676259a9e09" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="a00085.html">HasName</a><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="a00252_source.html#l01373">1373</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="adbc9f4440ff4966e487d83342518a696"></a><!-- doxytag: member="frepple::utils::MetaCategory::MetaClass" ref="adbc9f4440ff4966e487d83342518a696" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="a00115.html">MetaClass</a><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="a00252_source.html#l01372">1372</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="ab4095aa6c4dd8dc0049f4013a5950b3e"></a><!-- doxytag: member="frepple::utils::MetaCategory::group" ref="ab4095aa6c4dd8dc0049f4013a5950b3e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">string <a class="el" href="a00114.html#ab4095aa6c4dd8dc0049f4013a5950b3e">frepple::utils::MetaCategory::group</a></td> </tr> </table> </div> <div class="memdoc"> <p>The name used to name a collection of objects of this category. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01376">1376</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="abf52fd75f82c4de4091e3b1921b43ba5"></a><!-- doxytag: member="frepple::utils::MetaCategory::grouptag" ref="abf52fd75f82c4de4091e3b1921b43ba5" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00096.html">Keyword</a>* <a class="el" href="a00114.html#abf52fd75f82c4de4091e3b1921b43ba5">frepple::utils::MetaCategory::grouptag</a></td> </tr> </table> </div> <div class="memdoc"> <p>A XML tag grouping objects of the category. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01379">1379</a> of file <a class="el" href="a00252_source.html">utils.h</a>.</p> </div> </div> <a class="anchor" id="a12334a610fa3ae152311a623ea11ce1d"></a><!-- doxytag: member="frepple::utils::MetaCategory::readFunction" ref="a12334a610fa3ae152311a623ea11ce1d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00114.html#ac6ae34c0961084eb520656cd334f4840">readController</a> <a class="el" href="a00114.html#a12334a610fa3ae152311a623ea11ce1d">frepple::utils::MetaCategory::readFunction</a></td> </tr> </table> </div> <div class="memdoc"> <p>A control function for reading objects of a category. The controller function manages the creation and destruction of objects in this category. </p> <p>Definition at line <a class="el" href="a00252_source.html#l01441">1441</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="a00211_source.html">utils/library.cpp</a></li> </ul> </div> <hr size="1"/><address style="align: right;"><small>Documentation generated for frePPLe by <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>