Files
ortools-clone/docs/cpp/constraint__solver_8cc.html
2021-09-20 15:57:27 +02:00

1221 lines
63 KiB
HTML

<!-- HTML header for doxygen 1.8.18-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>OR-Tools: constraint_solver.cc File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="orLogo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">OR-Tools
&#160;<span id="projectnumber">9.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<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__solver_8cc.html','');});
/* @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="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">constraint_solver.cc File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><a href="constraint__solver_8cc_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_queue.html">Queue</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_state_info.html">StateInfo</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_state_marker.html">StateMarker</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_trail.html">Trail</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_search.html">Search</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_trace.html">Trace</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_master.html">LocalSearchMonitorMaster</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">Collection of objects used to extend the <a class="el" href="classoperations__research_1_1_constraint.html" title="A constraint is the main modeling object.">Constraint</a> <a class="el" href="classoperations__research_1_1_solver.html" title="Solver Class.">Solver</a> library. <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="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a458c844702d69839c667500d86ae49c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a458c844702d69839c667500d86ae49c8">CP_TRY</a>(search)</td></tr>
<tr class="separator:a458c844702d69839c667500d86ae49c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40910cf9a9eb89daac6c929006a03416"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a40910cf9a9eb89daac6c929006a03416">CP_ON_FAIL</a>&#160;&#160;&#160;else</td></tr>
<tr class="separator:a40910cf9a9eb89daac6c929006a03416"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61301f951c309e0078fcaa570fa0e262"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a61301f951c309e0078fcaa570fa0e262">CP_DO_FAIL</a>(search)&#160;&#160;&#160;longjmp(search-&gt;fail_buffer_, 1)</td></tr>
<tr class="separator:a61301f951c309e0078fcaa570fa0e262"><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:aad5ac4f4a0848719922de842ced49416"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#aad5ac4f4a0848719922de842ced49416">SentinelMarker</a> </td></tr>
<tr class="separator:aad5ac4f4a0848719922de842ced49416"><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:a79a2d981d61042787478f024a9748f78"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a79a2d981d61042787478f024a9748f78">ABSL_FLAG</a> (bool, cp_trace_propagation, false, &quot;Trace propagation events (constraint and demon executions,&quot; &quot; variable modifications).&quot;)</td></tr>
<tr class="separator:a79a2d981d61042787478f024a9748f78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f362dac4ad04c5e74c4ec48ac35ad9c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a0f362dac4ad04c5e74c4ec48ac35ad9c">ABSL_FLAG</a> (bool, cp_trace_search, false, &quot;Trace search events&quot;)</td></tr>
<tr class="separator:a0f362dac4ad04c5e74c4ec48ac35ad9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac986fbec333ae5f948a6ad50b2d56c25"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ac986fbec333ae5f948a6ad50b2d56c25">ABSL_FLAG</a> (bool, cp_print_added_constraints, false, &quot;show all constraints added to the solver.&quot;)</td></tr>
<tr class="separator:ac986fbec333ae5f948a6ad50b2d56c25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1c2778d104145e1d3adfee190a7423a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ad1c2778d104145e1d3adfee190a7423a">ABSL_FLAG</a> (bool, cp_print_model, false, &quot;use PrintModelVisitor on <a class="el" href="gurobi__interface_8cc.html#a0728f23c9a47655d38e0bf1a2f200bcf">model</a> before solving.&quot;)</td></tr>
<tr class="separator:ad1c2778d104145e1d3adfee190a7423a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a357f4cbf78a7894155b999b3582e9f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a2a357f4cbf78a7894155b999b3582e9f">ABSL_FLAG</a> (bool, cp_model_stats, false, &quot;use StatisticsModelVisitor on <a class="el" href="gurobi__interface_8cc.html#a0728f23c9a47655d38e0bf1a2f200bcf">model</a> before solving.&quot;)</td></tr>
<tr class="separator:a2a357f4cbf78a7894155b999b3582e9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2da7c48947628991cd03155f21280cc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ae2da7c48947628991cd03155f21280cc">ABSL_FLAG</a> (bool, cp_disable_solve, false, &quot;Force failure at the beginning of <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> search.&quot;)</td></tr>
<tr class="separator:ae2da7c48947628991cd03155f21280cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac67f0b62004688d6ef6729915324f4bd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ac67f0b62004688d6ef6729915324f4bd">ABSL_FLAG</a> (std::string, cp_profile_file, &quot;&quot;, &quot;Export profiling overview to file.&quot;)</td></tr>
<tr class="separator:ac67f0b62004688d6ef6729915324f4bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2c957bd8f9fdc6b5b05a89a1d915998"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#af2c957bd8f9fdc6b5b05a89a1d915998">ABSL_FLAG</a> (bool, cp_print_local_search_profile, false, &quot;Print local search profiling data after solving.&quot;)</td></tr>
<tr class="separator:af2c957bd8f9fdc6b5b05a89a1d915998"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21754a57147088978544f3e043a03ca7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a21754a57147088978544f3e043a03ca7">ABSL_FLAG</a> (bool, cp_name_variables, false, &quot;Force all variables to have names.&quot;)</td></tr>
<tr class="separator:a21754a57147088978544f3e043a03ca7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef196112ef9eee7784db78459673011b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#aef196112ef9eee7784db78459673011b">ABSL_FLAG</a> (bool, cp_name_cast_variables, false, &quot;Name variables casted from expressions&quot;)</td></tr>
<tr class="separator:aef196112ef9eee7784db78459673011b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac466a1b3146d8e17868dd4ba395b7bd4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ac466a1b3146d8e17868dd4ba395b7bd4">ABSL_FLAG</a> (bool, cp_use_small_table, true, &quot;Use small compact table constraint when possible.&quot;)</td></tr>
<tr class="separator:ac466a1b3146d8e17868dd4ba395b7bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1053abe7d98cf6621e950a5e34133252"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a1053abe7d98cf6621e950a5e34133252">ABSL_FLAG</a> (bool, cp_use_cumulative_edge_finder, true, &quot;Use the O(n log n) cumulative edge finding algorithm described &quot; &quot;in 'Edge Finding Filtering Algorithm for Discrete Cumulative &quot; &quot;Resources in O(kn log n)' by Petr Vilim, CP 2009.&quot;)</td></tr>
<tr class="separator:a1053abe7d98cf6621e950a5e34133252"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba53bc2e0ca3683c53fe5ffc66bb9a90"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#aba53bc2e0ca3683c53fe5ffc66bb9a90">ABSL_FLAG</a> (bool, cp_use_cumulative_time_table, true, &quot;Use <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> O(n^2) cumulative <a class="el" href="resource_8cc.html#aee52de7b225665566aa47246b9d6b8fa">time</a> table propagation algorithm.&quot;)</td></tr>
<tr class="separator:aba53bc2e0ca3683c53fe5ffc66bb9a90"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2bb43b7cc826bfc2b15fd12cfc942ca"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ae2bb43b7cc826bfc2b15fd12cfc942ca">ABSL_FLAG</a> (bool, cp_use_cumulative_time_table_sync, false, &quot;Use <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> synchronized O(n^2 log n) cumulative <a class="el" href="resource_8cc.html#aee52de7b225665566aa47246b9d6b8fa">time</a> table propagation &quot; &quot;algorithm.&quot;)</td></tr>
<tr class="separator:ae2bb43b7cc826bfc2b15fd12cfc942ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3cfc74adc8925f90283dc597d74d189"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ae3cfc74adc8925f90283dc597d74d189">ABSL_FLAG</a> (bool, cp_use_sequence_high_demand_tasks, true, &quot;Use <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> sequence constraints for cumulative tasks that have <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> &quot; &quot;<a class="el" href="resource_8cc.html#a29fb0dd9484d890b12b280c41c150e20">demand</a> greater than half of the <a class="el" href="routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec">capacity</a> of the resource.&quot;)</td></tr>
<tr class="separator:ae3cfc74adc8925f90283dc597d74d189"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7441638bac66048fffda4f85ad47b053"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a7441638bac66048fffda4f85ad47b053">ABSL_FLAG</a> (bool, cp_use_all_possible_disjunctions, true, &quot;Post temporal disjunctions for all pairs of tasks sharing <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> &quot; &quot;cumulative resource and that cannot overlap because the sum of &quot; &quot;their <a class="el" href="resource_8cc.html#a29fb0dd9484d890b12b280c41c150e20">demand</a> exceeds the capacity.&quot;)</td></tr>
<tr class="separator:a7441638bac66048fffda4f85ad47b053"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8511aece3de0b1ad3c7fe74ed5b6aab"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ac8511aece3de0b1ad3c7fe74ed5b6aab">ABSL_FLAG</a> (int, cp_max_edge_finder_size, 50, &quot;Do not post the edge finder in the cumulative constraints <a class="el" href="parser_8yy_8cc.html#a33e91cd0cef6786e9e3a27ac67707207">if</a> &quot; &quot;it contains more than this number of tasks&quot;)</td></tr>
<tr class="separator:ac8511aece3de0b1ad3c7fe74ed5b6aab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab30b3cd46368782ea63ecedc64a16229"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ab30b3cd46368782ea63ecedc64a16229">ABSL_FLAG</a> (bool, cp_diffn_use_cumulative, true, &quot;Diffn constraint adds redundant cumulative constraint&quot;)</td></tr>
<tr class="separator:ab30b3cd46368782ea63ecedc64a16229"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca453a33de00c272b74b04dc2c35a4ae"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#aca453a33de00c272b74b04dc2c35a4ae">ABSL_FLAG</a> (bool, cp_use_element_rmq, true, &quot;If true, rmq's will be used in element expressions.&quot;)</td></tr>
<tr class="separator:aca453a33de00c272b74b04dc2c35a4ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad985ec7efaad19f8d3865d4fef188e81"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ad985ec7efaad19f8d3865d4fef188e81">ABSL_FLAG</a> (int, cp_check_solution_period, 1, &quot;Number of solutions explored between two solution checks during &quot; &quot;local search.&quot;)</td></tr>
<tr class="separator:ad985ec7efaad19f8d3865d4fef188e81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89e86441b8231012057eae04956b6fca"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#a89e86441b8231012057eae04956b6fca">ABSL_FLAG</a> (int64_t, cp_random_seed, 12345, &quot;Random seed used in several (but not all) random number &quot; &quot;generators used by the CP solver. Use -1 to auto-generate an&quot; &quot;undeterministic random seed.&quot;)</td></tr>
<tr class="separator:a89e86441b8231012057eae04956b6fca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac13a1be8287ff935b4a93be3cc716e79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="constraint__solver_8cc.html#ac13a1be8287ff935b4a93be3cc716e79">ConstraintSolverFailsHere</a> ()</td></tr>
<tr class="separator:ac13a1be8287ff935b4a93be3cc716e79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa77291e19ddff9a79129492a816faea9"><td class="memItemLeft" align="right" valign="top">DemonProfiler *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#aa77291e19ddff9a79129492a816faea9">BuildDemonProfiler</a> (Solver *const solver)</td></tr>
<tr class="separator:aa77291e19ddff9a79129492a816faea9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9bda1126d10f6d82174b04a78470cbf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ae9bda1126d10f6d82174b04a78470cbf">DeleteDemonProfiler</a> (DemonProfiler *const monitor)</td></tr>
<tr class="separator:ae9bda1126d10f6d82174b04a78470cbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a149483ab8d542a656880da500c648a7a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a149483ab8d542a656880da500c648a7a">InstallDemonProfiler</a> (DemonProfiler *const monitor)</td></tr>
<tr class="separator:a149483ab8d542a656880da500c648a7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af99f1f47c471de23412979cd175e4ba5"><td class="memItemLeft" align="right" valign="top">LocalSearchProfiler *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#af99f1f47c471de23412979cd175e4ba5">BuildLocalSearchProfiler</a> (Solver *solver)</td></tr>
<tr class="separator:af99f1f47c471de23412979cd175e4ba5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b1eaa3bbbca6bb1540d0c6f58e1b429"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a6b1eaa3bbbca6bb1540d0c6f58e1b429">DeleteLocalSearchProfiler</a> (LocalSearchProfiler *monitor)</td></tr>
<tr class="separator:a6b1eaa3bbbca6bb1540d0c6f58e1b429"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c0f97bcea6f2f81b6fd7243ae86f95d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a1c0f97bcea6f2f81b6fd7243ae86f95d">InstallLocalSearchProfiler</a> (LocalSearchProfiler *monitor)</td></tr>
<tr class="separator:a1c0f97bcea6f2f81b6fd7243ae86f95d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d93e6c7c6b355e59b3305d51ad28ea4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a2d93e6c7c6b355e59b3305d51ad28ea4">CleanVariableOnFail</a> (IntVar *const <a class="el" href="sat__solver_8cc.html#a8392bdc4ed570e6a95c7fca35b09f83f">var</a>)</td></tr>
<tr class="separator:a2d93e6c7c6b355e59b3305d51ad28ea4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa101bbcacb341513ace416484147ce55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#aa101bbcacb341513ace416484147ce55">RestoreBoolValue</a> (IntVar *const <a class="el" href="sat__solver_8cc.html#a8392bdc4ed570e6a95c7fca35b09f83f">var</a>)</td></tr>
<tr class="separator:aa101bbcacb341513ace416484147ce55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e9621c9c2973131800432eaa57818d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a0e9621c9c2973131800432eaa57818d5">InternalSaveBooleanVarValue</a> (Solver *const solver, IntVar *const <a class="el" href="sat__solver_8cc.html#a8392bdc4ed570e6a95c7fca35b09f83f">var</a>)</td></tr>
<tr class="separator:a0e9621c9c2973131800432eaa57818d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3c183bd74c4ac70341e97fe5030b191"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#af3c183bd74c4ac70341e97fe5030b191">LocalOptimumReached</a> (Search *const search)</td></tr>
<tr class="separator:af3c183bd74c4ac70341e97fe5030b191"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa84acd1f5e19a0fda99d68bfcce4fdcf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#aa84acd1f5e19a0fda99d68bfcce4fdcf">AcceptDelta</a> (Search *const search, Assignment *<a class="el" href="resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e">delta</a>, Assignment *deltadelta)</td></tr>
<tr class="separator:aa84acd1f5e19a0fda99d68bfcce4fdcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac076f97ddc2c6a302b01ca2bb528e1f4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ac076f97ddc2c6a302b01ca2bb528e1f4">AcceptNeighbor</a> (Search *const search)</td></tr>
<tr class="separator:ac076f97ddc2c6a302b01ca2bb528e1f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7c8c8d0b8a6e63b446a63628d790337"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#af7c8c8d0b8a6e63b446a63628d790337">AcceptUncheckedNeighbor</a> (Search *const search)</td></tr>
<tr class="separator:af7c8c8d0b8a6e63b446a63628d790337"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae86db60a7a714376a12d02f5a17e0834"><td class="memItemLeft" align="right" valign="top">PropagationMonitor *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ae86db60a7a714376a12d02f5a17e0834">BuildTrace</a> (Solver *const s)</td></tr>
<tr class="separator:ae86db60a7a714376a12d02f5a17e0834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac14e9b596ffcb12583b9afc36d205514"><td class="memItemLeft" align="right" valign="top">LocalSearchMonitor *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#ac14e9b596ffcb12583b9afc36d205514">BuildLocalSearchMonitorMaster</a> (Solver *const s)</td></tr>
<tr class="separator:ac14e9b596ffcb12583b9afc36d205514"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a361a9208d4526ad684cd218aa429676d"><td class="memItemLeft" align="right" valign="top">ModelCache *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a361a9208d4526ad684cd218aa429676d">BuildModelCache</a> (Solver *const solver)</td></tr>
<tr class="separator:a361a9208d4526ad684cd218aa429676d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00c751d43cd8e101a59f9198ea5a5555"><td class="memItemLeft" align="right" valign="top">PropagationMonitor *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a00c751d43cd8e101a59f9198ea5a5555">BuildPrintTrace</a> (Solver *const s)</td></tr>
<tr class="separator:a00c751d43cd8e101a59f9198ea5a5555"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5243a6e26c5553715409101ba9dedfbb"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a5243a6e26c5553715409101ba9dedfbb">operator&lt;&lt;</a> (std::ostream &amp;out, const Solver *const s)</td></tr>
<tr class="separator:a5243a6e26c5553715409101ba9dedfbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33241b1c5963edc052a5ddd089274322"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research.html#a33241b1c5963edc052a5ddd089274322">operator&lt;&lt;</a> (std::ostream &amp;out, const BaseObject *const o)</td></tr>
<tr class="separator:a33241b1c5963edc052a5ddd089274322"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a61301f951c309e0078fcaa570fa0e262"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61301f951c309e0078fcaa570fa0e262">&#9670;&nbsp;</a></span>CP_DO_FAIL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CP_DO_FAIL</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">search</td><td>)</td>
<td>&#160;&#160;&#160;longjmp(search-&gt;fail_buffer_, 1)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solver_8cc_source.html#l01109">1109</a> of file <a class="el" href="constraint__solver_8cc_source.html">constraint_solver.cc</a>.</p>
</div>
</div>
<a id="a40910cf9a9eb89daac6c929006a03416"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40910cf9a9eb89daac6c929006a03416">&#9670;&nbsp;</a></span>CP_ON_FAIL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CP_ON_FAIL&#160;&#160;&#160;else</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solver_8cc_source.html#l01108">1108</a> of file <a class="el" href="constraint__solver_8cc_source.html">constraint_solver.cc</a>.</p>
</div>
</div>
<a id="a458c844702d69839c667500d86ae49c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a458c844702d69839c667500d86ae49c8">&#9670;&nbsp;</a></span>CP_TRY</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define CP_TRY</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">search</td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="base_2logging_8h.html#a3e1cfef60e774a81f30eaddf26a3a274">CHECK</a>(!search-&gt;jmpbuf_filled_) &lt;&lt; <span class="stringliteral">&quot;Fail() called outside search&quot;</span>; \</div><div class="line"> search-&gt;jmpbuf_filled_ = <span class="keyword">true</span>; \</div><div class="line"> if (setjmp(search-&gt;fail_buffer_) == 0)</div><div class="ttc" id="base_2logging_8h_html_a3e1cfef60e774a81f30eaddf26a3a274"><div class="ttname"><a href="base_2logging_8h.html#a3e1cfef60e774a81f30eaddf26a3a274">CHECK</a></div><div class="ttdeci">#define CHECK(condition)</div><div class="ttdef"><b>Definition:</b> <a href="base_2logging_8h_source.html#l00491">base/logging.h:491</a></div></div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="constraint__solver_8cc_source.html#l01104">1104</a> of file <a class="el" href="constraint__solver_8cc_source.html">constraint_solver.cc</a>.</p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="file_aad5ac4f4a0848719922de842ced49416"></a>
<h2 class="memtitle"><span class="permalink"><a href="#file_aad5ac4f4a0848719922de842ced49416">&#9670;&nbsp;</a></span>SentinelMarker</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum SentinelMarker</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solver_8cc_source.html#l01389">1389</a> of file <a class="el" href="constraint__solver_8cc_source.html">constraint_solver.cc</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a79a2d981d61042787478f024a9748f78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79a2d981d61042787478f024a9748f78">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[1/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_trace_propagation&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Trace propagation events (constraint and demon executions,&quot; &quot; variable modifications).&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0f362dac4ad04c5e74c4ec48ac35ad9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f362dac4ad04c5e74c4ec48ac35ad9c">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[2/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_trace_search&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Trace search events&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac986fbec333ae5f948a6ad50b2d56c25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac986fbec333ae5f948a6ad50b2d56c25">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[3/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_print_added_constraints&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;show all constraints added to the solver.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad1c2778d104145e1d3adfee190a7423a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1c2778d104145e1d3adfee190a7423a">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[4/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_print_model&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;use PrintModelVisitor on <a class="el" href="gurobi__interface_8cc.html#a0728f23c9a47655d38e0bf1a2f200bcf">model</a> before solving.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2a357f4cbf78a7894155b999b3582e9f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a357f4cbf78a7894155b999b3582e9f">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[5/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_model_stats&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;use StatisticsModelVisitor on <a class="el" href="gurobi__interface_8cc.html#a0728f23c9a47655d38e0bf1a2f200bcf">model</a> before solving.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae2da7c48947628991cd03155f21280cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2da7c48947628991cd03155f21280cc">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[6/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_disable_solve&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Force failure at the beginning of <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> search.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac67f0b62004688d6ef6729915324f4bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac67f0b62004688d6ef6729915324f4bd">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[7/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">std::string&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_profile_file&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;&quot;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Export profiling overview to file.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af2c957bd8f9fdc6b5b05a89a1d915998"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2c957bd8f9fdc6b5b05a89a1d915998">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[8/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_print_local_search_profile&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Print local search profiling data after solving.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a21754a57147088978544f3e043a03ca7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21754a57147088978544f3e043a03ca7">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[9/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_name_variables&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Force all variables to have names.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aef196112ef9eee7784db78459673011b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef196112ef9eee7784db78459673011b">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[10/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_name_cast_variables&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Name variables casted from expressions&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac466a1b3146d8e17868dd4ba395b7bd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac466a1b3146d8e17868dd4ba395b7bd4">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[11/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_use_small_table&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">true&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Use small compact table constraint when possible.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1053abe7d98cf6621e950a5e34133252"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1053abe7d98cf6621e950a5e34133252">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[12/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_use_cumulative_edge_finder&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">true&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Use the O(n log n) cumulative edge finding algorithm described &quot; &quot;in 'Edge Finding Filtering Algorithm for Discrete Cumulative &quot; &quot;Resources in O(kn log n)' by Petr&#160;</td>
<td class="paramname"><em>Vilim</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">CP 2009.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aba53bc2e0ca3683c53fe5ffc66bb9a90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba53bc2e0ca3683c53fe5ffc66bb9a90">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[13/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_use_cumulative_time_table&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">true&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Use <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> O(n^2) cumulative <a class="el" href="resource_8cc.html#aee52de7b225665566aa47246b9d6b8fa">time</a> table propagation algorithm.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae2bb43b7cc826bfc2b15fd12cfc942ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2bb43b7cc826bfc2b15fd12cfc942ca">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[14/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_use_cumulative_time_table_sync&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">false&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Use <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> synchronized O(n^2 log n) cumulative <a class="el" href="resource_8cc.html#aee52de7b225665566aa47246b9d6b8fa">time</a> table propagation &quot; &quot;algorithm.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae3cfc74adc8925f90283dc597d74d189"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3cfc74adc8925f90283dc597d74d189">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[15/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_use_sequence_high_demand_tasks&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">true&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Use <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> sequence constraints for cumulative tasks that have <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> &quot; &quot;<a class="el" href="resource_8cc.html#a29fb0dd9484d890b12b280c41c150e20">demand</a> greater than half of the <a class="el" href="routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec">capacity</a> of the resource.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7441638bac66048fffda4f85ad47b053"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7441638bac66048fffda4f85ad47b053">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[16/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_use_all_possible_disjunctions&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">true&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Post temporal disjunctions for all pairs of tasks sharing <a class="el" href="constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6">a</a> &quot; &quot;cumulative resource and that cannot overlap because the sum of &quot; &quot;their <a class="el" href="resource_8cc.html#a29fb0dd9484d890b12b280c41c150e20">demand</a> exceeds the capacity.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac8511aece3de0b1ad3c7fe74ed5b6aab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8511aece3de0b1ad3c7fe74ed5b6aab">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[17/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_max_edge_finder_size&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">50&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Do not post the edge finder in the cumulative constraints <a class="el" href="parser_8yy_8cc.html#a33e91cd0cef6786e9e3a27ac67707207">if</a> &quot; &quot;it contains more than this number of tasks&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab30b3cd46368782ea63ecedc64a16229"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab30b3cd46368782ea63ecedc64a16229">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[18/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_diffn_use_cumulative&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">true&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Diffn constraint adds redundant cumulative constraint&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aca453a33de00c272b74b04dc2c35a4ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca453a33de00c272b74b04dc2c35a4ae">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[19/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_use_element_rmq&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">true&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;If&#160;</td>
<td class="paramname"><em>true</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">rmq 's will be used in element expressions.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad985ec7efaad19f8d3865d4fef188e81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad985ec7efaad19f8d3865d4fef188e81">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[20/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_check_solution_period&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">1&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Number of solutions explored between two solution checks during &quot; &quot;local search.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a89e86441b8231012057eae04956b6fca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89e86441b8231012057eae04956b6fca">&#9670;&nbsp;</a></span>ABSL_FLAG() <span class="overload">[21/21]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ABSL_FLAG </td>
<td>(</td>
<td class="paramtype">int64_t&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">cp_random_seed&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">12345&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&quot;Random seed used in several (but not all) random number &quot; &quot;generators used by the CP solver. Use -1 to auto-generate an&quot; &quot;undeterministic random seed.&quot;&#160;</td>
<td class="paramname">&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac13a1be8287ff935b4a93be3cc716e79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac13a1be8287ff935b4a93be3cc716e79">&#9670;&nbsp;</a></span>ConstraintSolverFailsHere()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ConstraintSolverFailsHere </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solver_8cc_source.html#l00098">98</a> of file <a class="el" href="constraint__solver_8cc_source.html">constraint_solver.cc</a>.</p>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="ad3abed281c933b061bc42a26033aa7b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad3abed281c933b061bc42a26033aa7b6">&#9670;&nbsp;</a></span>compressed</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string compressed</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solver_8cc_source.html#l00676">676</a> of file <a class="el" href="constraint__solver_8cc_source.html">constraint_solver.cc</a>.</p>
</div>
</div>
<a id="a395f613555f398dd389670bb4c2a4599"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a395f613555f398dd389670bb4c2a4599">&#9670;&nbsp;</a></span>next</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Block* next</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="constraint__solver_8cc_source.html#l00677">677</a> of file <a class="el" href="constraint__solver_8cc_source.html">constraint_solver.cc</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.18-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_a7cc1eeded8f693d0da6c729bc88c45a.html">ortools</a></li><li class="navelem"><a class="el" href="dir_afbb39f66221aac28bbdefd1dca2b2b0.html">constraint_solver</a></li><li class="navelem"><a class="el" href="constraint__solver_8cc.html">constraint_solver.cc</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
</ul>
</div>
</body>
</html>