Sophie

Sophie

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

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::SetupMatrix 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&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="a00165.html">SetupMatrix</a>
  </div>
</div>
<div class="contents">
<h1>frepple::SetupMatrix Class Reference</h1><!-- doxytag: class="frepple::SetupMatrix" --><!-- doxytag: inherits="HasName&lt; SetupMatrix &gt;" -->
<p>This class is used to represent a matrix defining the changeover times between setups.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00218_source.html">model.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for frepple::SetupMatrix:</div>
<div class="dynsection">
<div class="center"><img src="a00523.png" border="0" usemap="#frepple_1_1_setup_matrix_inherit__map" alt="Inheritance graph"/></div>
<map name="frepple_1_1_setup_matrix_inherit__map" id="frepple_1_1_setup_matrix_inherit__map">
<area shape="rect" id="node13" href="a00166.html" title="This class is the default implementation of the abstract SetupMatrix class." alt="" coords="211,315,387,343"/>
<area shape="rect" id="node2" href="a00085.html" title="frepple::utils::HasName\&lt; SetupMatrix \&gt;" alt="" coords="173,161,424,189"/>
<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="5,83,181,111"/>
<area shape="rect" id="node6" href="a00182.html" title="This class represents a node in the tree." alt="" coords="205,83,392,111"/>
<area shape="rect" id="node8" href="a00120.html" title="Object is the abstract base class for the main entities." alt="" coords="416,83,552,111"/>
<area shape="rect" id="node10" 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="a00524.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="a00160.html">Rule</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An specific changeover rule in a setup matrix.  <a href="a00160.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00161.html">RuleIterator</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An iterator class to go through all rules of a setup matrix.  <a href="a00161.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">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a268684607c920d46b82c2a00e2009aba">beginElement</a> (<a class="el" href="a00186.html">XMLInput</a> &amp;, const <a class="el" href="a00002.html">Attribute</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00161.html">RuleIterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#ae66b557c666acf915c10bb3c093b7430">beginRules</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00160.html">Rule</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a2bde77a78252ad83c4429eeec7ff0348">calculateSetup</a> (const string, const string) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00160.html">Rule</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a28def329cc231c3916fae7dce002bd61">createRule</a> (const <a class="el" href="a00003.html">AttributeList</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a8fd8e1aa2ff563c3d26a6306b4ea495c">endElement</a> (<a class="el" href="a00186.html">XMLInput</a> &amp;, const <a class="el" href="a00002.html">Attribute</a> &amp;, const <a class="el" href="a00047.html">DataElement</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00161.html">RuleIterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a7aaf1d728ef211fcfb4193cfa547dcfa">endRules</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a21421b7ebbae7e48074d0615d316253b">extrasize</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a95cfcffab5777c42c5594f52f54e24cf">getattro</a> (const <a class="el" href="a00002.html">Attribute</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a56aaef56bc23976432bef1e4e084caa1">getSize</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00115.html">MetaClass</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a49b6a21717b4a60ef7de3a8380286240">getType</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#adf66d9dae820a2b0f1e7b1ae3b544232">setattro</a> (const <a class="el" href="a00002.html">Attribute</a> &amp;, const <a class="el" href="a00154.html">PythonObject</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#ad8fbc67ceecd33507799f70ac6b60164">SetupMatrix</a> (const string &amp;n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a4a43de4b7ac0d8b4b9d8705227dd0a49">writeElement</a> (<a class="el" href="a00189.html">XMLOutput</a> *, const <a class="el" href="a00096.html">Keyword</a> &amp;, <a class="el" href="a00257.html#a20c2c7e4c6b668e71c154ae3eb18f398">mode</a>=DEFAULT) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#ade0fa81597c2350dd9edd907caa68e97">~SetupMatrix</a> ()</td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a11ff98a0b634aa2a7127d054b3655bc3">addPythonRule</a> (PyObject *, PyObject *, PyObject *)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a4914a2c19f5a89b61ed75039de1ea7ea">initialize</a> ()</td></tr>
<tr><td colspan="2"><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="a00114.html">MetaCategory</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#a1d872c221ddb757bd195c43c85ee160b">metadata</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This class is used to represent a matrix defining the changeover times between setups. </p>

<p>Definition at line <a class="el" href="a00218_source.html#l03678">3678</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad8fbc67ceecd33507799f70ac6b60164"></a><!-- doxytag: member="frepple::SetupMatrix::SetupMatrix" ref="ad8fbc67ceecd33507799f70ac6b60164" args="(const string &amp;n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">frepple::SetupMatrix::SetupMatrix </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]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default constructor. </p>

<p>Definition at line <a class="el" href="a00218_source.html#l03794">3794</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="ade0fa81597c2350dd9edd907caa68e97"></a><!-- doxytag: member="frepple::SetupMatrix::~SetupMatrix" ref="ade0fa81597c2350dd9edd907caa68e97" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">frepple::SetupMatrix::~SetupMatrix </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Destructor. </p>

<p>Definition at line <a class="el" href="a00237_source.html#l00082">82</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a11ff98a0b634aa2a7127d054b3655bc3"></a><!-- doxytag: member="frepple::SetupMatrix::addPythonRule" ref="a11ff98a0b634aa2a7127d054b3655bc3" args="(PyObject *, PyObject *, PyObject *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PyObject * frepple::SetupMatrix::addPythonRule </td>
          <td>(</td>
          <td class="paramtype">PyObject *&nbsp;</td>
          <td class="paramname"> <em>self</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PyObject *&nbsp;</td>
          <td class="paramname"> <em>args</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PyObject *&nbsp;</td>
          <td class="paramname"> <em>kwdict</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Python interface to add a new rule. </p>

<p>Definition at line <a class="el" href="a00237_source.html#l00215">215</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a268684607c920d46b82c2a00e2009aba"></a><!-- doxytag: member="frepple::SetupMatrix::beginElement" ref="a268684607c920d46b82c2a00e2009aba" args="(XMLInput &amp;, const Attribute &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::SetupMatrix::beginElement </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><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Called while restoring the model from an XML-file.<br/>
 This is called for each element within the "this" element, for which the "this" element is immediate parent.<br/>
 It is called when the open element tag is encountered. </p>

<p>Reimplemented from <a class="el" href="a00120.html#ac17c9f7df359ee20839f5e09723d38f1">frepple::utils::Object</a>.</p>

<p>Definition at line <a class="el" href="a00237_source.html#l00120">120</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae66b557c666acf915c10bb3c093b7430"></a><!-- doxytag: member="frepple::SetupMatrix::beginRules" ref="ae66b557c666acf915c10bb3c093b7430" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00161.html">RuleIterator</a> frepple::SetupMatrix::beginRules </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns an iterator to go through the list of buckets. </p>

<p>Definition at line <a class="el" href="a00218_source.html#l03826">3826</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2bde77a78252ad83c4429eeec7ff0348"></a><!-- doxytag: member="frepple::SetupMatrix::calculateSetup" ref="a2bde77a78252ad83c4429eeec7ff0348" args="(const string, const string) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00160.html">SetupMatrix::Rule</a> * frepple::SetupMatrix::calculateSetup </td>
          <td>(</td>
          <td class="paramtype">const string&nbsp;</td>
          <td class="paramname"> <em>oldsetup</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const string&nbsp;</td>
          <td class="paramname"> <em>newsetup</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Computes the changeover time and cost between 2 setup values.</p>
<p>To compute the time of a changeover the algorithm will evaluate all rules in sequence (in order of priority).<br/>
 For a rule to match the changeover between the original setup X to a new setup Y, two conditions need to be fulfilled:</p>
<ul>
<li>The original setup X must match with the fromsetup of the rule.<br/>
 If the fromsetup field is empty, it is considered a match.</li>
<li>The new setup Y must match with the tosetup of the rule.<br/>
 If the tosetup field is empty, it is considered a match. The wildcard characters * and ? can be used in the fromsetup and tosetup fields.<br/>
 As soon as a matching rule is found, it is applied and subsequent rules are not evaluated.<br/>
 If no matching rule is found, the changeover is not allowed: a NULL pointer is returned. </li>
</ul>

<p>Definition at line <a class="el" href="a00237_source.html#l00417">417</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a28def329cc231c3916fae7dce002bd61"></a><!-- doxytag: member="frepple::SetupMatrix::createRule" ref="a28def329cc231c3916fae7dce002bd61" args="(const AttributeList &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00160.html">SetupMatrix::Rule</a> * frepple::SetupMatrix::createRule </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00003.html">AttributeList</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>atts</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This is a factory method that creates a new rule<br/>
 This method is intended to be used to create objects when reading XML input data. </p>

<p>Definition at line <a class="el" href="a00237_source.html#l00129">129</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a8fd8e1aa2ff563c3d26a6306b4ea495c"></a><!-- doxytag: member="frepple::SetupMatrix::endElement" ref="a8fd8e1aa2ff563c3d26a6306b4ea495c" args="(XMLInput &amp;, const Attribute &amp;, const DataElement &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::SetupMatrix::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> [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>Reimplemented from <a class="el" href="a00085.html#a431f09e6eaacebca17532dcf212fe4ac">frepple::utils::HasName&lt; SetupMatrix &gt;</a>.</p>

<p>Definition at line <a class="el" href="a00237_source.html#l00191">191</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a7aaf1d728ef211fcfb4193cfa547dcfa"></a><!-- doxytag: member="frepple::SetupMatrix::endRules" ref="a7aaf1d728ef211fcfb4193cfa547dcfa" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00161.html">RuleIterator</a> frepple::SetupMatrix::endRules </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Returns an iterator to go through the list of buckets. </p>

<p>Definition at line <a class="el" href="a00218_source.html#l03829">3829</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a21421b7ebbae7e48074d0615d316253b"></a><!-- doxytag: member="frepple::SetupMatrix::extrasize" ref="a21421b7ebbae7e48074d0615d316253b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t frepple::SetupMatrix::extrasize </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00218_source.html#l03823">3823</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a95cfcffab5777c42c5594f52f54e24cf"></a><!-- doxytag: member="frepple::SetupMatrix::getattro" ref="a95cfcffab5777c42c5594f52f54e24cf" args="(const Attribute &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PyObject * frepple::SetupMatrix::getattro </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>attr</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default getattro method. <br/>
 Subclasses are expected to implement an override if the type supports gettattro. </p>

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

<p>Definition at line <a class="el" href="a00237_source.html#l00197">197</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a56aaef56bc23976432bef1e4e084caa1"></a><!-- doxytag: member="frepple::SetupMatrix::getSize" ref="a56aaef56bc23976432bef1e4e084caa1" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t frepple::SetupMatrix::getSize </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 memory size of the object in bytes. </p>

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

<p>Reimplemented in <a class="el" href="a00166.html#a3996267c62909d6e735c5fda1f868304">frepple::SetupMatrixDefault</a>.</p>

<p>Definition at line <a class="el" href="a00218_source.html#l03815">3815</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a49b6a21717b4a60ef7de3a8380286240"></a><!-- doxytag: member="frepple::SetupMatrix::getType" ref="a49b6a21717b4a60ef7de3a8380286240" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="a00115.html">MetaClass</a>&amp; frepple::SetupMatrix::getType </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>This returns the type information on the object, a bit similar to the standard type_info information. </p>

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

<p>Reimplemented in <a class="el" href="a00166.html#a319ad7bebceea12fe4638aa7587917dc">frepple::SetupMatrixDefault</a>.</p>

<p>Definition at line <a class="el" href="a00218_source.html#l03812">3812</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4914a2c19f5a89b61ed75039de1ea7ea"></a><!-- doxytag: member="frepple::SetupMatrix::initialize" ref="a4914a2c19f5a89b61ed75039de1ea7ea" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int frepple::SetupMatrix::initialize </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="a00166.html#a77a0fb03843ecff3c5a8454b73cc1556">frepple::SetupMatrixDefault</a>.</p>

<p>Definition at line <a class="el" href="a00237_source.html#l00040">40</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="adf66d9dae820a2b0f1e7b1ae3b544232"></a><!-- doxytag: member="frepple::SetupMatrix::setattro" ref="adf66d9dae820a2b0f1e7b1ae3b544232" args="(const Attribute &amp;, const PythonObject &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int frepple::SetupMatrix::setattro </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00002.html">Attribute</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>attr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00154.html">PythonObject</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>field</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default setattro method. <br/>
 Subclasses are expected to implement an override if the type supports settattro. </p>

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

<p>Definition at line <a class="el" href="a00237_source.html#l00207">207</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4a43de4b7ac0d8b4b9d8705227dd0a49"></a><!-- doxytag: member="frepple::SetupMatrix::writeElement" ref="a4a43de4b7ac0d8b4b9d8705227dd0a49" args="(XMLOutput *, const Keyword &amp;, mode=DEFAULT) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::SetupMatrix::writeElement </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00189.html">XMLOutput</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00096.html">Keyword</a> &amp;&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00257.html#a20c2c7e4c6b668e71c154ae3eb18f398">mode</a>&nbsp;</td>
          <td class="paramname"> = <code>DEFAULT</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Called while writing the model into an XML-file. The user class should write itself out, using the IOutStream members for its "simple" members and calling writeElement recursively for any contained objects. Not all classes are expected to implement this method. In instances of such a class can be created but can't be persisted. E.g. Command </p>

<p>Reimplemented from <a class="el" href="a00120.html#a324e43c334cb519909fcbdad0f8cbd82">frepple::utils::Object</a>.</p>

<p>Definition at line <a class="el" href="a00237_source.html#l00094">94</a> of file <a class="el" href="a00237_source.html">setupmatrix.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a1d872c221ddb757bd195c43c85ee160b"></a><!-- doxytag: member="frepple::SetupMatrix::metadata" ref="a1d872c221ddb757bd195c43c85ee160b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00114.html">MetaCategory</a> * <a class="el" href="a00165.html#a1d872c221ddb757bd195c43c85ee160b">frepple::SetupMatrix::metadata</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="a00166.html#a3e3c250bf0f45f79996e63553e3d806e">frepple::SetupMatrixDefault</a>.</p>

<p>Definition at line <a class="el" href="a00218_source.html#l03813">3813</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="a00218_source.html">model.h</a></li>
<li><a class="el" href="a00237_source.html">setupmatrix.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>