Sophie

Sophie

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

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::SolverMRP::SolverMRPdata 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="a00173.html">SolverMRP</a>::<a class="el" href="a00174.html">SolverMRPdata</a>
  </div>
</div>
<div class="contents">
<h1>frepple::SolverMRP::SolverMRPdata Class Reference</h1><!-- doxytag: class="frepple::SolverMRP::SolverMRPdata" --><!-- doxytag: inherits="frepple::utils::CommandList" -->
<p>This class is a helper class of the <a class="el" href="a00173.html" title="This solver implements a heuristic algorithm for planning demands.">SolverMRP</a> class.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00239_source.html">solver.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for frepple::SolverMRP::SolverMRPdata:</div>
<div class="dynsection">
<div class="center"><img src="a00542.png" border="0" usemap="#frepple_1_1_solver_m_r_p_1_1_solver_m_r_pdata_inherit__map" alt="Inheritance graph"/></div>
<map name="frepple_1_1_solver_m_r_p_1_1_solver_m_r_pdata_inherit__map" id="frepple_1_1_solver_m_r_p_1_1_solver_m_r_pdata_inherit__map">
<area shape="rect" id="node2" href="a00029.html" title="A container command to group a series of commands together." alt="" coords="29,83,208,111"/>
<area shape="rect" id="node4" href="a00025.html" title="Abstract base class for all commands." alt="" coords="40,6,197,34"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="a00543.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="a00174.html#acc70df491327f7ca8e3f7f2f8fe59305">execute</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a57e1ece095107af5bc03387ba117b867">getLogLevel</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a32aafa0108de9b858757a841264de27c">getSize</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00173.html">SolverMRP</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a1d6f62b1c53725b796ea1c4f8843b85d">getSolver</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="a00174.html#a62e3658a9cd13d7d059b10016e1aea04">getType</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#ae4ba2e9c29cecac8c2575e3325aef863">getVerbose</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a8f732ee498931ff8220a6392c68839e1">pop</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a99c25a0cbb86773a59443cc81e9d915e">push</a> (double q=0.0, <a class="el" href="a00049.html">Date</a> d=Date::infiniteFuture)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a664bd9c338026b290eb6ae0d5bede25d">SolverMRPdata</a> (<a class="el" href="a00173.html">SolverMRP</a> *s=NULL, int c=0, deque&lt; <a class="el" href="a00051.html">Demand</a> * &gt; *d=NULL)</td></tr>
<tr><td colspan="2"><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00175.html">State</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#ae5186f8cb969f0a29000927df25ce66d">prevstate</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00175.html">State</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a592e60ca8e03a80e5460bfb1bf973b4e">state</a></td></tr>
<tr><td colspan="2"><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00174.html#a422d4ff7cfe9cadaaf996aa8ae53ec52">SolverMRP</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This class is a helper class of the <a class="el" href="a00173.html" title="This solver implements a heuristic algorithm for planning demands.">SolverMRP</a> class. </p>
<p>It stores the solver state maintained by each solver thread. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00173.html" title="This solver implements a heuristic algorithm for planning demands.">SolverMRP</a> </dd></dl>

<p>Definition at line <a class="el" href="a00239_source.html#l00534">534</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a664bd9c338026b290eb6ae0d5bede25d"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::SolverMRPdata" ref="a664bd9c338026b290eb6ae0d5bede25d" args="(SolverMRP *s=NULL, int c=0, deque&lt; Demand * &gt; *d=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">frepple::SolverMRP::SolverMRPdata::SolverMRPdata </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00173.html">SolverMRP</a> *&nbsp;</td>
          <td class="paramname"> <em>s</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>c</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">deque&lt; <a class="el" href="a00051.html">Demand</a> * &gt; *&nbsp;</td>
          <td class="paramname"> <em>d</em> = <code>NULL</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Constructor. </p>

<p>Definition at line <a class="el" href="a00239_source.html#l00542">542</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="acc70df491327f7ca8e3f7f2f8fe59305"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::execute" ref="acc70df491327f7ca8e3f7f2f8fe59305" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::SolverMRP::SolverMRPdata::execute </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This function runs a single planning thread. Such a thread will loop through the following steps:</p>
<ul>
<li>Use the method next_cluster() to find another unplanned cluster.</li>
<li>Exit the thread if no more cluster is found.</li>
<li>Sort all demands in the cluster, using the <a class="el" href="a00173.html#a3a53347a65ba93402d3d1de0b14ce0e1">demand_comparison()</a> method.</li>
<li>Loop through the sorted list of demands and plan each of them. During planning the demands exceptions are caught, and the planning loop will simply move on to the next demand. In this way, an error in a part of the model doesn't ruin the complete plan. <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00173.html#a3a53347a65ba93402d3d1de0b14ce0e1">demand_comparison</a> </dd>
<dd>
next_cluster </dd></dl>
</li>
</ul>

<p>Reimplemented from <a class="el" href="a00029.html#a3ab89f96275985cb36836157a719cf9a">frepple::utils::CommandList</a>.</p>

<p>Definition at line <a class="el" href="a00245_source.html#l00079">79</a> of file <a class="el" href="a00245_source.html">solverplan.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a57e1ece095107af5bc03387ba117b867"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::getLogLevel" ref="a57e1ece095107af5bc03387ba117b867" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned short frepple::SolverMRP::SolverMRPdata::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>Verbose mode is inherited from the solver. </p>

<p>Definition at line <a class="el" href="a00239_source.html#l00547">547</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a32aafa0108de9b858757a841264de27c"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::getSize" ref="a32aafa0108de9b858757a841264de27c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t frepple::SolverMRP::SolverMRPdata::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>Definition at line <a class="el" href="a00239_source.html#l00566">566</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1d6f62b1c53725b796ea1c4f8843b85d"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::getSolver" ref="a1d6f62b1c53725b796ea1c4f8843b85d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00173.html">SolverMRP</a>* frepple::SolverMRP::SolverMRPdata::getSolver </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the solver. </p>

<p>Definition at line <a class="el" href="a00239_source.html#l00539">539</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a62e3658a9cd13d7d059b10016e1aea04"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::getType" ref="a62e3658a9cd13d7d059b10016e1aea04" 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::SolverMRP::SolverMRPdata::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>Definition at line <a class="el" href="a00239_source.html#l00565">565</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae4ba2e9c29cecac8c2575e3325aef863"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::getVerbose" ref="ae4ba2e9c29cecac8c2575e3325aef863" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool frepple::SolverMRP::SolverMRPdata::getVerbose </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 whether verbose output is required during the execution of the command. </p>

<p>Reimplemented from <a class="el" href="a00025.html#a78c1d8e342cd245457d2cdde4e471f42">frepple::utils::Command</a>.</p>

<p>Definition at line <a class="el" href="a00239_source.html#l00568">568</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8f732ee498931ff8220a6392c68839e1"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::pop" ref="a8f732ee498931ff8220a6392c68839e1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::SolverMRP::SolverMRPdata::pop </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Removes a state from the status stack. </p>

<p>Definition at line <a class="el" href="a00239_source.html#l00592">592</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a99c25a0cbb86773a59443cc81e9d915e"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::push" ref="a99c25a0cbb86773a59443cc81e9d915e" args="(double q=0.0, Date d=Date::infiniteFuture)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void frepple::SolverMRP::SolverMRPdata::push </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>q</em> = <code>0.0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00049.html">Date</a>&nbsp;</td>
          <td class="paramname"> <em>d</em> = <code>Date::infiniteFuture</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Add a new state to the status stack. </p>

<p>Definition at line <a class="el" href="a00239_source.html#l00574">574</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a422d4ff7cfe9cadaaf996aa8ae53ec52"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::SolverMRP" ref="a422d4ff7cfe9cadaaf996aa8ae53ec52" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">friend class <a class="el" href="a00173.html">SolverMRP</a><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00239_source.html#l00536">536</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="ae5186f8cb969f0a29000927df25ce66d"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::prevstate" ref="ae5186f8cb969f0a29000927df25ce66d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00175.html">State</a>* <a class="el" href="a00174.html#ae5186f8cb969f0a29000927df25ce66d">frepple::SolverMRP::SolverMRPdata::prevstate</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Pointer to the solver status one level higher on the stack. </p>

<p>Definition at line <a class="el" href="a00239_source.html#l00630">630</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a592e60ca8e03a80e5460bfb1bf973b4e"></a><!-- doxytag: member="frepple::SolverMRP::SolverMRPdata::state" ref="a592e60ca8e03a80e5460bfb1bf973b4e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00175.html">State</a>* <a class="el" href="a00174.html#a592e60ca8e03a80e5460bfb1bf973b4e">frepple::SolverMRP::SolverMRPdata::state</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Pointer to the current solver status. </p>

<p>Definition at line <a class="el" href="a00239_source.html#l00627">627</a> of file <a class="el" href="a00239_source.html">solver.h</a>.</p>

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