Files
ortools-clone/docs/cpp_routing/classoperations__research_1_1PairNodeSwapActiveOperator.html
Corentin Le Molgat b670dc9daa Update doc
2020-04-23 15:34:43 +02:00

2834 lines
144 KiB
HTML

<!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>
<title>OR-Tools</title>
<meta http-equiv="Content-Type" content="text/html;"/>
<meta charset="utf-8"/>
<!--<link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
<link rel="stylesheet" type="text/css" href="ortools.css" title="default" media="screen,print" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
</head>
<body>
<div id="banner-container">
<div id="banner">
<span id="sfml">Google OR-Tools 7.5</span>
</div>
</div>
<div id="content" style="width: 100%; overflow: hidden;">
<div style="margin-left: 15px; margin-top: 5px; float: left; color: #145A32;">
<h2>C++ Reference</h2>
<ul>
<li><a href="../cpp_algorithms/annotated.html">Algorithms</a></li>
<li><a href="../cpp_sat/annotated.html">CP-SAT</a></li>
<li><a href="../cpp_graph/annotated.html">Graph</a></li>
<li><a href="../cpp_routing/annotated.html">Routing</a></li>
<li><a href="../cpp_linear/annotated.html">Linear solver</a></li>
</ul>
</div>
<div id="content">
<div align="center">
<h1 style="color: #145A32;">C++ Reference: Routing</h1>
</div>
<!-- Generated by Doxygen 1.8.16 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<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>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceoperations__research.html">operations_research</a></li><li class="navelem"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html">PairNodeSwapActiveOperator</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classoperations__research_1_1PairNodeSwapActiveOperator-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">PairNodeSwapActiveOperator&lt; swap_first &gt;</div> </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;bool swap_first&gt;<br />
class operations_research::PairNodeSwapActiveOperator&lt; swap_first &gt;</h3>
<p>Operator which inserts pairs of inactive nodes into a path and makes an active node inactive. </p>
<p>There are two versions:</p><ul>
<li>one which makes inactive the node being replaced by the first node of the pair (with swap_first true);</li>
<li>one which makes inactive the node being replaced by the second node of the pair (with swap_first false). </li>
</ul>
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00490">490</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:acdd31200c2524bec658d661041cdc74f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#acdd31200c2524bec658d661041cdc74f">PairNodeSwapActiveOperator</a> (const std::vector&lt; <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * &gt; &amp;vars, const std::vector&lt; <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * &gt; &amp;secondary_vars, std::function&lt; int(int64)&gt; start_empty_path_class, const <a class="el" href="namespaceoperations__research.html#aef7db0bee0a22d1791d040fd3853f3b7">RoutingIndexPairs</a> &amp;index_pairs)</td></tr>
<tr class="separator:acdd31200c2524bec658d661041cdc74f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55d9f370d9aaabb24d7da1ffc7f65ccd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#a55d9f370d9aaabb24d7da1ffc7f65ccd">~PairNodeSwapActiveOperator</a> () override</td></tr>
<tr class="separator:a55d9f370d9aaabb24d7da1ffc7f65ccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b47576627076cc054924a89a08f69a6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#a2b47576627076cc054924a89a08f69a6">MakeNextNeighbor</a> (<a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *delta, <a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *deltadelta) override</td></tr>
<tr class="memdesc:a2b47576627076cc054924a89a08f69a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Redefines MakeNextNeighbor to export a simpler interface. <a href="classoperations__research_1_1PairNodeSwapActiveOperator.html#a2b47576627076cc054924a89a08f69a6">More...</a><br /></td></tr>
<tr class="separator:a2b47576627076cc054924a89a08f69a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24ea165f00f8e15de94958fc804ff209"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#a24ea165f00f8e15de94958fc804ff209">MakeNeighbor</a> () override</td></tr>
<tr class="separator:a24ea165f00f8e15de94958fc804ff209"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed804747c45a7e1caf81461f9e45dd91"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#aed804747c45a7e1caf81461f9e45dd91">DebugString</a> () const override</td></tr>
<tr class="separator:aed804747c45a7e1caf81461f9e45dd91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af82f4acaed7bb39d568e689a9caa63d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#af82f4acaed7bb39d568e689a9caa63d5">Reset</a> () override</td></tr>
<tr class="separator:af82f4acaed7bb39d568e689a9caa63d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8d4a4b8ea73184cedcc0be51f6a3921"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#aa8d4a4b8ea73184cedcc0be51f6a3921">SkipUnchanged</a> (int index) const override</td></tr>
<tr class="separator:aa8d4a4b8ea73184cedcc0be51f6a3921"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8f198c7897dd232096df08f2123582a"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#aa8f198c7897dd232096df08f2123582a">Next</a> (int64 node) const</td></tr>
<tr class="memdesc:aa8f198c7897dd232096df08f2123582a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the node after node in the current delta. <a href="classoperations__research_1_1PathOperator.html#aa8f198c7897dd232096df08f2123582a">More...</a><br /></td></tr>
<tr class="separator:aa8f198c7897dd232096df08f2123582a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0decf38e47940df0bf389bd3e8ba173"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#aa0decf38e47940df0bf389bd3e8ba173">Prev</a> (int64 node) const</td></tr>
<tr class="memdesc:aa0decf38e47940df0bf389bd3e8ba173"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the node before node in the current delta. <a href="classoperations__research_1_1PathOperator.html#aa0decf38e47940df0bf389bd3e8ba173">More...</a><br /></td></tr>
<tr class="separator:aa0decf38e47940df0bf389bd3e8ba173"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae507915e833da66ed7371b87f6fc61ff"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ae507915e833da66ed7371b87f6fc61ff">Path</a> (int64 node) const</td></tr>
<tr class="memdesc:ae507915e833da66ed7371b87f6fc61ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the index of the path to which node belongs in the current delta. <a href="classoperations__research_1_1PathOperator.html#ae507915e833da66ed7371b87f6fc61ff">More...</a><br /></td></tr>
<tr class="separator:ae507915e833da66ed7371b87f6fc61ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a208d45797eebd7cad439cc43b049103d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a208d45797eebd7cad439cc43b049103d">number_of_nexts</a> () const</td></tr>
<tr class="memdesc:a208d45797eebd7cad439cc43b049103d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of next variables. <a href="classoperations__research_1_1PathOperator.html#a208d45797eebd7cad439cc43b049103d">More...</a><br /></td></tr>
<tr class="separator:a208d45797eebd7cad439cc43b049103d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35de616bef50b1661e3133761f7260e1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a35de616bef50b1661e3133761f7260e1">HoldsDelta</a> () const override</td></tr>
<tr class="separator:a35de616bef50b1661e3133761f7260e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeacffb05338262fd232dc77fed8cc586"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aeacffb05338262fd232dc77fed8cc586">Start</a> (const <a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *assignment) override</td></tr>
<tr class="memdesc:aeacffb05338262fd232dc77fed8cc586"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should not be overridden. <a href="classoperations__research_1_1VarLocalSearchOperator.html#aeacffb05338262fd232dc77fed8cc586">More...</a><br /></td></tr>
<tr class="separator:aeacffb05338262fd232dc77fed8cc586"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa21d5f9b4adc94167e3a466095d82fd5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aa21d5f9b4adc94167e3a466095d82fd5">IsIncremental</a> () const</td></tr>
<tr class="separator:aa21d5f9b4adc94167e3a466095d82fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24926108b770033792d015cb86aeffb3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a24926108b770033792d015cb86aeffb3">Size</a> () const</td></tr>
<tr class="separator:a24926108b770033792d015cb86aeffb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d7b37de1f314b5dddb025a11d57e1e0"><td class="memItemLeft" align="right" valign="top">const int64 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a8d7b37de1f314b5dddb025a11d57e1e0">Value</a> (int64 index) const</td></tr>
<tr class="memdesc:a8d7b37de1f314b5dddb025a11d57e1e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value in the current assignment of the variable of given index. <a href="classoperations__research_1_1VarLocalSearchOperator.html#a8d7b37de1f314b5dddb025a11d57e1e0">More...</a><br /></td></tr>
<tr class="separator:a8d7b37de1f314b5dddb025a11d57e1e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8beb998a68abceb71f87d3bc8a35bd78"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a8beb998a68abceb71f87d3bc8a35bd78">Var</a> (int64 index) const</td></tr>
<tr class="memdesc:a8beb998a68abceb71f87d3bc8a35bd78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the variable of given index. <a href="classoperations__research_1_1VarLocalSearchOperator.html#a8beb998a68abceb71f87d3bc8a35bd78">More...</a><br /></td></tr>
<tr class="separator:a8beb998a68abceb71f87d3bc8a35bd78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0cd6b9a608c61a52933fd53d53873af"><td class="memItemLeft" align="right" valign="top">const int64 &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#af0cd6b9a608c61a52933fd53d53873af">OldValue</a> (int64 index) const</td></tr>
<tr class="separator:af0cd6b9a608c61a52933fd53d53873af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5f56c8c139f332cacfbd598c269887a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#af5f56c8c139f332cacfbd598c269887a">SetValue</a> (int64 index, const int64 &amp;value)</td></tr>
<tr class="separator:af5f56c8c139f332cacfbd598c269887a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff9b327f2a97858ac30a718bba4029c0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aff9b327f2a97858ac30a718bba4029c0">Activated</a> (int64 index) const</td></tr>
<tr class="separator:aff9b327f2a97858ac30a718bba4029c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebf766478091209b6170b5de179f9067"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aebf766478091209b6170b5de179f9067">Activate</a> (int64 index)</td></tr>
<tr class="separator:aebf766478091209b6170b5de179f9067"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcdbe360c416a4cbb906188a13860d7f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#abcdbe360c416a4cbb906188a13860d7f">Deactivate</a> (int64 index)</td></tr>
<tr class="separator:abcdbe360c416a4cbb906188a13860d7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabafb6d8996f5101db26b30efff406b0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aabafb6d8996f5101db26b30efff406b0">ApplyChanges</a> (<a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *delta, <a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *deltadelta) const</td></tr>
<tr class="separator:aabafb6d8996f5101db26b30efff406b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06eb05df61a9b9fce744928947f43d89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a06eb05df61a9b9fce744928947f43d89">RevertChanges</a> (bool incremental)</td></tr>
<tr class="separator:a06eb05df61a9b9fce744928947f43d89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2af73491ab2aa6804b443d442026a5e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#ae2af73491ab2aa6804b443d442026a5e">AddVars</a> (const std::vector&lt; <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * &gt; &amp;vars)</td></tr>
<tr class="separator:ae2af73491ab2aa6804b443d442026a5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2030c5ed835cf4196e8cab0033a6d7bd"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classoperations__research_1_1LocalSearchOperator.html">LocalSearchOperator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1LocalSearchOperator.html#a2030c5ed835cf4196e8cab0033a6d7bd">Self</a> () const</td></tr>
<tr class="separator:a2030c5ed835cf4196e8cab0033a6d7bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b0063f805d92ed061848616d08f4664"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1LocalSearchOperator.html#a1b0063f805d92ed061848616d08f4664">HasFragments</a> () const</td></tr>
<tr class="separator:a1b0063f805d92ed061848616d08f4664"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ac7df4d8cca71e3ceb0e5b8c0c53bc50f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#ac7df4d8cca71e3ceb0e5b8c0c53bc50f">OnSamePathAsPreviousBase</a> (int64 base_index) override</td></tr>
<tr class="memdesc:ac7df4d8cca71e3ceb0e5b8c0c53bc50f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if a base node has to be on the same path as the "previous" base node (base node of index base_index - 1). <a href="classoperations__research_1_1PairNodeSwapActiveOperator.html#ac7df4d8cca71e3ceb0e5b8c0c53bc50f">More...</a><br /></td></tr>
<tr class="separator:ac7df4d8cca71e3ceb0e5b8c0c53bc50f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5f473fb19f98b38567ace0fa11f58b0"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#ad5f473fb19f98b38567ace0fa11f58b0">GetBaseNodeRestartPosition</a> (int base_index) override</td></tr>
<tr class="memdesc:ad5f473fb19f98b38567ace0fa11f58b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the index of the node to which the base node of index base_index must be set to when it reaches the end of a path. <a href="classoperations__research_1_1PairNodeSwapActiveOperator.html#ad5f473fb19f98b38567ace0fa11f58b0">More...</a><br /></td></tr>
<tr class="separator:ad5f473fb19f98b38567ace0fa11f58b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab68dfb72803f3ee3116e4425113ed11"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#aab68dfb72803f3ee3116e4425113ed11">RestartAtPathStartOnSynchronize</a> () override</td></tr>
<tr class="memdesc:aab68dfb72803f3ee3116e4425113ed11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Required to ensure that after synchronization the operator is in a state compatible with GetBaseNodeRestartPosition. <a href="classoperations__research_1_1PairNodeSwapActiveOperator.html#aab68dfb72803f3ee3116e4425113ed11">More...</a><br /></td></tr>
<tr class="separator:aab68dfb72803f3ee3116e4425113ed11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad14cde260686e5b4174e691675df3139"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ad14cde260686e5b4174e691675df3139">MakeOneNeighbor</a> () override</td></tr>
<tr class="memdesc:ad14cde260686e5b4174e691675df3139"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should not be overridden. Override <a class="el" href="classoperations__research_1_1PathOperator.html#a10ae14d6daad9088377260420952f814">MakeNeighbor()</a> instead. <a href="classoperations__research_1_1PathOperator.html#ad14cde260686e5b4174e691675df3139">More...</a><br /></td></tr>
<tr class="separator:ad14cde260686e5b4174e691675df3139"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a124f2992de28f11a185072ba4df5441b"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a124f2992de28f11a185072ba4df5441b">BaseNode</a> (int i) const</td></tr>
<tr class="memdesc:a124f2992de28f11a185072ba4df5441b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the ith base node of the operator. <a href="classoperations__research_1_1PathOperator.html#a124f2992de28f11a185072ba4df5441b">More...</a><br /></td></tr>
<tr class="separator:a124f2992de28f11a185072ba4df5441b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a752100eca408efb4a9392f16f21f9cf7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a752100eca408efb4a9392f16f21f9cf7">BaseAlternative</a> (int i) const</td></tr>
<tr class="memdesc:a752100eca408efb4a9392f16f21f9cf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the alternative for the ith base node. <a href="classoperations__research_1_1PathOperator.html#a752100eca408efb4a9392f16f21f9cf7">More...</a><br /></td></tr>
<tr class="separator:a752100eca408efb4a9392f16f21f9cf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a088d80df6df63def37e43b73dc9b1d80"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a088d80df6df63def37e43b73dc9b1d80">BaseAlternativeNode</a> (int i) const</td></tr>
<tr class="memdesc:a088d80df6df63def37e43b73dc9b1d80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the alternative node for the ith base node. <a href="classoperations__research_1_1PathOperator.html#a088d80df6df63def37e43b73dc9b1d80">More...</a><br /></td></tr>
<tr class="separator:a088d80df6df63def37e43b73dc9b1d80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bc40a93b9ba709cfb3ca78cea7435e1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a5bc40a93b9ba709cfb3ca78cea7435e1">BaseSiblingAlternative</a> (int i) const</td></tr>
<tr class="memdesc:a5bc40a93b9ba709cfb3ca78cea7435e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the alternative for the sibling of the ith base node. <a href="classoperations__research_1_1PathOperator.html#a5bc40a93b9ba709cfb3ca78cea7435e1">More...</a><br /></td></tr>
<tr class="separator:a5bc40a93b9ba709cfb3ca78cea7435e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac41fc10e374ef9221ffca09da9e1c981"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ac41fc10e374ef9221ffca09da9e1c981">BaseSiblingAlternativeNode</a> (int i) const</td></tr>
<tr class="memdesc:ac41fc10e374ef9221ffca09da9e1c981"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the alternative node for the sibling of the ith base node. <a href="classoperations__research_1_1PathOperator.html#ac41fc10e374ef9221ffca09da9e1c981">More...</a><br /></td></tr>
<tr class="separator:ac41fc10e374ef9221ffca09da9e1c981"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4e3bf1bd6d335ad6be0b0d100e3bd6a"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#aa4e3bf1bd6d335ad6be0b0d100e3bd6a">StartNode</a> (int i) const</td></tr>
<tr class="memdesc:aa4e3bf1bd6d335ad6be0b0d100e3bd6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the start node of the ith base node. <a href="classoperations__research_1_1PathOperator.html#aa4e3bf1bd6d335ad6be0b0d100e3bd6a">More...</a><br /></td></tr>
<tr class="separator:aa4e3bf1bd6d335ad6be0b0d100e3bd6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61caffe27afd7d6e0c94f1907f1b3b53"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; int64 &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a61caffe27afd7d6e0c94f1907f1b3b53">path_starts</a> () const</td></tr>
<tr class="memdesc:a61caffe27afd7d6e0c94f1907f1b3b53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the vector of path start nodes. <a href="classoperations__research_1_1PathOperator.html#a61caffe27afd7d6e0c94f1907f1b3b53">More...</a><br /></td></tr>
<tr class="separator:a61caffe27afd7d6e0c94f1907f1b3b53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11b8ad366b686132736854e7029e7bff"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a11b8ad366b686132736854e7029e7bff">PathClass</a> (int i) const</td></tr>
<tr class="memdesc:a11b8ad366b686132736854e7029e7bff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the class of the path of the ith base node. <a href="classoperations__research_1_1PathOperator.html#a11b8ad366b686132736854e7029e7bff">More...</a><br /></td></tr>
<tr class="separator:a11b8ad366b686132736854e7029e7bff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c928a4ff549033f6b44e423ec61b0d5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a2c928a4ff549033f6b44e423ec61b0d5">SetNextBaseToIncrement</a> (int64 base_index)</td></tr>
<tr class="memdesc:a2c928a4ff549033f6b44e423ec61b0d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the next base to increment on next iteration. <a href="classoperations__research_1_1PathOperator.html#a2c928a4ff549033f6b44e423ec61b0d5">More...</a><br /></td></tr>
<tr class="separator:a2c928a4ff549033f6b44e423ec61b0d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3062cf7eeb53d8cc4cc02e3359d27531"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a3062cf7eeb53d8cc4cc02e3359d27531">ConsiderAlternatives</a> (int64 base_index) const</td></tr>
<tr class="memdesc:a3062cf7eeb53d8cc4cc02e3359d27531"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates if alternatives should be considered when iterating over base nodes. <a href="classoperations__research_1_1PathOperator.html#a3062cf7eeb53d8cc4cc02e3359d27531">More...</a><br /></td></tr>
<tr class="separator:a3062cf7eeb53d8cc4cc02e3359d27531"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e645c04c651a5cd0c5b1474c503713c"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a6e645c04c651a5cd0c5b1474c503713c">OldNext</a> (int64 node) const</td></tr>
<tr class="separator:a6e645c04c651a5cd0c5b1474c503713c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae73fcc01833bc6a858e474320d37293f"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ae73fcc01833bc6a858e474320d37293f">OldPrev</a> (int64 node) const</td></tr>
<tr class="separator:ae73fcc01833bc6a858e474320d37293f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3979c66b95f3836e8257f41924952a8c"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a3979c66b95f3836e8257f41924952a8c">OldPath</a> (int64 node) const</td></tr>
<tr class="separator:a3979c66b95f3836e8257f41924952a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce7de594ac758357d23d1e4b087ebf0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#afce7de594ac758357d23d1e4b087ebf0">MoveChain</a> (int64 before_chain, int64 chain_end, int64 destination)</td></tr>
<tr class="memdesc:afce7de594ac758357d23d1e4b087ebf0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves the chain starting after the node before_chain and ending at the node chain_end after the node destination. <a href="classoperations__research_1_1PathOperator.html#afce7de594ac758357d23d1e4b087ebf0">More...</a><br /></td></tr>
<tr class="separator:afce7de594ac758357d23d1e4b087ebf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62997309da1aeeee36192ffa09700eec"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a62997309da1aeeee36192ffa09700eec">ReverseChain</a> (int64 before_chain, int64 after_chain, int64 *chain_last)</td></tr>
<tr class="memdesc:a62997309da1aeeee36192ffa09700eec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reverses the chain starting after before_chain and ending before after_chain. <a href="classoperations__research_1_1PathOperator.html#a62997309da1aeeee36192ffa09700eec">More...</a><br /></td></tr>
<tr class="separator:a62997309da1aeeee36192ffa09700eec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b1a0ecf6778a8018576d94b3c73930b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a8b1a0ecf6778a8018576d94b3c73930b">MakeActive</a> (int64 node, int64 destination)</td></tr>
<tr class="memdesc:a8b1a0ecf6778a8018576d94b3c73930b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert the inactive node after destination. <a href="classoperations__research_1_1PathOperator.html#a8b1a0ecf6778a8018576d94b3c73930b">More...</a><br /></td></tr>
<tr class="separator:a8b1a0ecf6778a8018576d94b3c73930b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfe2c499f99ed814dbdd8e75db63ae3e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#adfe2c499f99ed814dbdd8e75db63ae3e">MakeChainInactive</a> (int64 before_chain, int64 chain_end)</td></tr>
<tr class="memdesc:adfe2c499f99ed814dbdd8e75db63ae3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Makes the nodes on the chain starting after before_chain and ending at chain_end inactive. <a href="classoperations__research_1_1PathOperator.html#adfe2c499f99ed814dbdd8e75db63ae3e">More...</a><br /></td></tr>
<tr class="separator:adfe2c499f99ed814dbdd8e75db63ae3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a111c4d7dd49f12c67d97d16e9c473c79"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a111c4d7dd49f12c67d97d16e9c473c79">SwapActiveAndInactive</a> (int64 active, int64 inactive)</td></tr>
<tr class="memdesc:a111c4d7dd49f12c67d97d16e9c473c79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replaces active by inactive in the current path, making active inactive. <a href="classoperations__research_1_1PathOperator.html#a111c4d7dd49f12c67d97d16e9c473c79">More...</a><br /></td></tr>
<tr class="separator:a111c4d7dd49f12c67d97d16e9c473c79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75322f62fb4d3c731035035f7d6aa3a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a75322f62fb4d3c731035035f7d6aa3a4">SetNext</a> (int64 from, int64 to, int64 path)</td></tr>
<tr class="memdesc:a75322f62fb4d3c731035035f7d6aa3a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets 'to' to be the node after 'from' on the given path. <a href="classoperations__research_1_1PathOperator.html#a75322f62fb4d3c731035035f7d6aa3a4">More...</a><br /></td></tr>
<tr class="separator:a75322f62fb4d3c731035035f7d6aa3a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a255540efe5286aa6e55bf46894cc10f5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a255540efe5286aa6e55bf46894cc10f5">IsPathEnd</a> (int64 node) const</td></tr>
<tr class="memdesc:a255540efe5286aa6e55bf46894cc10f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if node is the last node on the path; defined by the fact that node is outside the range of the variable array. <a href="classoperations__research_1_1PathOperator.html#a255540efe5286aa6e55bf46894cc10f5">More...</a><br /></td></tr>
<tr class="separator:a255540efe5286aa6e55bf46894cc10f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb722ca1750c9814d2d2fc5c9c2f1a11"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#abb722ca1750c9814d2d2fc5c9c2f1a11">IsPathStart</a> (int64 node) const</td></tr>
<tr class="memdesc:abb722ca1750c9814d2d2fc5c9c2f1a11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if node is the first node on the path. <a href="classoperations__research_1_1PathOperator.html#abb722ca1750c9814d2d2fc5c9c2f1a11">More...</a><br /></td></tr>
<tr class="separator:abb722ca1750c9814d2d2fc5c9c2f1a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15db4ae271ce553727a298dd0dbba5e7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a15db4ae271ce553727a298dd0dbba5e7">IsInactive</a> (int64 node) const</td></tr>
<tr class="memdesc:a15db4ae271ce553727a298dd0dbba5e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if node is inactive. <a href="classoperations__research_1_1PathOperator.html#a15db4ae271ce553727a298dd0dbba5e7">More...</a><br /></td></tr>
<tr class="separator:a15db4ae271ce553727a298dd0dbba5e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1c162cfc11069e25becbd53cdce7def"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ae1c162cfc11069e25becbd53cdce7def">InitPosition</a> () const</td></tr>
<tr class="memdesc:ae1c162cfc11069e25becbd53cdce7def"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the operator needs to restart its initial position at each call to <a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aeacffb05338262fd232dc77fed8cc586" title="This method should not be overridden.">Start()</a> <a href="classoperations__research_1_1PathOperator.html#ae1c162cfc11069e25becbd53cdce7def">More...</a><br /></td></tr>
<tr class="separator:ae1c162cfc11069e25becbd53cdce7def"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab661b8d8259dac8444804d91809fbb0a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ab661b8d8259dac8444804d91809fbb0a">ResetPosition</a> ()</td></tr>
<tr class="memdesc:ab661b8d8259dac8444804d91809fbb0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the position of the operator to its position when <a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aeacffb05338262fd232dc77fed8cc586" title="This method should not be overridden.">Start()</a> was last called; this can be used to let an operator iterate more than once over the paths. <a href="classoperations__research_1_1PathOperator.html#ab661b8d8259dac8444804d91809fbb0a">More...</a><br /></td></tr>
<tr class="separator:ab661b8d8259dac8444804d91809fbb0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ffdefbb2872bb54b8370ee590576812"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a9ffdefbb2872bb54b8370ee590576812">AddAlternativeSet</a> (const std::vector&lt; int64 &gt; &amp;alternative_set)</td></tr>
<tr class="memdesc:a9ffdefbb2872bb54b8370ee590576812"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handling node alternatives. <a href="classoperations__research_1_1PathOperator.html#a9ffdefbb2872bb54b8370ee590576812">More...</a><br /></td></tr>
<tr class="separator:a9ffdefbb2872bb54b8370ee590576812"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e42ba88a40563030fe775d5eaec8d55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a7e42ba88a40563030fe775d5eaec8d55">AddPairAlternativeSets</a> (const std::vector&lt; std::pair&lt; std::vector&lt; int64 &gt;, std::vector&lt; int64 &gt;&gt;&gt; &amp;pair_alternative_sets)</td></tr>
<tr class="memdesc:a7e42ba88a40563030fe775d5eaec8d55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds all sets of node alternatives of a vector of alternative pairs. <a href="classoperations__research_1_1PathOperator.html#a7e42ba88a40563030fe775d5eaec8d55">More...</a><br /></td></tr>
<tr class="separator:a7e42ba88a40563030fe775d5eaec8d55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3824a2c47ee3213ab462c66b2acb161"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#af3824a2c47ee3213ab462c66b2acb161">GetActiveInAlternativeSet</a> (int alternative_index) const</td></tr>
<tr class="memdesc:af3824a2c47ee3213ab462c66b2acb161"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the active node in the given alternative set. <a href="classoperations__research_1_1PathOperator.html#af3824a2c47ee3213ab462c66b2acb161">More...</a><br /></td></tr>
<tr class="separator:af3824a2c47ee3213ab462c66b2acb161"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3e073f632d3f5b7b7b0fb39380c49c6"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#aa3e073f632d3f5b7b7b0fb39380c49c6">GetActiveAlternativeNode</a> (int node) const</td></tr>
<tr class="memdesc:aa3e073f632d3f5b7b7b0fb39380c49c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the active node in the alternative set of the given node. <a href="classoperations__research_1_1PathOperator.html#aa3e073f632d3f5b7b7b0fb39380c49c6">More...</a><br /></td></tr>
<tr class="separator:aa3e073f632d3f5b7b7b0fb39380c49c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9d41c75de01039a11af9b5d3cecc37f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ac9d41c75de01039a11af9b5d3cecc37f">GetSiblingAlternativeIndex</a> (int node) const</td></tr>
<tr class="memdesc:ac9d41c75de01039a11af9b5d3cecc37f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the index of the alternative set of the sibling of node. <a href="classoperations__research_1_1PathOperator.html#ac9d41c75de01039a11af9b5d3cecc37f">More...</a><br /></td></tr>
<tr class="separator:ac9d41c75de01039a11af9b5d3cecc37f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbc9a4bbd3bc555e76767ca83d77749c"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#afbc9a4bbd3bc555e76767ca83d77749c">GetActiveAlternativeSibling</a> (int node) const</td></tr>
<tr class="memdesc:afbc9a4bbd3bc555e76767ca83d77749c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the active node in the alternative set of the sibling of the given node. <a href="classoperations__research_1_1PathOperator.html#afbc9a4bbd3bc555e76767ca83d77749c">More...</a><br /></td></tr>
<tr class="separator:afbc9a4bbd3bc555e76767ca83d77749c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea53f675489ce7c73044deb01a9f3f18"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#aea53f675489ce7c73044deb01a9f3f18">CheckChainValidity</a> (int64 before_chain, int64 chain_end, int64 exclude) const</td></tr>
<tr class="memdesc:aea53f675489ce7c73044deb01a9f3f18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the chain is a valid path without cycles from before_chain to chain_end and does not contain exclude. <a href="classoperations__research_1_1PathOperator.html#aea53f675489ce7c73044deb01a9f3f18">More...</a><br /></td></tr>
<tr class="separator:aea53f675489ce7c73044deb01a9f3f18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4cbeb0a6b5484ff3d4dae2d87ead489"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1IntVarLocalSearchOperator.html#aa4cbeb0a6b5484ff3d4dae2d87ead489">IsInverseValue</a> (int64 index) const</td></tr>
<tr class="separator:aa4cbeb0a6b5484ff3d4dae2d87ead489"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a104b124a8b90a018a1583aa5f46081d9"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1IntVarLocalSearchOperator.html#a104b124a8b90a018a1583aa5f46081d9">InverseValue</a> (int64 index) const</td></tr>
<tr class="separator:a104b124a8b90a018a1583aa5f46081d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad462943207eb6d9ff00258445fb9e9dc"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1IntVarLocalSearchOperator.html#ad462943207eb6d9ff00258445fb9e9dc">OldInverseValue</a> (int64 index) const</td></tr>
<tr class="separator:ad462943207eb6d9ff00258445fb9e9dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31d7dd39e21aad23250613bb884d0d2b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1IntVarLocalSearchOperator.html#a31d7dd39e21aad23250613bb884d0d2b">SetInverseValue</a> (int64 index, int64 value)</td></tr>
<tr class="separator:a31d7dd39e21aad23250613bb884d0d2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21cd5f9a362cd868371a6015c30874b7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1IntVarLocalSearchOperator.html#a21cd5f9a362cd868371a6015c30874b7">SetOldInverseValue</a> (int64 index, int64 value)</td></tr>
<tr class="separator:a21cd5f9a362cd868371a6015c30874b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d4345afe8b6013c483417a074add896"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a7d4345afe8b6013c483417a074add896">MarkChange</a> (int64 index)</td></tr>
<tr class="memdesc:a7d4345afe8b6013c483417a074add896"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aae6d852f10b483ddfa68658e43130028" title="Called by Start() after synchronizing the operator with the current assignment.">OnStart()</a> should really be protected, but then SWIG doesn't see it. <a href="classoperations__research_1_1VarLocalSearchOperator.html#a7d4345afe8b6013c483417a074add896">More...</a><br /></td></tr>
<tr class="separator:a7d4345afe8b6013c483417a074add896"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:aad7695e494039d607c26afb6acd0644a"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#aad7695e494039d607c26afb6acd0644a">number_of_nexts_</a></td></tr>
<tr class="separator:aad7695e494039d607c26afb6acd0644a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae56132578e8bc7a7eca4af4fd24fa966"><td class="memItemLeft" align="right" valign="top">const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ae56132578e8bc7a7eca4af4fd24fa966">ignore_path_vars_</a></td></tr>
<tr class="separator:ae56132578e8bc7a7eca4af4fd24fa966"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4e410910ad9361ed46221ecc6f0aa9b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#ac4e410910ad9361ed46221ecc6f0aa9b">next_base_to_increment_</a></td></tr>
<tr class="separator:ac4e410910ad9361ed46221ecc6f0aa9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd4107d44c9d70962fa429ecd6cc8312"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#afd4107d44c9d70962fa429ecd6cc8312">num_paths_</a> = 0</td></tr>
<tr class="separator:afd4107d44c9d70962fa429ecd6cc8312"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d38b45f5f2c2c53a8ab77643839b080"><td class="memItemLeft" align="right" valign="top">std::vector&lt; int64 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1PathOperator.html#a3d38b45f5f2c2c53a8ab77643839b080">start_to_path_</a></td></tr>
<tr class="separator:a3d38b45f5f2c2c53a8ab77643839b080"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb9668115d3d60818099ce9ce80d1ec1"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#acb9668115d3d60818099ce9ce80d1ec1">vars_</a></td></tr>
<tr class="separator:acb9668115d3d60818099ce9ce80d1ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38b2df531e660bd3c43b896970a4f014"><td class="memItemLeft" align="right" valign="top">std::vector&lt; int64 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a38b2df531e660bd3c43b896970a4f014">values_</a></td></tr>
<tr class="separator:a38b2df531e660bd3c43b896970a4f014"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0aeeba03eeb9514e2946c44c733e994a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; int64 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a0aeeba03eeb9514e2946c44c733e994a">old_values_</a></td></tr>
<tr class="separator:a0aeeba03eeb9514e2946c44c733e994a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68dd19d6f0517e2bfb128f87fbad4fea"><td class="memItemLeft" align="right" valign="top">std::vector&lt; int64 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a68dd19d6f0517e2bfb128f87fbad4fea">prev_values_</a></td></tr>
<tr class="separator:a68dd19d6f0517e2bfb128f87fbad4fea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b62af3db29eeb312e3cb06f7bb331ce"><td class="memItemLeft" align="right" valign="top">std::vector&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a7b62af3db29eeb312e3cb06f7bb331ce">assignment_indices_</a></td></tr>
<tr class="separator:a7b62af3db29eeb312e3cb06f7bb331ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7135085df615773e63a206e65ea21d53"><td class="memItemLeft" align="right" valign="top">Bitset64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a7135085df615773e63a206e65ea21d53">activated_</a></td></tr>
<tr class="separator:a7135085df615773e63a206e65ea21d53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade0f309c001b408cf7fe2a5b3c672640"><td class="memItemLeft" align="right" valign="top">Bitset64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#ade0f309c001b408cf7fe2a5b3c672640">was_activated_</a></td></tr>
<tr class="separator:ade0f309c001b408cf7fe2a5b3c672640"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f74f53b5802db835de7f925ffd7b105"><td class="memItemLeft" align="right" valign="top">SparseBitset&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a8f74f53b5802db835de7f925ffd7b105">changes_</a></td></tr>
<tr class="separator:a8f74f53b5802db835de7f925ffd7b105"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6525132991e9140755b271a1cf43fee7"><td class="memItemLeft" align="right" valign="top">SparseBitset&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a6525132991e9140755b271a1cf43fee7">delta_changes_</a></td></tr>
<tr class="separator:a6525132991e9140755b271a1cf43fee7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96d44fa3defc89fe5e0fc0eafaf32714"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a96d44fa3defc89fe5e0fc0eafaf32714">cleared_</a></td></tr>
<tr class="separator:a96d44fa3defc89fe5e0fc0eafaf32714"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8627a7bbb2f34d6156b0fcd3d3abdc2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1IntVarLocalSearchHandler.html">IntVarLocalSearchHandler</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2">var_handler_</a></td></tr>
<tr class="separator:aa8627a7bbb2f34d6156b0fcd3d3abdc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="acdd31200c2524bec658d661041cdc74f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acdd31200c2524bec658d661041cdc74f">&#9670;&nbsp;</a></span>PairNodeSwapActiveOperator()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html">PairNodeSwapActiveOperator</a> </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * &gt; &amp;&#160;</td>
<td class="paramname"><em>vars</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * &gt; &amp;&#160;</td>
<td class="paramname"><em>secondary_vars</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::function&lt; int(int64)&gt;&#160;</td>
<td class="paramname"><em>start_empty_path_class</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespaceoperations__research.html#aef7db0bee0a22d1791d040fd3853f3b7">RoutingIndexPairs</a> &amp;&#160;</td>
<td class="paramname"><em>index_pairs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00528">528</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<a id="a55d9f370d9aaabb24d7da1ffc7f65ccd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a55d9f370d9aaabb24d7da1ffc7f65ccd">&#9670;&nbsp;</a></span>~PairNodeSwapActiveOperator()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">~<a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html">PairNodeSwapActiveOperator</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00496">496</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="aebf766478091209b6170b5de179f9067"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebf766478091209b6170b5de179f9067">&#9670;&nbsp;</a></span>Activate()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Activate </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00863">863</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aff9b327f2a97858ac30a718bba4029c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff9b327f2a97858ac30a718bba4029c0">&#9670;&nbsp;</a></span>Activated()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool Activated </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00862">862</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a9ffdefbb2872bb54b8370ee590576812"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ffdefbb2872bb54b8370ee590576812">&#9670;&nbsp;</a></span>AddAlternativeSet()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int AddAlternativeSet </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; int64 &gt; &amp;&#160;</td>
<td class="paramname"><em>alternative_set</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Handling node alternatives. </p>
<p>Adds a set of node alternatives to the neighborhood. No node can be in two altrnatives. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01512">1512</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a7e42ba88a40563030fe775d5eaec8d55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e42ba88a40563030fe775d5eaec8d55">&#9670;&nbsp;</a></span>AddPairAlternativeSets()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void AddPairAlternativeSets </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; std::pair&lt; std::vector&lt; int64 &gt;, std::vector&lt; int64 &gt;&gt;&gt; &amp;&#160;</td>
<td class="paramname"><em>pair_alternative_sets</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds all sets of node alternatives of a vector of alternative pairs. </p>
<p>No node can be in two altrnatives. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01525">1525</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ae2af73491ab2aa6804b443d442026a5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2af73491ab2aa6804b443d442026a5e">&#9670;&nbsp;</a></span>AddVars()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void AddVars </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * &gt; &amp;&#160;</td>
<td class="paramname"><em>vars</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00908">908</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aabafb6d8996f5101db26b30efff406b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aabafb6d8996f5101db26b30efff406b0">&#9670;&nbsp;</a></span>ApplyChanges()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ApplyChanges </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *&#160;</td>
<td class="paramname"><em>delta</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *&#160;</td>
<td class="paramname"><em>deltadelta</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00871">871</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a752100eca408efb4a9392f16f21f9cf7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a752100eca408efb4a9392f16f21f9cf7">&#9670;&nbsp;</a></span>BaseAlternative()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int BaseAlternative </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the alternative for the ith base node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01383">1383</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a088d80df6df63def37e43b73dc9b1d80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a088d80df6df63def37e43b73dc9b1d80">&#9670;&nbsp;</a></span>BaseAlternativeNode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 BaseAlternativeNode </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the alternative node for the ith base node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01385">1385</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a124f2992de28f11a185072ba4df5441b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a124f2992de28f11a185072ba4df5441b">&#9670;&nbsp;</a></span>BaseNode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 BaseNode </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the ith base node of the operator. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01381">1381</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a5bc40a93b9ba709cfb3ca78cea7435e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5bc40a93b9ba709cfb3ca78cea7435e1">&#9670;&nbsp;</a></span>BaseSiblingAlternative()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int BaseSiblingAlternative </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the alternative for the sibling of the ith base node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01393">1393</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ac41fc10e374ef9221ffca09da9e1c981"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac41fc10e374ef9221ffca09da9e1c981">&#9670;&nbsp;</a></span>BaseSiblingAlternativeNode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 BaseSiblingAlternativeNode </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the alternative node for the sibling of the ith base node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01397">1397</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aea53f675489ce7c73044deb01a9f3f18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea53f675489ce7c73044deb01a9f3f18">&#9670;&nbsp;</a></span>CheckChainValidity()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool CheckChainValidity </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>before_chain</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>chain_end</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>exclude</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if the chain is a valid path without cycles from before_chain to chain_end and does not contain exclude. </p>
</div>
</div>
<a id="a3062cf7eeb53d8cc4cc02e3359d27531"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3062cf7eeb53d8cc4cc02e3359d27531">&#9670;&nbsp;</a></span>ConsiderAlternatives()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool ConsiderAlternatives </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>base_index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Indicates if alternatives should be considered when iterating over base nodes. </p>
<p>Reimplemented in <a class="el" href="classoperations__research_1_1PairRelocateOperator.html#ab26d6a936473dac60bb3b9aa46d38722">PairRelocateOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01446">1446</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="abcdbe360c416a4cbb906188a13860d7f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abcdbe360c416a4cbb906188a13860d7f">&#9670;&nbsp;</a></span>Deactivate()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Deactivate </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00867">867</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aed804747c45a7e1caf81461f9e45dd91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed804747c45a7e1caf81461f9e45dd91">&#9670;&nbsp;</a></span>DebugString()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string DebugString </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented from <a class="el" href="classoperations__research_1_1BaseObject.html#a8eba5d533fa9df4617c1868d3ec2afc4">BaseObject</a>.</p>
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00500">500</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<a id="aa3e073f632d3f5b7b7b0fb39380c49c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3e073f632d3f5b7b7b0fb39380c49c6">&#9670;&nbsp;</a></span>GetActiveAlternativeNode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 GetActiveAlternativeNode </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the active node in the alternative set of the given node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01542">1542</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="afbc9a4bbd3bc555e76767ca83d77749c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afbc9a4bbd3bc555e76767ca83d77749c">&#9670;&nbsp;</a></span>GetActiveAlternativeSibling()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 GetActiveAlternativeSibling </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the active node in the alternative set of the sibling of the given node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01553">1553</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="af3824a2c47ee3213ab462c66b2acb161"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3824a2c47ee3213ab462c66b2acb161">&#9670;&nbsp;</a></span>GetActiveInAlternativeSet()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 GetActiveInAlternativeSet </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>alternative_index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the active node in the given alternative set. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01536">1536</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ad5f473fb19f98b38567ace0fa11f58b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5f473fb19f98b38567ace0fa11f58b0">&#9670;&nbsp;</a></span>GetBaseNodeRestartPosition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 GetBaseNodeRestartPosition </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>base_index</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the index of the node to which the base node of index base_index must be set to when it reaches the end of a path. </p>
<p>By default, it is set to the start of the current path. When this method is called, one can only assume that base nodes with indices &lt; base_index have their final position. </p>
<p>Reimplemented from <a class="el" href="classoperations__research_1_1PathOperator.html#ac7ffd8565f01cb9eb72fcc94204327a2">PathOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00539">539</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<a id="ac9d41c75de01039a11af9b5d3cecc37f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9d41c75de01039a11af9b5d3cecc37f">&#9670;&nbsp;</a></span>GetSiblingAlternativeIndex()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int GetSiblingAlternativeIndex </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the index of the alternative set of the sibling of node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01546">1546</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a1b0063f805d92ed061848616d08f4664"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b0063f805d92ed061848616d08f4664">&#9670;&nbsp;</a></span>HasFragments()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool HasFragments </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented in <a class="el" href="classoperations__research_1_1BaseLns.html#a4c069642a869d9055609c7eac7078f8c">BaseLns</a>.</p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00815">815</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a35de616bef50b1661e3133761f7260e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35de616bef50b1661e3133761f7260e1">&#9670;&nbsp;</a></span>HoldsDelta()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool HoldsDelta </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented from <a class="el" href="classoperations__research_1_1LocalSearchOperator.html#a1e1cf9d9c4228f22482c4ee6c58951a8">LocalSearchOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00830">830</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ae1c162cfc11069e25becbd53cdce7def"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1c162cfc11069e25becbd53cdce7def">&#9670;&nbsp;</a></span>InitPosition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool InitPosition </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if the operator needs to restart its initial position at each call to <a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aeacffb05338262fd232dc77fed8cc586" title="This method should not be overridden.">Start()</a> </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01503">1503</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a104b124a8b90a018a1583aa5f46081d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a104b124a8b90a018a1583aa5f46081d9">&#9670;&nbsp;</a></span>InverseValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 InverseValue </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01077">1077</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a15db4ae271ce553727a298dd0dbba5e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15db4ae271ce553727a298dd0dbba5e7">&#9670;&nbsp;</a></span>IsInactive()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool IsInactive </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if node is inactive. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01497">1497</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aa21d5f9b4adc94167e3a466095d82fd5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa21d5f9b4adc94167e3a466095d82fd5">&#9670;&nbsp;</a></span>IsIncremental()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool IsIncremental </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00846">846</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aa4cbeb0a6b5484ff3d4dae2d87ead489"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4cbeb0a6b5484ff3d4dae2d87ead489">&#9670;&nbsp;</a></span>IsInverseValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool IsInverseValue </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01072">1072</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a255540efe5286aa6e55bf46894cc10f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a255540efe5286aa6e55bf46894cc10f5">&#9670;&nbsp;</a></span>IsPathEnd()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool IsPathEnd </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if node is the last node on the path; defined by the fact that node is outside the range of the variable array. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01491">1491</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="abb722ca1750c9814d2d2fc5c9c2f1a11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb722ca1750c9814d2d2fc5c9c2f1a11">&#9670;&nbsp;</a></span>IsPathStart()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool IsPathStart </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if node is the first node on the path. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01494">1494</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a8b1a0ecf6778a8018576d94b3c73930b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b1a0ecf6778a8018576d94b3c73930b">&#9670;&nbsp;</a></span>MakeActive()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool MakeActive </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>destination</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Insert the inactive node after destination. </p>
</div>
</div>
<a id="adfe2c499f99ed814dbdd8e75db63ae3e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfe2c499f99ed814dbdd8e75db63ae3e">&#9670;&nbsp;</a></span>MakeChainInactive()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool MakeChainInactive </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>before_chain</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>chain_end</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Makes the nodes on the chain starting after before_chain and ending at chain_end inactive. </p>
</div>
</div>
<a id="a24ea165f00f8e15de94958fc804ff209"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24ea165f00f8e15de94958fc804ff209">&#9670;&nbsp;</a></span>MakeNeighbor()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool MakeNeighbor </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classoperations__research_1_1PathOperator.html#a10ae14d6daad9088377260420952f814">PathOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00577">577</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<a id="a2b47576627076cc054924a89a08f69a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b47576627076cc054924a89a08f69a6">&#9670;&nbsp;</a></span>MakeNextNeighbor()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool MakeNextNeighbor </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *&#160;</td>
<td class="paramname"><em>delta</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *&#160;</td>
<td class="paramname"><em>deltadelta</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Redefines MakeNextNeighbor to export a simpler interface. </p>
<p>The calls to <a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aabafb6d8996f5101db26b30efff406b0">ApplyChanges()</a> and <a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a06eb05df61a9b9fce744928947f43d89">RevertChanges()</a> are factored in this method, hiding both delta and deltadelta from subclasses which only need to override <a class="el" href="classoperations__research_1_1PathOperator.html#ad14cde260686e5b4174e691675df3139" title="This method should not be overridden. Override MakeNeighbor() instead.">MakeOneNeighbor()</a>. Therefore this method should not be overridden. Override <a class="el" href="classoperations__research_1_1PathOperator.html#ad14cde260686e5b4174e691675df3139" title="This method should not be overridden. Override MakeNeighbor() instead.">MakeOneNeighbor()</a> instead. </p>
<p>Reimplemented from <a class="el" href="classoperations__research_1_1IntVarLocalSearchOperator.html#a2b47576627076cc054924a89a08f69a6">IntVarLocalSearchOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00561">561</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<a id="ad14cde260686e5b4174e691675df3139"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad14cde260686e5b4174e691675df3139">&#9670;&nbsp;</a></span>MakeOneNeighbor()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool MakeOneNeighbor </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This method should not be overridden. Override <a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#a24ea165f00f8e15de94958fc804ff209">MakeNeighbor()</a> instead. </p>
<p>Reimplemented from <a class="el" href="classoperations__research_1_1IntVarLocalSearchOperator.html#a4e4f1f53f6a8a6bdb6c9d7c97842565d">IntVarLocalSearchOperator</a>.</p>
<p>Reimplemented in <a class="el" href="classoperations__research_1_1RelocateExpensiveChain.html#ad14cde260686e5b4174e691675df3139">RelocateExpensiveChain</a>, and <a class="el" href="classoperations__research_1_1MakePairActiveOperator.html#ad14cde260686e5b4174e691675df3139">MakePairActiveOperator</a>.</p>
</div>
</div>
<a id="a7d4345afe8b6013c483417a074add896"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d4345afe8b6013c483417a074add896">&#9670;&nbsp;</a></span>MarkChange()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void MarkChange </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>OnStart() should really be protected, but then SWIG doesn't see it. </p>
<p>So we make it public, but only subclasses should access to it (to override it). </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00932">932</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="afce7de594ac758357d23d1e4b087ebf0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afce7de594ac758357d23d1e4b087ebf0">&#9670;&nbsp;</a></span>MoveChain()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool MoveChain </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>before_chain</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>chain_end</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>destination</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves the chain starting after the node before_chain and ending at the node chain_end after the node destination. </p>
</div>
</div>
<a id="aa8f198c7897dd232096df08f2123582a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8f198c7897dd232096df08f2123582a">&#9670;&nbsp;</a></span>Next()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 Next </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the node after node in the current delta. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01351">1351</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a208d45797eebd7cad439cc43b049103d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a208d45797eebd7cad439cc43b049103d">&#9670;&nbsp;</a></span>number_of_nexts()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int number_of_nexts </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of next variables. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01370">1370</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ad462943207eb6d9ff00258445fb9e9dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad462943207eb6d9ff00258445fb9e9dc">&#9670;&nbsp;</a></span>OldInverseValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 OldInverseValue </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01079">1079</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a6e645c04c651a5cd0c5b1474c503713c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e645c04c651a5cd0c5b1474c503713c">&#9670;&nbsp;</a></span>OldNext()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 OldNext </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01448">1448</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a3979c66b95f3836e8257f41924952a8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3979c66b95f3836e8257f41924952a8c">&#9670;&nbsp;</a></span>OldPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 OldPath </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01458">1458</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ae73fcc01833bc6a858e474320d37293f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae73fcc01833bc6a858e474320d37293f">&#9670;&nbsp;</a></span>OldPrev()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 OldPrev </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01453">1453</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="af0cd6b9a608c61a52933fd53d53873af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0cd6b9a608c61a52933fd53d53873af">&#9670;&nbsp;</a></span>OldValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const int64 &amp; OldValue </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00857">857</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ac7df4d8cca71e3ceb0e5b8c0c53bc50f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7df4d8cca71e3ceb0e5b8c0c53bc50f">&#9670;&nbsp;</a></span>OnSamePathAsPreviousBase()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool OnSamePathAsPreviousBase </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>base_index</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if a base node has to be on the same path as the "previous" base node (base node of index base_index - 1). </p>
<p>Useful to limit neighborhood exploration to nodes on the same path. it's currently way more complicated to implement. </p>
<p>Both base nodes have to be on the same path since they represent the nodes after which unactive node pairs will be moved.</p>
<p>Reimplemented from <a class="el" href="classoperations__research_1_1PathOperator.html#adb210d557c5ff1bc78ae493364868bb5">PathOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00505">505</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<a id="ae507915e833da66ed7371b87f6fc61ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae507915e833da66ed7371b87f6fc61ff">&#9670;&nbsp;</a></span>Path()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 Path </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the index of the path to which node belongs in the current delta. </p>
<p>Only returns a valid value if path variables are taken into account. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01365">1365</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a61caffe27afd7d6e0c94f1907f1b3b53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61caffe27afd7d6e0c94f1907f1b3b53">&#9670;&nbsp;</a></span>path_starts()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::vector&lt;int64&gt;&amp; path_starts </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the vector of path start nodes. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01409">1409</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a11b8ad366b686132736854e7029e7bff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11b8ad366b686132736854e7029e7bff">&#9670;&nbsp;</a></span>PathClass()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int PathClass </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the class of the path of the ith base node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01411">1411</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aa0decf38e47940df0bf389bd3e8ba173"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0decf38e47940df0bf389bd3e8ba173">&#9670;&nbsp;</a></span>Prev()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 Prev </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>node</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the node before node in the current delta. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01357">1357</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="af82f4acaed7bb39d568e689a9caa63d5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af82f4acaed7bb39d568e689a9caa63d5">&#9670;&nbsp;</a></span>Reset()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Reset </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented from <a class="el" href="classoperations__research_1_1LocalSearchOperator.html#a4c4ba0ffe635d14b93794268bd8e5995">LocalSearchOperator</a>.</p>
</div>
</div>
<a id="ab661b8d8259dac8444804d91809fbb0a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab661b8d8259dac8444804d91809fbb0a">&#9670;&nbsp;</a></span>ResetPosition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ResetPosition </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reset the position of the operator to its position when <a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#aeacffb05338262fd232dc77fed8cc586" title="This method should not be overridden.">Start()</a> was last called; this can be used to let an operator iterate more than once over the paths. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01507">1507</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aab68dfb72803f3ee3116e4425113ed11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab68dfb72803f3ee3116e4425113ed11">&#9670;&nbsp;</a></span>RestartAtPathStartOnSynchronize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool RestartAtPathStartOnSynchronize </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Required to ensure that after synchronization the operator is in a state compatible with GetBaseNodeRestartPosition. </p>
<p>Reimplemented from <a class="el" href="classoperations__research_1_1PathOperator.html#a38b76e1e3a147226d4981b05e4ec2c55">PathOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="routing__neighborhoods_8h_source.html#l00515">515</a> of file <a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a>.</p>
</div>
</div>
<a id="a62997309da1aeeee36192ffa09700eec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62997309da1aeeee36192ffa09700eec">&#9670;&nbsp;</a></span>ReverseChain()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ReverseChain </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>before_chain</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>after_chain</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64 *&#160;</td>
<td class="paramname"><em>chain_last</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reverses the chain starting after before_chain and ending before after_chain. </p>
</div>
</div>
<a id="a06eb05df61a9b9fce744928947f43d89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06eb05df61a9b9fce744928947f43d89">&#9670;&nbsp;</a></span>RevertChanges()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void RevertChanges </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>incremental</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00895">895</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a2030c5ed835cf4196e8cab0033a6d7bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2030c5ed835cf4196e8cab0033a6d7bd">&#9670;&nbsp;</a></span>Self()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual const <a class="el" href="classoperations__research_1_1LocalSearchOperator.html">LocalSearchOperator</a>* Self </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00813">813</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a31d7dd39e21aad23250613bb884d0d2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31d7dd39e21aad23250613bb884d0d2b">&#9670;&nbsp;</a></span>SetInverseValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void SetInverseValue </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01083">1083</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a75322f62fb4d3c731035035f7d6aa3a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75322f62fb4d3c731035035f7d6aa3a4">&#9670;&nbsp;</a></span>SetNext()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void SetNext </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>from</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>to</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets 'to' to be the node after 'from' on the given path. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01479">1479</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a2c928a4ff549033f6b44e423ec61b0d5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c928a4ff549033f6b44e423ec61b0d5">&#9670;&nbsp;</a></span>SetNextBaseToIncrement()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void SetNextBaseToIncrement </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>base_index</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the next base to increment on next iteration. </p>
<p>All base &gt; base_index will be reset to their start value. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01441">1441</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a21cd5f9a362cd868371a6015c30874b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21cd5f9a362cd868371a6015c30874b7">&#9670;&nbsp;</a></span>SetOldInverseValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void SetOldInverseValue </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01087">1087</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="af5f56c8c139f332cacfbd598c269887a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5f56c8c139f332cacfbd598c269887a">&#9670;&nbsp;</a></span>SetValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void SetValue </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const int64 &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00858">858</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a24926108b770033792d015cb86aeffb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24926108b770033792d015cb86aeffb3">&#9670;&nbsp;</a></span>Size()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int Size </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00847">847</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aa8d4a4b8ea73184cedcc0be51f6a3921"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8d4a4b8ea73184cedcc0be51f6a3921">&#9670;&nbsp;</a></span>SkipUnchanged()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SkipUnchanged </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented from <a class="el" href="classoperations__research_1_1VarLocalSearchOperator.html#a18eb329b669c6a2e4e2431ea950b52fe">VarLocalSearchOperator&lt; IntVar, int64, IntVarLocalSearchHandler &gt;</a>.</p>
</div>
</div>
<a id="aeacffb05338262fd232dc77fed8cc586"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeacffb05338262fd232dc77fed8cc586">&#9670;&nbsp;</a></span>Start()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Start </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *&#160;</td>
<td class="paramname"><em>assignment</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This method should not be overridden. </p>
<p>Override OnStart() instead which is called before exiting this method. </p>
<p>Implements <a class="el" href="classoperations__research_1_1LocalSearchOperator.html#ae8505ab0739cf0b585de5844f7a6703c">LocalSearchOperator</a>.</p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00833">833</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aa4e3bf1bd6d335ad6be0b0d100e3bd6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4e3bf1bd6d335ad6be0b0d100e3bd6a">&#9670;&nbsp;</a></span>StartNode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int64 StartNode </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the start node of the ith base node. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01407">1407</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a111c4d7dd49f12c67d97d16e9c473c79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a111c4d7dd49f12c67d97d16e9c473c79">&#9670;&nbsp;</a></span>SwapActiveAndInactive()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool SwapActiveAndInactive </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>active</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>inactive</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Replaces active by inactive in the current path, making active inactive. </p>
</div>
</div>
<a id="a8d7b37de1f314b5dddb025a11d57e1e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d7b37de1f314b5dddb025a11d57e1e0">&#9670;&nbsp;</a></span>Value()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const int64 &amp; Value </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the value in the current assignment of the variable of given index. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00850">850</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a8beb998a68abceb71f87d3bc8a35bd78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8beb998a68abceb71f87d3bc8a35bd78">&#9670;&nbsp;</a></span>Var()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * Var </td>
<td>(</td>
<td class="paramtype">int64&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the variable of given index. </p>
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00855">855</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a7135085df615773e63a206e65ea21d53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7135085df615773e63a206e65ea21d53">&#9670;&nbsp;</a></span>activated_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bitset64 activated_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00942">942</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a7b62af3db29eeb312e3cb06f7bb331ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b62af3db29eeb312e3cb06f7bb331ce">&#9670;&nbsp;</a></span>assignment_indices_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;int&gt; assignment_indices_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">mutable</span><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00941">941</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a8f74f53b5802db835de7f925ffd7b105"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f74f53b5802db835de7f925ffd7b105">&#9670;&nbsp;</a></span>changes_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">SparseBitset changes_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00944">944</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a96d44fa3defc89fe5e0fc0eafaf32714"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96d44fa3defc89fe5e0fc0eafaf32714">&#9670;&nbsp;</a></span>cleared_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool cleared_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00946">946</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a6525132991e9140755b271a1cf43fee7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6525132991e9140755b271a1cf43fee7">&#9670;&nbsp;</a></span>delta_changes_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">SparseBitset delta_changes_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00945">945</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ae56132578e8bc7a7eca4af4fd24fa966"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae56132578e8bc7a7eca4af4fd24fa966">&#9670;&nbsp;</a></span>ignore_path_vars_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const bool ignore_path_vars_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01566">1566</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ac4e410910ad9361ed46221ecc6f0aa9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4e410910ad9361ed46221ecc6f0aa9b">&#9670;&nbsp;</a></span>next_base_to_increment_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int next_base_to_increment_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01567">1567</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="afd4107d44c9d70962fa429ecd6cc8312"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd4107d44c9d70962fa429ecd6cc8312">&#9670;&nbsp;</a></span>num_paths_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int num_paths_ = 0</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01568">1568</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aad7695e494039d607c26afb6acd0644a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad7695e494039d607c26afb6acd0644a">&#9670;&nbsp;</a></span>number_of_nexts_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const int number_of_nexts_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01565">1565</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a0aeeba03eeb9514e2946c44c733e994a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0aeeba03eeb9514e2946c44c733e994a">&#9670;&nbsp;</a></span>old_values_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;int64 &gt; old_values_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00939">939</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a68dd19d6f0517e2bfb128f87fbad4fea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68dd19d6f0517e2bfb128f87fbad4fea">&#9670;&nbsp;</a></span>prev_values_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;int64 &gt; prev_values_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00940">940</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a3d38b45f5f2c2c53a8ab77643839b080"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d38b45f5f2c2c53a8ab77643839b080">&#9670;&nbsp;</a></span>start_to_path_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;int64&gt; start_to_path_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l01569">1569</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="a38b2df531e660bd3c43b896970a4f014"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a38b2df531e660bd3c43b896970a4f014">&#9670;&nbsp;</a></span>values_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;int64 &gt; values_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00938">938</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="aa8627a7bbb2f34d6156b0fcd3d3abdc2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8627a7bbb2f34d6156b0fcd3d3abdc2">&#9670;&nbsp;</a></span>var_handler_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1IntVarLocalSearchHandler.html">IntVarLocalSearchHandler</a> var_handler_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00947">947</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="acb9668115d3d60818099ce9ce80d1ec1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb9668115d3d60818099ce9ce80d1ec1">&#9670;&nbsp;</a></span>vars_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> *&gt; vars_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00937">937</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<a id="ade0f309c001b408cf7fe2a5b3c672640"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade0f309c001b408cf7fe2a5b3c672640">&#9670;&nbsp;</a></span>was_activated_</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Bitset64 was_activated_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solveri_8h_source.html#l00943">943</a> of file <a class="el" href="constraint__solveri_8h_source.html">constraint_solveri.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="routing__neighborhoods_8h_source.html">routing_neighborhoods.h</a></li>
</ul>
</div><!-- contents -->
</div>
</div>
<div id="footer-container">
<div id="footer">
</div>
</div>
</body>
</html>