⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class_easylocal__solver.html

📁 一个tabu search算法框架
💻 HTML
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <title>EasyLocal++ Documentation</title>
  <link href="local.css" rel="stylesheet" type="text/css">
</head>

<body lang="en">

<table width="100%" border="0">
  <tbody>
    <tr>
      <td colspan="2"><h1 class="nojustify">EasyLocal++ Documentation</h1>
        <hr>
      </td>
    </tr>
    <tr>
      <td width="30" align="center">&nbsp;</td>
      <td>
<!-- Generated by Doxygen 1.2.5 on Sat Jun 9 18:59:35 2001 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="namespacemembers.html">Namespace Members</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; </center>
<hr><h1>easylocal::Solver  Class Template Reference</h1><code>#include &lt;<a class="el" href="EasyLocal_h-source.html">EasyLocal.h</a>&gt;</code>
<p>
Inheritance diagram for easylocal::Solver<p><center><img src="class_easylocal__Solver_inherit_graph.gif" border="0" usemap="#easylocal::Solver_inherit_map" alt="Inheritance graph"></center>
<map name="easylocal::Solver_inherit_map">
<area href="class_easylocal__LocalSearchSolver.html" shape="rect" coords="196,133,367,152">
<area href="class_easylocal__AbstractSolver.html" shape="rect" coords="207,0,356,18">
<area href="class_easylocal__MultiRunnerSolver.html" shape="rect" coords="96,200,269,218">
<area href="class_easylocal__SimpleLocalSearch.html" shape="rect" coords="293,200,467,218">
<area href="class_easylocal__ComparativeSolver.html" shape="rect" coords="0,266,173,285">
<area href="class_easylocal__TokenRingSolver.html" shape="rect" coords="197,266,363,285">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for easylocal::Solver:<p><center><img src="class_easylocal__Solver_coll_graph.gif" border="0" usemap="#easylocal::Solver_coll_map" alt="Collaboration graph"></center>
<map name="easylocal::Solver_coll_map">
<area href="class_easylocal__AbstractSolver.html" shape="rect" coords="0,0,149,18">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="class_easylocal__Solver-members.html">List of all members.</a><h2>Public Methods</h2>
<ul>
<li>virtual void <a class="el" href="class_easylocal__Solver.html#a0">Solve</a> ()=0
<li>virtual void <a class="el" href="class_easylocal__Solver.html#a1">SetInput</a> (Input *in)
<li>Input* <a class="el" href="class_easylocal__Solver.html#a2">GetInput</a> ()
<li>Output* <a class="el" href="class_easylocal__Solver.html#a3">GetOutput</a> ()
<li>void <a class="el" href="class_easylocal__Solver.html#a4">SetOutput</a> (Output *out)
</ul>
<h2>Protected Methods</h2>
<ul>
<li><a class="el" href="class_easylocal__Solver.html#b0">Solver</a> (Input *in=NULL, Output *out=NULL)
<li>virtual void <a class="el" href="class_easylocal__Solver.html#b1">DeliverOutput</a> ()=0
</ul>
<h2>Protected Attributes</h2>
<ul>
<li>Input* <a class="el" href="class_easylocal__Solver.html#n0">p_in</a>
<li>Output* <a class="el" href="class_easylocal__Solver.html#n1">p_out</a>
</ul>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class Input, class Output&gt;  class easylocal::Solver</h3>

A <a class="el" href="class_easylocal__Solver.html">Solver</a> represents the external layer of EasyLocal++; it implements the Abstract <a class="el" href="class_easylocal__Solver.html">Solver</a> interface and furthermore is parametrized with the Input and Output of the problem. @ingroup Solvers 
<p>

<p>
Definition at line <a class="el" href="EasyLocal_h-source.html#l00804">804</a> of file <a class="el" href="EasyLocal_h-source.html">EasyLocal.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="b0" doxytag="easylocal::Solver::Solver"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
easylocal::Solver&lt; Input, Output &gt;::Solver&lt;Input, Output&gt; (
          </b></td>
          <td valign="bottom"><b>
Input * <em>in</em> = NULL, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
Output * <em>out</em> = NULL&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Constructs a solver by providing it an input and an output objects.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>in</em>
&nbsp;</td><td>
 a pointer to an input object </td></tr>
<tr><td valign=top><em>out</em>
&nbsp;</td><td>
 a pointer to an output object </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l01583">1583</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="b1" doxytag="easylocal::Solver::DeliverOutput"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
void easylocal::Solver&lt;Input, Output&gt;::DeliverOutput (
          </b></td>
          <td valign="bottom"><b>
)<code> [protected, pure virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Updates the output by translating the best state found by the solver to an output object. 
<p>
Reimplemented in <a class="el" href="class_easylocal__LocalSearchSolver.html#b3">easylocal::LocalSearchSolver</a>.    </td>
  </tr>
</table>
<a name="a2" doxytag="easylocal::Solver::GetInput"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
Input * easylocal::Solver&lt; Input, Output &gt;::GetInput (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns the input pointer which the object is attached to.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
 the pointer to the input </dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l01593">1593</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.
<p>
Referenced by <a class="el" href="EasyLocalTemplates_cpp-source.html#l01923">easylocal::TokenRingSolver::Check</a>().    </td>
  </tr>
</table>
<a name="a3" doxytag="easylocal::Solver::GetOutput"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
Output * easylocal::Solver&lt; Input, Output &gt;::GetOutput (
          </b></td>
          <td valign="bottom"><b>
)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns the output pointer which the object is attached to.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
 the pointer to the output </dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l01602">1602</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.    </td>
  </tr>
</table>
<a name="a1" doxytag="easylocal::Solver::SetInput"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
void easylocal::Solver&lt; Input, Output &gt;::SetInput (
          </b></td>
          <td valign="bottom"><b>
Input * <em>in</em>&nbsp;)<code> [virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets the internal input pointer to the new value passed as parameter.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>in</em>
&nbsp;</td><td>
 a pointer to the new input object </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="class_easylocal__LocalSearchSolver.html#a4">easylocal::LocalSearchSolver</a>.
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l01564">1564</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.    </td>
  </tr>
</table>
<a name="a4" doxytag="easylocal::Solver::SetOutput"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
void easylocal::Solver&lt; Input, Output &gt;::SetOutput (
          </b></td>
          <td valign="bottom"><b>
Output * <em>out</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets the internal output pointer to the new value passed as parameter.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>out</em>
&nbsp;</td><td>
 a pointer to the new output object </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l01573">1573</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.    </td>
  </tr>
</table>
<a name="a0" doxytag="easylocal::Solver::Solve"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
virtual void easylocal::Solver&lt;Input, Output&gt;::Solve (
          </b></td>
          <td valign="bottom"><b>
)<code> [pure virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Performs a full solving procedure by finding an initial state,  running the attached runner and delivering the output. 
<p>
Reimplemented from <a class="el" href="class_easylocal__AbstractSolver.html#a1">easylocal::AbstractSolver</a>.
<p>
Reimplemented in <a class="el" href="class_easylocal__LocalSearchSolver.html#a1">easylocal::LocalSearchSolver</a>.    </td>
  </tr>
</table>
<hr><h2>Member Data Documentation</h2>
<a name="n0" doxytag="easylocal::Solver::p_in"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
Input * easylocal::Solver&lt;Input, Output&gt;::p_in<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
A pointer to the input object. 
<p>
Definition at line <a class="el" href="EasyLocal_h-source.html#l00817">817</a> of file <a class="el" href="EasyLocal_h-source.html">EasyLocal.h</a>.    </td>
  </tr>
</table>
<a name="n1" doxytag="easylocal::Solver::p_out"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td colspan="2"><b>
template&lt;class Input, class Output&gt;           </b></td>
        </tr>
        <tr>
          <td nowrap valign="top"><b> 
Output * easylocal::Solver&lt;Input, Output&gt;::p_out<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
A pointer to the output object. 
<p>
Definition at line <a class="el" href="EasyLocal_h-source.html#l00818">818</a> of file <a class="el" href="EasyLocal_h-source.html">EasyLocal.h</a>.    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="EasyLocal_h-source.html">EasyLocal.h</a><li><a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a></ul>
      </td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><hr>
        <span class="mark">Go to:</span> the <a href="index.html">Main Page</a> of the documentation.
      </td>
    </tr>
  </tbody>
</table>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -