Sophie

Sophie

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

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::Solver 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="a00171.html">Solver</a>
  </div>
</div>
<div class="contents">
<h1>frepple::Solver Class Reference</h1><!-- doxytag: class="frepple::Solver" --><!-- doxytag: inherits="HasName&lt; Solver &gt;" -->
<p>This class is an implementation of the "visitor" design pattern. It is intended as a basis for different algoritms processing the frePPLe data.  
<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::Solver:</div>
<div class="dynsection">
<div class="center"><img src="a00536.png" border="0" usemap="#frepple_1_1_solver_inherit__map" alt="Inheritance graph"/></div>
<map name="frepple_1_1_solver_inherit__map" id="frepple_1_1_solver_inherit__map">
<area shape="rect" id="node13" href="a00173.html" title="This solver implements a heuristic algorithm for planning demands." alt="" coords="39,315,169,343"/>
<area shape="rect" id="node15" href="a00075.html" title="Implementation of a forecast netting algorithm." alt="" coords="193,315,404,343"/>
<area shape="rect" id="node17" href="a00112.html" title="This class is a prototype of an Linear Programming (LP) Solver for the planning problem..." alt="" coords="428,315,607,343"/>
<area shape="rect" id="node2" href="a00085.html" title="frepple::utils::HasName\&lt; Solver \&gt;" alt="" coords="191,161,407,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="a00537.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#ab301716662e85f733e8529d305bcc259">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">virtual PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#adfd5b71beb06efcdd5f382734df6dcd9">getattro</a> (const <a class="el" href="a00002.html">Attribute</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a7331226cd4ef515184dff2d118c43423">getLogLevel</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="a00171.html#aa616e2bc3ea78ac9fbf467544032fdc5">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="a00171.html#a238d13fba4132fee44d612f3e2d5b335">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">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a373dc4d480568344c336cb193ce3edc2">setLogLevel</a> (unsigned short v)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#aa8a5c91542c091348e379abeed1f3559">solve</a> (const <a class="el" href="a00170.html">Solvable</a> *, void *=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#aa834859105f67c0a66a14e18da7c48cf">solve</a> (const <a class="el" href="a00066.html">FlowEnd</a> *b, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a0d0e44c5ccf65e0a3efd98d6fc969ba2">solve</a> (const <a class="el" href="a00065.html">Flow</a> *b, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#af219e2dfe374f1e5f6198cf59a473b30">solve</a> (const <a class="el" href="a00103.html">Load</a> *b, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#ac42b050aa4bfc94e21f957cea88608a4">solve</a> (const <a class="el" href="a00012.html">BufferProcure</a> *b, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a5bd70647cfd5fd0a5524837186b1e6bd">solve</a> (const <a class="el" href="a00010.html">BufferInfinite</a> *b, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#afb6133fc6d0b98cfad750711657e18c9">solve</a> (const <a class="el" href="a00008.html">Buffer</a> *, void *=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#ae69201536d38f7512d9e3e38c7e9c5c8">solve</a> (const <a class="el" href="a00158.html">ResourceInfinite</a> *r, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a6ae179fd8274b46658ae51dd172850e8">solve</a> (const <a class="el" href="a00156.html">Resource</a> *, void *=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a8e98f85c6f99fbda9ffda9f07f07fbdd">solve</a> (const <a class="el" href="a00122.html">OperationAlternate</a> *o, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a27bc758ece06d7859f20dbfa44ae543f">solve</a> (const <a class="el" href="a00128.html">OperationRouting</a> *o, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#aafc0e4eaf47a894084957784fb8476f2">solve</a> (const <a class="el" href="a00130.html">OperationTimePer</a> *o, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a7a63b74f3cdfd763fa0c4cdb8f46ddfa">solve</a> (const <a class="el" href="a00123.html">OperationFixedTime</a> *o, void *v=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a1d346012ac2f95d6e5fa0d32d969ddba">solve</a> (const <a class="el" href="a00121.html">Operation</a> *, void *=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a156a608f426159a7cda58117a713a66c">solve</a> (const <a class="el" href="a00051.html">Demand</a> *, void *=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#aa24859d5719ee02c89188323f9c47e56">solve</a> (void *=NULL)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a0bab8050a086a9df012fc9a4ac638e31">Solver</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="a00171.html#a710cb60097e6931be16ff0d842e1cb3b">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">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a07a9ce295450a322aa0c8ba31b58893f">~Solver</a> ()</td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a9410da1315fa0ea25e61b7e867c34bac">initialize</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static PyObject *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00171.html#a6a52d1bf3db700368c4ed5ca9de8d296">solve</a> (PyObject *, PyObject *)</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="a00171.html#a71e7d22ae04bc1aa927b489f1f022745">metadata</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This class is an implementation of the "visitor" design pattern. It is intended as a basis for different algoritms processing the frePPLe data. </p>
<p>The goal is to decouple the solver/algorithms from the model/data representation. Different solvers can be easily be plugged in to work on the same data. </p>

<p>Definition at line <a class="el" href="a00218_source.html#l01115">1115</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="a0bab8050a086a9df012fc9a4ac638e31"></a><!-- doxytag: member="frepple::Solver::Solver" ref="a0bab8050a086a9df012fc9a4ac638e31" args="(const string &amp;n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">frepple::Solver::Solver </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>Definition at line <a class="el" href="a00218_source.html#l01118">1118</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a07a9ce295450a322aa0c8ba31b58893f"></a><!-- doxytag: member="frepple::Solver::~Solver" ref="a07a9ce295450a322aa0c8ba31b58893f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual frepple::Solver::~Solver </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

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

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab301716662e85f733e8529d305bcc259"></a><!-- doxytag: member="frepple::Solver::endElement" ref="ab301716662e85f733e8529d305bcc259" args="(XMLInput &amp;, const Attribute &amp;, const DataElement &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::Solver::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; Solver &gt;</a>.</p>

<p>Reimplemented in <a class="el" href="a00173.html#ace591189b4cce0a842d7ca10a224988c">frepple::SolverMRP</a>, and <a class="el" href="a00112.html#a1efedc96cb52751b3b3efca56401fd30">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00238_source.html#l00063">63</a> of file <a class="el" href="a00238_source.html">solver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="adfd5b71beb06efcdd5f382734df6dcd9"></a><!-- doxytag: member="frepple::Solver::getattro" ref="adfd5b71beb06efcdd5f382734df6dcd9" args="(const Attribute &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PyObject * frepple::Solver::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>Reimplemented in <a class="el" href="a00173.html#a7cde63ea91a5b9a65e2454093c160b70">frepple::SolverMRP</a>, and <a class="el" href="a00112.html#a05c791c87438080ee3dccf793d1d7e51">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00238_source.html#l00075">75</a> of file <a class="el" href="a00238_source.html">solver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a7331226cd4ef515184dff2d118c43423"></a><!-- doxytag: member="frepple::Solver::getLogLevel" ref="a7331226cd4ef515184dff2d118c43423" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned short frepple::Solver::getLogLevel </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 how elaborate and verbose output is requested.<br/>
 As a guideline solvers should respect the following guidelines:</p>
<ul>
<li>0:<br/>
 Completely silent.<br/>
 This is the default value.</li>
<li>1:<br/>
 Minimal and high-level messages on the progress that are sufficient for logging normal operation.<br/>
</li>
<li>2:<br/>
 Higher numbers are solver dependent. These levels are typically used for debugging and tracing, and provide more detail on the solver's progress. </li>
</ul>

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

</div>
</div>
<a class="anchor" id="aa616e2bc3ea78ac9fbf467544032fdc5"></a><!-- doxytag: member="frepple::Solver::getType" ref="aa616e2bc3ea78ac9fbf467544032fdc5" 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::Solver::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="a00173.html#ae304221980e02fc4d5acca0618beddbb">frepple::SolverMRP</a>, <a class="el" href="a00075.html#af578993f598ddfbcd14243a211347a75">module_forecast::ForecastSolver</a>, and <a class="el" href="a00112.html#a59e80bd6c085f2b987c9382d7e78354d">module_lp_solver::LPSolver</a>.</p>

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

</div>
</div>
<a class="anchor" id="a9410da1315fa0ea25e61b7e867c34bac"></a><!-- doxytag: member="frepple::Solver::initialize" ref="a9410da1315fa0ea25e61b7e867c34bac" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int frepple::Solver::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="a00173.html#a4789a0e47176fdf3dfdd30cc8965b08a">frepple::SolverMRP</a>, <a class="el" href="a00075.html#a5fd4c59863d2941f85d4f23fe3446f07">module_forecast::ForecastSolver</a>, and <a class="el" href="a00112.html#a5b351b4d36fa31bd2ef24c6691b16e13">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00238_source.html#l00038">38</a> of file <a class="el" href="a00238_source.html">solver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a238d13fba4132fee44d612f3e2d5b335"></a><!-- doxytag: member="frepple::Solver::setattro" ref="a238d13fba4132fee44d612f3e2d5b335" args="(const Attribute &amp;, const PythonObject &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int frepple::Solver::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>Reimplemented in <a class="el" href="a00173.html#a0ff1f4d1312dca29b36e01ac052643ae">frepple::SolverMRP</a>, and <a class="el" href="a00112.html#a4717526cb4db2ca217646e8af799de8b">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00238_source.html#l00085">85</a> of file <a class="el" href="a00238_source.html">solver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a373dc4d480568344c336cb193ce3edc2"></a><!-- doxytag: member="frepple::Solver::setLogLevel" ref="a373dc4d480568344c336cb193ce3edc2" args="(unsigned short v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::Solver::setLogLevel </td>
          <td>(</td>
          <td class="paramtype">unsigned short&nbsp;</td>
          <td class="paramname"> <em>v</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Controls whether verbose output will be generated. </p>

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

</div>
</div>
<a class="anchor" id="aa8a5c91542c091348e379abeed1f3559"></a><!-- doxytag: member="frepple::Solver::solve" ref="aa8a5c91542c091348e379abeed1f3559" args="(const Solvable *, void *=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00170.html">Solvable</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> = <code>NULL</code></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>Definition at line <a class="el" href="a00218_source.html#l01158">1158</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa834859105f67c0a66a14e18da7c48cf"></a><!-- doxytag: member="frepple::Solver::solve" ref="aa834859105f67c0a66a14e18da7c48cf" args="(const FlowEnd *b, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00066.html">FlowEnd</a> *&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Definition at line <a class="el" href="a00218_source.html#l01156">1156</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0d0e44c5ccf65e0a3efd98d6fc969ba2"></a><!-- doxytag: member="frepple::Solver::solve" ref="a0d0e44c5ccf65e0a3efd98d6fc969ba2" args="(const Flow *b, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00065.html">Flow</a> *&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#a07bb4bc46446999572f77d94b8c33b35">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="af219e2dfe374f1e5f6198cf59a473b30"></a><!-- doxytag: member="frepple::Solver::solve" ref="af219e2dfe374f1e5f6198cf59a473b30" args="(const Load *b, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00103.html">Load</a> *&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#a77fb02a5ece53f1af485196a572f473c">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="ac42b050aa4bfc94e21f957cea88608a4"></a><!-- doxytag: member="frepple::Solver::solve" ref="ac42b050aa4bfc94e21f957cea88608a4" args="(const BufferProcure *b, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00012.html">BufferProcure</a> *&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#a54b16830f089156c69c901bb44aaf488">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="a5bd70647cfd5fd0a5524837186b1e6bd"></a><!-- doxytag: member="frepple::Solver::solve" ref="a5bd70647cfd5fd0a5524837186b1e6bd" args="(const BufferInfinite *b, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00010.html">BufferInfinite</a> *&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#aa96ce440189661df023927d5b8f6cb6c">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="afb6133fc6d0b98cfad750711657e18c9"></a><!-- doxytag: member="frepple::Solver::solve" ref="afb6133fc6d0b98cfad750711657e18c9" args="(const Buffer *, void *=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00008.html">Buffer</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#a36f15b9cf822b9977b1a5f855274b698">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="ae69201536d38f7512d9e3e38c7e9c5c8"></a><!-- doxytag: member="frepple::Solver::solve" ref="ae69201536d38f7512d9e3e38c7e9c5c8" args="(const ResourceInfinite *r, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00158.html">ResourceInfinite</a> *&nbsp;</td>
          <td class="paramname"> <em>r</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#afcb6c1c13399ef632d3eac4c21accd63">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="a6ae179fd8274b46658ae51dd172850e8"></a><!-- doxytag: member="frepple::Solver::solve" ref="a6ae179fd8274b46658ae51dd172850e8" args="(const Resource *, void *=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00156.html">Resource</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#ac1008471ead60a51f3aca2b94464a3db">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="a8e98f85c6f99fbda9ffda9f07f07fbdd"></a><!-- doxytag: member="frepple::Solver::solve" ref="a8e98f85c6f99fbda9ffda9f07f07fbdd" args="(const OperationAlternate *o, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00122.html">OperationAlternate</a> *&nbsp;</td>
          <td class="paramname"> <em>o</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#a580fb211c927dc18df88fae9e7ce1c8d">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="a27bc758ece06d7859f20dbfa44ae543f"></a><!-- doxytag: member="frepple::Solver::solve" ref="a27bc758ece06d7859f20dbfa44ae543f" args="(const OperationRouting *o, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00128.html">OperationRouting</a> *&nbsp;</td>
          <td class="paramname"> <em>o</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#af2c3898fc34e77c303b54f2bf1d41ac6">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="aafc0e4eaf47a894084957784fb8476f2"></a><!-- doxytag: member="frepple::Solver::solve" ref="aafc0e4eaf47a894084957784fb8476f2" args="(const OperationTimePer *o, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00130.html">OperationTimePer</a> *&nbsp;</td>
          <td class="paramname"> <em>o</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Definition at line <a class="el" href="a00218_source.html#l01136">1136</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7a63b74f3cdfd763fa0c4cdb8f46ddfa"></a><!-- doxytag: member="frepple::Solver::solve" ref="a7a63b74f3cdfd763fa0c4cdb8f46ddfa" args="(const OperationFixedTime *o, void *v=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00123.html">OperationFixedTime</a> *&nbsp;</td>
          <td class="paramname"> <em>o</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>v</em> = <code>NULL</code></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>Definition at line <a class="el" href="a00218_source.html#l01134">1134</a> of file <a class="el" href="a00218_source.html">model.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1d346012ac2f95d6e5fa0d32d969ddba"></a><!-- doxytag: member="frepple::Solver::solve" ref="a1d346012ac2f95d6e5fa0d32d969ddba" args="(const Operation *, void *=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00121.html">Operation</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#aed1d08dd6ece530ed9229d463e31cca3">frepple::SolverMRP</a>.</p>

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

</div>
</div>
<a class="anchor" id="a156a608f426159a7cda58117a713a66c"></a><!-- doxytag: member="frepple::Solver::solve" ref="a156a608f426159a7cda58117a713a66c" args="(const Demand *, void *=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00051.html">Demand</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> = <code>NULL</code></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>Reimplemented in <a class="el" href="a00173.html#a8552e53484b925c03fcb1d65efefc658">frepple::SolverMRP</a>, and <a class="el" href="a00075.html#ae732b3df58aae09f8edf43409d288632">module_forecast::ForecastSolver</a>.</p>

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

</div>
</div>
<a class="anchor" id="aa24859d5719ee02c89188323f9c47e56"></a><!-- doxytag: member="frepple::Solver::solve" ref="aa24859d5719ee02c89188323f9c47e56" args="(void *=NULL)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void frepple::Solver::solve </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> = <code>NULL</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implemented in <a class="el" href="a00173.html#aa2c15022c8853a62bd83e4ab8a0902e5">frepple::SolverMRP</a>, <a class="el" href="a00075.html#ac3feb97e41920fc9f83dc436b2f7db21">module_forecast::ForecastSolver</a>, and <a class="el" href="a00112.html#ae17238aac24456062ecf2939201e5b74">module_lp_solver::LPSolver</a>.</p>

</div>
</div>
<a class="anchor" id="a6a52d1bf3db700368c4ed5ca9de8d296"></a><!-- doxytag: member="frepple::Solver::solve" ref="a6a52d1bf3db700368c4ed5ca9de8d296" args="(PyObject *, PyObject *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PyObject * frepple::Solver::solve </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><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>Reimplemented in <a class="el" href="a00173.html#aa1a936a6dab4db293a96509cafe6b3b6">frepple::SolverMRP</a>.</p>

<p>Definition at line <a class="el" href="a00238_source.html#l00097">97</a> of file <a class="el" href="a00238_source.html">solver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a710cb60097e6931be16ff0d842e1cb3b"></a><!-- doxytag: member="frepple::Solver::writeElement" ref="a710cb60097e6931be16ff0d842e1cb3b" args="(XMLOutput *, const Keyword &amp;, mode=DEFAULT) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::Solver::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>Reimplemented in <a class="el" href="a00173.html#a8eefc9113d28d22731cbe1d3013f4948">frepple::SolverMRP</a>, <a class="el" href="a00075.html#abb0d7eac37463f328f3f6d87f95bcb06">module_forecast::ForecastSolver</a>, and <a class="el" href="a00112.html#a85c8ba00f73569c997bb002970764aab">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00238_source.html#l00050">50</a> of file <a class="el" href="a00238_source.html">solver.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a71e7d22ae04bc1aa927b489f1f022745"></a><!-- doxytag: member="frepple::Solver::metadata" ref="a71e7d22ae04bc1aa927b489f1f022745" 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="a00171.html#a71e7d22ae04bc1aa927b489f1f022745">frepple::Solver::metadata</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="a00173.html#a8b5bca7cd0d37393e1b20a5b08613a56">frepple::SolverMRP</a>, <a class="el" href="a00075.html#a4927b0e91b356b353486a68be54411a0">module_forecast::ForecastSolver</a>, and <a class="el" href="a00112.html#a06fe14f0a32d32564b39e14933b8dcc1">module_lp_solver::LPSolver</a>.</p>

<p>Definition at line <a class="el" href="a00218_source.html#l01180">1180</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="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>