constraint__solveri_8h.html 56 KB
Newer Older
Valentin Platzgummer's avatar
Valentin Platzgummer committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392
<!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"/>-->
        <script type="text/javascript" src="jquery.js"></script>
        <script type="text/javascript" src="dynsections.js"></script>
        <link href="doxygen.css" rel="stylesheet" type="text/css" />
        <link href="styleSheet.tmp.css" rel="stylesheet" type="text/css"/>
    </head>
    <body>
        <div id="banner-container">
            <div id="banner">
                <span id="sfml">Google OR-Tools 8.1</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.20 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('constraint__solveri_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">constraint_solveri.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><a href="constraint__solveri_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_base_int_expr.html">BaseIntExpr</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is the base class for all expressions that are not variables.  <a href="classoperations__research_1_1_base_int_expr.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_simple_rev_f_i_f_o.html">SimpleRevFIFO&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class represent a reversible FIFO structure.  <a href="classoperations__research_1_1_simple_rev_f_i_f_o.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html">SimpleRevFIFO&lt; T &gt;::Iterator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This iterator is not stable with respect to deletion.  <a href="classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_rev_immutable_multi_map.html">RevImmutableMultiMap&lt; K, V &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reversible Immutable MultiMap class.  <a href="classoperations__research_1_1_rev_immutable_multi_map.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_rev_switch.html">RevSwitch</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A reversible switch that can switch once from false to true.  <a href="classoperations__research_1_1_rev_switch.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_small_rev_bit_set.html">SmallRevBitSet</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class represents a small reversible bitset (size &lt;= 64).  <a href="classoperations__research_1_1_small_rev_bit_set.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_rev_bit_set.html">RevBitSet</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class represents a reversible bitset.  <a href="classoperations__research_1_1_rev_bit_set.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_rev_bit_matrix.html">RevBitMatrix</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Matrix version of the <a class="el" href="classoperations__research_1_1_rev_bit_set.html" title="This class represents a reversible bitset.">RevBitSet</a> class.  <a href="classoperations__research_1_1_rev_bit_matrix.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_call_method0.html">CallMethod0&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classoperations__research_1_1_demon.html" title="A Demon is the base element of a propagation queue.">Demon</a> proxy to a method on the constraint with no arguments.  <a href="classoperations__research_1_1_call_method0.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_call_method1.html">CallMethod1&lt; T, P &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classoperations__research_1_1_demon.html" title="A Demon is the base element of a propagation queue.">Demon</a> proxy to a method on the constraint with one argument.  <a href="classoperations__research_1_1_call_method1.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_call_method2.html">CallMethod2&lt; T, P, Q &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classoperations__research_1_1_demon.html" title="A Demon is the base element of a propagation queue.">Demon</a> proxy to a method on the constraint with two arguments.  <a href="classoperations__research_1_1_call_method2.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_call_method3.html">CallMethod3&lt; T, P, Q, R &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classoperations__research_1_1_demon.html" title="A Demon is the base element of a propagation queue.">Demon</a> proxy to a method on the constraint with three arguments.  <a href="classoperations__research_1_1_call_method3.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_delayed_call_method0.html">DelayedCallMethod0&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Low-priority demon proxy to a method on the constraint with no arguments.  <a href="classoperations__research_1_1_delayed_call_method0.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_delayed_call_method1.html">DelayedCallMethod1&lt; T, P &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Low-priority demon proxy to a method on the constraint with one argument.  <a href="classoperations__research_1_1_delayed_call_method1.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_delayed_call_method2.html">DelayedCallMethod2&lt; T, P, Q &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Low-priority demon proxy to a method on the constraint with two arguments.  <a href="classoperations__research_1_1_delayed_call_method2.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_local_search_operator.html">LocalSearchOperator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base class for all local search operators.  <a href="classoperations__research_1_1_local_search_operator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_var_local_search_operator.html">VarLocalSearchOperator&lt; V, Val, Handler &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base operator class for operators manipulating variables.  <a href="classoperations__research_1_1_var_local_search_operator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_int_var_local_search_handler.html">IntVarLocalSearchHandler</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_int_var_local_search_operator.html">IntVarLocalSearchOperator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialization of <a class="el" href="classoperations__research_1_1_local_search_operator.html" title="The base class for all local search operators.">LocalSearchOperator</a> built from an array of IntVars which specifies the scope of the operator.  <a href="classoperations__research_1_1_int_var_local_search_operator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_sequence_var_local_search_handler.html">SequenceVarLocalSearchHandler</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_sequence_var_local_search_operator.html">SequenceVarLocalSearchOperator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_base_lns.html">BaseLns</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is the base class for building an Lns operator.  <a href="classoperations__research_1_1_base_lns.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_change_value.html">ChangeValue</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines operators which change the value of variables; each neighbor corresponds to <em>one</em> modified variable.  <a href="classoperations__research_1_1_change_value.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_operator.html">PathOperator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base class of the local search operators dedicated to path modifications (a path is a set of nodes linked together by arcs).  <a href="classoperations__research_1_1_path_operator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_local_search_state.html">LocalSearchState</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_local_search_variable.html">LocalSearchVariable</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_local_search_filter.html">LocalSearchFilter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Local Search Filters are used for fast neighbor pruning.  <a href="classoperations__research_1_1_local_search_filter.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_local_search_filter_manager.html">LocalSearchFilterManager</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Filter manager: when a move is made, filters are executed to decide whether the solution is feasible and compute parts of the new cost.  <a href="classoperations__research_1_1_local_search_filter_manager.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html">LocalSearchFilterManager::FilterEvent</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_int_var_local_search_filter.html">IntVarLocalSearchFilter</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_propagation_monitor.html">PropagationMonitor</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_local_search_monitor.html">LocalSearchMonitor</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_boolean_var.html">BooleanVar</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_symmetry_breaker.html">SymmetryBreaker</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in return.  <a href="classoperations__research_1_1_symmetry_breaker.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_search_log.html">SearchLog</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base class of all search logs that periodically outputs information when the search is running.  <a href="classoperations__research_1_1_search_log.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_model_cache.html">ModelCache</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements a complete cache for model elements: expressions and constraints.  <a href="classoperations__research_1_1_model_cache.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_argument_holder.html">ArgumentHolder</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Argument Holder: useful when visiting a model.  <a href="classoperations__research_1_1_argument_holder.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_model_parser.html">ModelParser</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Model Parser.  <a href="classoperations__research_1_1_model_parser.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_array_with_offset.html">ArrayWithOffset&lt; T &gt;</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_rev_growing_array.html">RevGrowingArray&lt; T, C &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class is a reversible growing array.  <a href="classoperations__research_1_1_rev_growing_array.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_rev_int_set.html">RevIntSet&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is a special class to represent a 'residual' set of T.  <a href="classoperations__research_1_1_rev_int_set.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_rev_partial_sequence.html">RevPartialSequence</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">--&mdash; <a class="el" href="classoperations__research_1_1_rev_partial_sequence.html" title="--— RevPartialSequence --—">RevPartialSequence</a> --&mdash;  <a href="classoperations__research_1_1_rev_partial_sequence.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_unsorted_nullable_rev_bitset.html">UnsortedNullableRevBitset</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class represents a reversible bitset.  <a href="classoperations__research_1_1_unsorted_nullable_rev_bitset.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_state.html">PathState</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_state_1_1_chain.html">PathState::Chain</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html">PathState::Chain::Iterator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_state_1_1_chain_range.html">PathState::ChainRange</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html">PathState::ChainRange::Iterator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_state_1_1_node_range.html">PathState::NodeRange</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html">PathState::NodeRange::Iterator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1_unary_dimension_checker.html">UnaryDimensionChecker</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structoperations__research_1_1_unary_dimension_checker_1_1_interval.html">UnaryDimensionChecker::Interval</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespaceoperations__research"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html">operations_research</a></td></tr>
<tr class="memdesc:namespaceoperations__research"><td class="mdescLeft">&#160;</td><td class="mdescRight">The vehicle routing library lets one model and solve generic vehicle routing problems ranging from the Traveling Salesman Problem to more complex problems such as the Capacitated Vehicle Routing Problem with Time Windows. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ad502b08bb4d69dfbaf025415310b8da8"><td class="memItemLeft" align="right" valign="top">typedef VarLocalSearchOperator&lt; SequenceVar, std::vector&lt; int &gt;, SequenceVarLocalSearchHandler &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8">SequenceVarLocalSearchOperatorTemplate</a></td></tr>
<tr class="separator:ad502b08bb4d69dfbaf025415310b8da8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a403e52e933033645c3388146d5e2edd2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2">VarTypes</a> { <br />
&#160;&#160;<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce">UNSPECIFIED</a>, 
<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38">DOMAIN_INT_VAR</a>, 
<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b">BOOLEAN_VAR</a>, 
<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b">CONST_VAR</a>, 
<br />
&#160;&#160;<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0">VAR_ADD_CST</a>, 
<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36">VAR_TIMES_CST</a>, 
<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30">CST_SUB_VAR</a>, 
<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860">OPP_VAR</a>, 
<br />
&#160;&#160;<a class="el" href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6">TRACE_VAR</a>
<br />
 }</td></tr>
<tr class="memdesc:a403e52e933033645c3388146d5e2edd2"><td class="mdescLeft">&#160;</td><td class="mdescRight">This enum is used internally to do dynamic typing on subclasses of integer variables.  <a href="namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2">More...</a><br /></td></tr>
<tr class="separator:a403e52e933033645c3388146d5e2edd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a64cf3e1336ec61275bdd2ae853d38406"><td class="memItemLeft" align="right" valign="top">uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a64cf3e1336ec61275bdd2ae853d38406">Hash1</a> (uint64 value)</td></tr>
<tr class="memdesc:a64cf3e1336ec61275bdd2ae853d38406"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hash functions.  <a href="namespaceoperations__research.html#a64cf3e1336ec61275bdd2ae853d38406">More...</a><br /></td></tr>
<tr class="separator:a64cf3e1336ec61275bdd2ae853d38406"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab89995e46facfc1db291ce75658dd0a5"><td class="memItemLeft" align="right" valign="top">uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ab89995e46facfc1db291ce75658dd0a5">Hash1</a> (uint32 value)</td></tr>
<tr class="separator:ab89995e46facfc1db291ce75658dd0a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfc54730764156f1fb717e99b71ba5d4"><td class="memItemLeft" align="right" valign="top">uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#acfc54730764156f1fb717e99b71ba5d4">Hash1</a> (int64 value)</td></tr>
<tr class="separator:acfc54730764156f1fb717e99b71ba5d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65a9c1ccf298ae110decc3b9d285dc16"><td class="memItemLeft" align="right" valign="top">uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a65a9c1ccf298ae110decc3b9d285dc16">Hash1</a> (int value)</td></tr>
<tr class="separator:a65a9c1ccf298ae110decc3b9d285dc16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ca754fad158b92d7f678b5d354d8927"><td class="memItemLeft" align="right" valign="top">uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a3ca754fad158b92d7f678b5d354d8927">Hash1</a> (void *const ptr)</td></tr>
<tr class="separator:a3ca754fad158b92d7f678b5d354d8927"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec42cb0a7c3079eb8f0406914077d633"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:aec42cb0a7c3079eb8f0406914077d633"><td class="memTemplItemLeft" align="right" valign="top">uint64&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#aec42cb0a7c3079eb8f0406914077d633">Hash1</a> (const std::vector&lt; T * &gt; &amp;ptrs)</td></tr>
<tr class="separator:aec42cb0a7c3079eb8f0406914077d633"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2ba31780fce352d4bba600e6e8eacad"><td class="memItemLeft" align="right" valign="top">uint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ac2ba31780fce352d4bba600e6e8eacad">Hash1</a> (const std::vector&lt; int64 &gt; &amp;ptrs)</td></tr>
<tr class="separator:ac2ba31780fce352d4bba600e6e8eacad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85ea0ef5b46465c3793333ce9821f15f"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a85ea0ef5b46465c3793333ce9821f15f"><td class="memTemplItemLeft" align="right" valign="top">LocalSearchOperator *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a85ea0ef5b46465c3793333ce9821f15f">MakeLocalSearchOperator</a> (Solver *solver, const std::vector&lt; IntVar * &gt; &amp;vars, const std::vector&lt; IntVar * &gt; &amp;secondary_vars, std::function&lt; int(int64)&gt; start_empty_path_class)</td></tr>
<tr class="memdesc:a85ea0ef5b46465c3793333ce9821f15f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operator Factories.  <a href="namespaceoperations__research.html#a85ea0ef5b46465c3793333ce9821f15f">More...</a><br /></td></tr>
<tr class="separator:a85ea0ef5b46465c3793333ce9821f15f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12527c82ffc8b31c5d8dc836c366d624"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a12527c82ffc8b31c5d8dc836c366d624"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a12527c82ffc8b31c5d8dc836c366d624">IsArrayConstant</a> (const std::vector&lt; T &gt; &amp;values, const T &amp;value)</td></tr>
<tr class="separator:a12527c82ffc8b31c5d8dc836c366d624"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f4525e71a6b05d97c868f0832750a60"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a3f4525e71a6b05d97c868f0832750a60"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a3f4525e71a6b05d97c868f0832750a60">IsArrayBoolean</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:a3f4525e71a6b05d97c868f0832750a60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3e4f71c4c79e0b4ec00c4e715a7c298"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:ae3e4f71c4c79e0b4ec00c4e715a7c298"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ae3e4f71c4c79e0b4ec00c4e715a7c298">AreAllOnes</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:ae3e4f71c4c79e0b4ec00c4e715a7c298"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0ae787392a8dd8a499eb55ac0916aa4"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:ab0ae787392a8dd8a499eb55ac0916aa4"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ab0ae787392a8dd8a499eb55ac0916aa4">AreAllNull</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:ab0ae787392a8dd8a499eb55ac0916aa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3aea406979285a28c91fd1ee8115af74"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a3aea406979285a28c91fd1ee8115af74"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a3aea406979285a28c91fd1ee8115af74">AreAllGreaterOrEqual</a> (const std::vector&lt; T &gt; &amp;values, const T &amp;value)</td></tr>
<tr class="separator:a3aea406979285a28c91fd1ee8115af74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15f08cfbb35e2b8b1eb76f79caea924a"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a15f08cfbb35e2b8b1eb76f79caea924a"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a15f08cfbb35e2b8b1eb76f79caea924a">AreAllLessOrEqual</a> (const std::vector&lt; T &gt; &amp;values, const T &amp;value)</td></tr>
<tr class="separator:a15f08cfbb35e2b8b1eb76f79caea924a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab62b402f767cda48eb67ef8b50397f8f"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:ab62b402f767cda48eb67ef8b50397f8f"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ab62b402f767cda48eb67ef8b50397f8f">AreAllPositive</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:ab62b402f767cda48eb67ef8b50397f8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38972723946490ea4df4e34298d8805d"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a38972723946490ea4df4e34298d8805d"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a38972723946490ea4df4e34298d8805d">AreAllNegative</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:a38972723946490ea4df4e34298d8805d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3de09f9134b976e5ba64751ac0f4440b"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a3de09f9134b976e5ba64751ac0f4440b"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a3de09f9134b976e5ba64751ac0f4440b">AreAllStrictlyPositive</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:a3de09f9134b976e5ba64751ac0f4440b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8351829c324863ddda52e201df4f9f84"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a8351829c324863ddda52e201df4f9f84"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a8351829c324863ddda52e201df4f9f84">AreAllStrictlyNegative</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:a8351829c324863ddda52e201df4f9f84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aafac7375c23337f25821aa6f86ca627c"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:aafac7375c23337f25821aa6f86ca627c"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#aafac7375c23337f25821aa6f86ca627c">IsIncreasingContiguous</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:aafac7375c23337f25821aa6f86ca627c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d434774c07815a25ffaa7adb343c19e"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a3d434774c07815a25ffaa7adb343c19e"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a3d434774c07815a25ffaa7adb343c19e">IsIncreasing</a> (const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="separator:a3d434774c07815a25ffaa7adb343c19e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf2aea6c68fe502389c9264b971b2f85"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:adf2aea6c68fe502389c9264b971b2f85"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#adf2aea6c68fe502389c9264b971b2f85">IsArrayInRange</a> (const std::vector&lt; IntVar * &gt; &amp;vars, T range_min, T range_max)</td></tr>
<tr class="separator:adf2aea6c68fe502389c9264b971b2f85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4c7a8bfc6877606e512d3279549f44d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ae4c7a8bfc6877606e512d3279549f44d">AreAllBound</a> (const std::vector&lt; IntVar * &gt; &amp;vars)</td></tr>
<tr class="separator:ae4c7a8bfc6877606e512d3279549f44d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7abde7313cef64d25202a18f07481fc3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a7abde7313cef64d25202a18f07481fc3">AreAllBooleans</a> (const std::vector&lt; IntVar * &gt; &amp;vars)</td></tr>
<tr class="separator:a7abde7313cef64d25202a18f07481fc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54470bffc3ea32cc37d0222e5dbb62a6"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a54470bffc3ea32cc37d0222e5dbb62a6"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a54470bffc3ea32cc37d0222e5dbb62a6">AreAllBoundOrNull</a> (const std::vector&lt; IntVar * &gt; &amp;vars, const std::vector&lt; T &gt; &amp;values)</td></tr>
<tr class="memdesc:a54470bffc3ea32cc37d0222e5dbb62a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if all the variables are assigned to a single value, or if their corresponding value is null.  <a href="namespaceoperations__research.html#a54470bffc3ea32cc37d0222e5dbb62a6">More...</a><br /></td></tr>
<tr class="separator:a54470bffc3ea32cc37d0222e5dbb62a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7028ce8b481be8cb6fca7a6925d41aa7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a7028ce8b481be8cb6fca7a6925d41aa7">AreAllBoundTo</a> (const std::vector&lt; IntVar * &gt; &amp;vars, int64 value)</td></tr>
<tr class="memdesc:a7028ce8b481be8cb6fca7a6925d41aa7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if all variables are assigned to 'value'.  <a href="namespaceoperations__research.html#a7028ce8b481be8cb6fca7a6925d41aa7">More...</a><br /></td></tr>
<tr class="separator:a7028ce8b481be8cb6fca7a6925d41aa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc42d1bcfe023d3ac6f59471b75d853c"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#abc42d1bcfe023d3ac6f59471b75d853c">MaxVarArray</a> (const std::vector&lt; IntVar * &gt; &amp;vars)</td></tr>
<tr class="separator:abc42d1bcfe023d3ac6f59471b75d853c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c1932027ef8bc1689d725a1c597867b"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a5c1932027ef8bc1689d725a1c597867b">MinVarArray</a> (const std::vector&lt; IntVar * &gt; &amp;vars)</td></tr>
<tr class="separator:a5c1932027ef8bc1689d725a1c597867b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6662a100d8715747870beb9721bb304b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a6662a100d8715747870beb9721bb304b">FillValues</a> (const std::vector&lt; IntVar * &gt; &amp;vars, std::vector&lt; int64 &gt; *const values)</td></tr>
<tr class="separator:a6662a100d8715747870beb9721bb304b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60dabfa452b4264887ef76c75edf3765"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a60dabfa452b4264887ef76c75edf3765">PosIntDivUp</a> (int64 e, int64 v)</td></tr>
<tr class="separator:a60dabfa452b4264887ef76c75edf3765"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a942ba2898a44303790c91e761b8f4630"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a942ba2898a44303790c91e761b8f4630">PosIntDivDown</a> (int64 e, int64 v)</td></tr>
<tr class="separator:a942ba2898a44303790c91e761b8f4630"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad4e1b406f0e56c83283747b038df88a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; int64 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#aad4e1b406f0e56c83283747b038df88a">ToInt64Vector</a> (const std::vector&lt; int &gt; &amp;input)</td></tr>
<tr class="separator:aad4e1b406f0e56c83283747b038df88a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae67dc356130e9a966298d2bed4835d53"><td class="memItemLeft" align="right" valign="top">LocalSearchFilter *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ae67dc356130e9a966298d2bed4835d53">MakePathStateFilter</a> (Solver *solver, std::unique_ptr&lt; PathState &gt; path_state, const std::vector&lt; IntVar * &gt; &amp;nexts)</td></tr>
<tr class="separator:ae67dc356130e9a966298d2bed4835d53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85232ec63b614f08519af96d5963059b"><td class="memItemLeft" align="right" valign="top">LocalSearchFilter *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a85232ec63b614f08519af96d5963059b">MakeUnaryDimensionFilter</a> (Solver *solver, std::unique_ptr&lt; UnaryDimensionChecker &gt; checker)</td></tr>
<tr class="separator:a85232ec63b614f08519af96d5963059b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr class="memitem:a3ea6af6581e6922832918c97753146a7"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a3ea6af6581e6922832918c97753146a7"><td class="memTemplItemLeft" align="right" valign="top">Demon *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a3ea6af6581e6922832918c97753146a7">MakeConstraintDemon0</a> (Solver *const s, T *const ct, void(T::*method)(), const std::string &amp;name)</td></tr>
<tr class="separator:a3ea6af6581e6922832918c97753146a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0953b50b08320d1109c678555137f1db"><td class="memTemplParams" colspan="2">template&lt;class P &gt; </td></tr>
<tr class="memitem:a0953b50b08320d1109c678555137f1db"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db">ParameterDebugString</a> (P param)</td></tr>
<tr class="separator:a0953b50b08320d1109c678555137f1db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c2f93547af434566184b7dee7039c93"><td class="memTemplParams" colspan="2">template&lt;class P &gt; </td></tr>
<tr class="memitem:a3c2f93547af434566184b7dee7039c93"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a3c2f93547af434566184b7dee7039c93">ParameterDebugString</a> (P *param)</td></tr>
<tr class="memdesc:a3c2f93547af434566184b7dee7039c93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Support limited to pointers to classes which define DebugString().  <a href="namespaceoperations__research.html#a3c2f93547af434566184b7dee7039c93">More...</a><br /></td></tr>
<tr class="separator:a3c2f93547af434566184b7dee7039c93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fb750da00c784e5ffd1763fd3ce88f7"><td class="memTemplParams" colspan="2">template&lt;class T , class P &gt; </td></tr>
<tr class="memitem:a4fb750da00c784e5ffd1763fd3ce88f7"><td class="memTemplItemLeft" align="right" valign="top">Demon *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a4fb750da00c784e5ffd1763fd3ce88f7">MakeConstraintDemon1</a> (Solver *const s, T *const ct, void(T::*method)(P), const std::string &amp;name, P param1)</td></tr>
<tr class="separator:a4fb750da00c784e5ffd1763fd3ce88f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4da629cafe75f958924e1684ac2b0eff"><td class="memTemplParams" colspan="2">template&lt;class T , class P , class Q &gt; </td></tr>
<tr class="memitem:a4da629cafe75f958924e1684ac2b0eff"><td class="memTemplItemLeft" align="right" valign="top">Demon *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a4da629cafe75f958924e1684ac2b0eff">MakeConstraintDemon2</a> (Solver *const s, T *const ct, void(T::*method)(P, Q), const std::string &amp;name, P param1, Q param2)</td></tr>
<tr class="separator:a4da629cafe75f958924e1684ac2b0eff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdca98f14c02e004ab5e19d2c3985667"><td class="memTemplParams" colspan="2">template&lt;class T , class P , class Q , class R &gt; </td></tr>
<tr class="memitem:abdca98f14c02e004ab5e19d2c3985667"><td class="memTemplItemLeft" align="right" valign="top">Demon *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#abdca98f14c02e004ab5e19d2c3985667">MakeConstraintDemon3</a> (Solver *const s, T *const ct, void(T::*method)(P, Q, R), const std::string &amp;name, P param1, Q param2, R param3)</td></tr>
<tr class="separator:abdca98f14c02e004ab5e19d2c3985667"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr class="memitem:a82110ba1f45aa29ffc933102880dbd82"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a82110ba1f45aa29ffc933102880dbd82"><td class="memTemplItemLeft" align="right" valign="top">Demon *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a82110ba1f45aa29ffc933102880dbd82">MakeDelayedConstraintDemon0</a> (Solver *const s, T *const ct, void(T::*method)(), const std::string &amp;name)</td></tr>
<tr class="separator:a82110ba1f45aa29ffc933102880dbd82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11f4a7dbafd8e00a36b892a82e44445f"><td class="memTemplParams" colspan="2">template&lt;class T , class P &gt; </td></tr>
<tr class="memitem:a11f4a7dbafd8e00a36b892a82e44445f"><td class="memTemplItemLeft" align="right" valign="top">Demon *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a11f4a7dbafd8e00a36b892a82e44445f">MakeDelayedConstraintDemon1</a> (Solver *const s, T *const ct, void(T::*method)(P), const std::string &amp;name, P param1)</td></tr>
<tr class="separator:a11f4a7dbafd8e00a36b892a82e44445f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29b8113bf656aa61493c9459508ed953"><td class="memTemplParams" colspan="2">template&lt;class T , class P , class Q &gt; </td></tr>
<tr class="memitem:a29b8113bf656aa61493c9459508ed953"><td class="memTemplItemLeft" align="right" valign="top">Demon *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a29b8113bf656aa61493c9459508ed953">MakeDelayedConstraintDemon2</a> (Solver *const s, T *const ct, void(T::*method)(P, Q), const std::string &amp;name, P param1, Q param2)</td></tr>
<tr class="separator:a29b8113bf656aa61493c9459508ed953"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
        </div>
        </div>
        <div id="footer-container">
            <div id="footer">
            </div>
        </div>
    </body>
</html>