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

1766 lines
123 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OR-Tools</title>
<meta http-equiv="Content-Type" content="text/html;"/>
<meta charset="utf-8"/>
<!--<link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
<link rel="stylesheet" type="text/css" href="ortools.css" title="default" media="screen,print" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
</head>
<body>
<div id="banner-container">
<div id="banner">
<span id="sfml">Google OR-Tools 7.5</span>
</div>
</div>
<div id="content" style="width: 100%; overflow: hidden;">
<div style="margin-left: 15px; margin-top: 5px; float: left; color: #145A32;">
<h2>C++ Reference</h2>
<ul>
<li><a href="../cpp_algorithms/annotated.html">Algorithms</a></li>
<li><a href="../cpp_sat/annotated.html">CP-SAT</a></li>
<li><a href="../cpp_graph/annotated.html">Graph</a></li>
<li><a href="../cpp_routing/annotated.html">Routing</a></li>
<li><a href="../cpp_linear/annotated.html">Linear solver</a></li>
</ul>
</div>
<div id="content">
<div align="center">
<h1 style="color: #145A32;">C++ Reference: CP-SAT</h1>
</div>
<!-- Generated by Doxygen 1.8.16 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceoperations__research.html">operations_research</a></li><li class="navelem"><a class="el" href="namespaceoperations__research_1_1sat.html">sat</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">operations_research::sat Namespace Reference</div> </div>
</div><!--header-->
<div class="contents">
<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_1sat_1_1AllDifferentConstraintProto.html">AllDifferentConstraintProto</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_1sat_1_1AutomatonConstraint.html">AutomatonConstraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialized automaton constraint. <a href="classoperations__research_1_1sat_1_1AutomatonConstraint.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_1sat_1_1AutomatonConstraintProto.html">AutomatonConstraintProto</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_1sat_1_1BoolArgumentProto.html">BoolArgumentProto</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_1sat_1_1BoolVar.html">BoolVar</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Boolean variable. <a href="classoperations__research_1_1sat_1_1BoolVar.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_1sat_1_1CircuitConstraint.html">CircuitConstraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialized circuit constraint. <a href="classoperations__research_1_1sat_1_1CircuitConstraint.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_1sat_1_1CircuitConstraintProto.html">CircuitConstraintProto</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_1sat_1_1CircuitCoveringConstraintProto.html">CircuitCoveringConstraintProto</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_1sat_1_1Constraint.html">Constraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A constraint. <a href="classoperations__research_1_1sat_1_1Constraint.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_1sat_1_1ConstraintProto.html">ConstraintProto</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_1sat_1_1CpModelBuilder.html">CpModelBuilder</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrapper class around the cp_model proto. <a href="classoperations__research_1_1sat_1_1CpModelBuilder.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_1sat_1_1CpModelProto.html">CpModelProto</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_1sat_1_1CpObjectiveProto.html">CpObjectiveProto</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_1sat_1_1CpSolverResponse.html">CpSolverResponse</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_1sat_1_1CumulativeConstraint.html">CumulativeConstraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialized cumulative constraint. <a href="classoperations__research_1_1sat_1_1CumulativeConstraint.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_1sat_1_1CumulativeConstraintProto.html">CumulativeConstraintProto</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_1sat_1_1DecisionStrategyProto.html">DecisionStrategyProto</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_1sat_1_1DecisionStrategyProto__AffineTransformation.html">DecisionStrategyProto_AffineTransformation</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_1sat_1_1ElementConstraintProto.html">ElementConstraintProto</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_1sat_1_1IntegerArgumentProto.html">IntegerArgumentProto</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_1sat_1_1IntegerVariableProto.html">IntegerVariableProto</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_1sat_1_1IntervalConstraintProto.html">IntervalConstraintProto</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_1sat_1_1IntervalVar.html">IntervalVar</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents a Interval variable. <a href="classoperations__research_1_1sat_1_1IntervalVar.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_1sat_1_1IntVar.html">IntVar</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integer variable. <a href="classoperations__research_1_1sat_1_1IntVar.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_1sat_1_1InverseConstraintProto.html">InverseConstraintProto</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_1sat_1_1LinearArgumentProto.html">LinearArgumentProto</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_1sat_1_1LinearConstraintProto.html">LinearConstraintProto</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_1sat_1_1LinearExpr.html">LinearExpr</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A dedicated container for linear expressions. <a href="classoperations__research_1_1sat_1_1LinearExpr.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_1sat_1_1LinearExpressionProto.html">LinearExpressionProto</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_1sat_1_1Model.html">Model</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class that owns everything related to a particular optimization model. <a href="classoperations__research_1_1sat_1_1Model.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_1sat_1_1MultipleCircuitConstraint.html">MultipleCircuitConstraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialized circuit constraint. <a href="classoperations__research_1_1sat_1_1MultipleCircuitConstraint.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_1sat_1_1NoOverlap2DConstraint.html">NoOverlap2DConstraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialized no_overlap2D constraint. <a href="classoperations__research_1_1sat_1_1NoOverlap2DConstraint.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_1sat_1_1NoOverlap2DConstraintProto.html">NoOverlap2DConstraintProto</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_1sat_1_1NoOverlapConstraintProto.html">NoOverlapConstraintProto</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_1sat_1_1PartialVariableAssignment.html">PartialVariableAssignment</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_1sat_1_1ReservoirConstraint.html">ReservoirConstraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialized reservoir constraint. <a href="classoperations__research_1_1sat_1_1ReservoirConstraint.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_1sat_1_1ReservoirConstraintProto.html">ReservoirConstraintProto</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_1sat_1_1RoutesConstraintProto.html">RoutesConstraintProto</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_1sat_1_1TableConstraint.html">TableConstraint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specialized assignment constraint. <a href="classoperations__research_1_1sat_1_1TableConstraint.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_1sat_1_1TableConstraintProto.html">TableConstraintProto</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="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a94523f1ebceff999bc59a3db7d2b98b6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a> : int { <br />
&#160;&#160;<a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a9cc9a32b4cec62f6bcd8410311de9b51">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_FIRST</a> = 0,
<a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a3e671416caa639665eb8dcd550940467">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_LOWEST_MIN</a> = 1,
<a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a8a26bd6d9e48e2c4f2f144c021d74d1a">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_HIGHEST_MAX</a> = 2,
<a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6aac0157e9af8921b714667cdaa10d09f0">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MIN_DOMAIN_SIZE</a> = 3,
<br />
&#160;&#160;<a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a3b1dbb74050c9b83b333d6137c47e10b">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MAX_DOMAIN_SIZE</a> = 4,
<a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a3da8a28b16b5c0072a721e7657f77763">DecisionStrategyProto_VariableSelectionStrategy_DecisionStrategyProto_VariableSelectionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_</a> = std::numeric_limits&lt;::PROTOBUF_NAMESPACE_ID::int32&gt;::min(),
<a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6ae49c5ca9c4434f188df518c8d6d597c1">DecisionStrategyProto_VariableSelectionStrategy_DecisionStrategyProto_VariableSelectionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_</a> = std::numeric_limits&lt;::PROTOBUF_NAMESPACE_ID::int32&gt;::max()
<br />
}</td></tr>
<tr class="separator:a94523f1ebceff999bc59a3db7d2b98b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ab0c4789d577b30dde661c19f88d00e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a> : int { <br />
&#160;&#160;<a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea9c560a476724e955a1f69e4057eaa372">DecisionStrategyProto_DomainReductionStrategy_SELECT_MIN_VALUE</a> = 0,
<a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea9ce19914b81dbcf78ebde3ed15e10b3b">DecisionStrategyProto_DomainReductionStrategy_SELECT_MAX_VALUE</a> = 1,
<a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea76013e303afc2f8b54afdeecd37224d3">DecisionStrategyProto_DomainReductionStrategy_SELECT_LOWER_HALF</a> = 2,
<a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00eae2ddcc4b888df56eb4300f94b24f8005">DecisionStrategyProto_DomainReductionStrategy_SELECT_UPPER_HALF</a> = 3,
<br />
&#160;&#160;<a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea2dd975e36bdd9ac9e65463fcc4f0541c">DecisionStrategyProto_DomainReductionStrategy_SELECT_MEDIAN_VALUE</a> = 4,
<a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea12f599538c023b465123a3c9cfa9869f">DecisionStrategyProto_DomainReductionStrategy_DecisionStrategyProto_DomainReductionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_</a> = std::numeric_limits&lt;::PROTOBUF_NAMESPACE_ID::int32&gt;::min(),
<a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea610f4d8bf804f4c0261df253a3e06462">DecisionStrategyProto_DomainReductionStrategy_DecisionStrategyProto_DomainReductionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_</a> = std::numeric_limits&lt;::PROTOBUF_NAMESPACE_ID::int32&gt;::max()
<br />
}</td></tr>
<tr class="separator:a0ab0c4789d577b30dde661c19f88d00e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedc4ddb96acc28481c09828d2e016815"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a> : int { <br />
&#160;&#160;<a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a6ce26a62afab55d7606ad4e92428b30c">UNKNOWN</a> = 0,
<a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815ae071e79c23f061c9dd00ee09519a0031">MODEL_INVALID</a> = 1,
<a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a03f919221217f95d21a593a7120165e1">FEASIBLE</a> = 2,
<a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a2884fa43446c0cbc9c7a9b74d41d7483">INFEASIBLE</a> = 3,
<br />
&#160;&#160;<a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a2579881e7c83261bc21bafb5a5c92cad">OPTIMAL</a> = 4,
<a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a3c013bc15052315782a00d86f3fca3ab">CpSolverStatus_INT_MIN_SENTINEL_DO_NOT_USE_</a> = std::numeric_limits&lt;::PROTOBUF_NAMESPACE_ID::int32&gt;::min(),
<a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a3c910aa4be26fdd6efed0262315b1ffd">CpSolverStatus_INT_MAX_SENTINEL_DO_NOT_USE_</a> = std::numeric_limits&lt;::PROTOBUF_NAMESPACE_ID::int32&gt;::max()
<br />
}</td></tr>
<tr class="separator:aedc4ddb96acc28481c09828d2e016815"><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:a9c0ae0d048a431656985fc79428bbe67"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a9c0ae0d048a431656985fc79428bbe67">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a> &amp;var)</td></tr>
<tr class="separator:a9c0ae0d048a431656985fc79428bbe67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e3de118c1f8dd5a7ec21704e05684b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a5e3de118c1f8dd5a7ec21704e05684b9">Not</a> (<a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a> x)</td></tr>
<tr class="memdesc:a5e3de118c1f8dd5a7ec21704e05684b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">A convenient wrapper so we can write Not(x) instead of <a class="el" href="namespaceoperations__research_1_1sat.html#a5e3de118c1f8dd5a7ec21704e05684b9" title="A convenient wrapper so we can write Not(x) instead of x.Not() which is sometimes clearer.">x.Not()</a> which is sometimes clearer. <a href="namespaceoperations__research_1_1sat.html#a5e3de118c1f8dd5a7ec21704e05684b9">More...</a><br /></td></tr>
<tr class="separator:a5e3de118c1f8dd5a7ec21704e05684b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57b8aabbc5b3c1d177d35b3ebcf9b5fa"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a57b8aabbc5b3c1d177d35b3ebcf9b5fa">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classoperations__research_1_1sat_1_1IntVar.html">IntVar</a> &amp;var)</td></tr>
<tr class="separator:a57b8aabbc5b3c1d177d35b3ebcf9b5fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9f86b31794751c624a783d15306280c"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ae9f86b31794751c624a783d15306280c">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classoperations__research_1_1sat_1_1IntervalVar.html">IntervalVar</a> &amp;var)</td></tr>
<tr class="separator:ae9f86b31794751c624a783d15306280c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeaed9bdf2a27bb778ba397666cb874d7"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aeaed9bdf2a27bb778ba397666cb874d7">SolutionIntegerValue</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;r, const <a class="el" href="classoperations__research_1_1sat_1_1LinearExpr.html">LinearExpr</a> &amp;expr)</td></tr>
<tr class="memdesc:aeaed9bdf2a27bb778ba397666cb874d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluates the value of an linear expression in a solver response. <a href="namespaceoperations__research_1_1sat.html#aeaed9bdf2a27bb778ba397666cb874d7">More...</a><br /></td></tr>
<tr class="separator:aeaed9bdf2a27bb778ba397666cb874d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a671200a31003492dbef21f2b4ee3dcbd"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a671200a31003492dbef21f2b4ee3dcbd">SolutionIntegerMin</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;r, <a class="el" href="classoperations__research_1_1sat_1_1IntVar.html">IntVar</a> x)</td></tr>
<tr class="memdesc:a671200a31003492dbef21f2b4ee3dcbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the min of an integer variable in a solution. <a href="namespaceoperations__research_1_1sat.html#a671200a31003492dbef21f2b4ee3dcbd">More...</a><br /></td></tr>
<tr class="separator:a671200a31003492dbef21f2b4ee3dcbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ec893fa736de5b95135ecb9314ee6d8"><td class="memItemLeft" align="right" valign="top">int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a8ec893fa736de5b95135ecb9314ee6d8">SolutionIntegerMax</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;r, <a class="el" href="classoperations__research_1_1sat_1_1IntVar.html">IntVar</a> x)</td></tr>
<tr class="memdesc:a8ec893fa736de5b95135ecb9314ee6d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the max of an integer variable in a solution. <a href="namespaceoperations__research_1_1sat.html#a8ec893fa736de5b95135ecb9314ee6d8">More...</a><br /></td></tr>
<tr class="separator:a8ec893fa736de5b95135ecb9314ee6d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa415e372a9d64eede869ed98666c29c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#afa415e372a9d64eede869ed98666c29c">SolutionBooleanValue</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;r, <a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a> x)</td></tr>
<tr class="memdesc:afa415e372a9d64eede869ed98666c29c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluates the value of a Boolean literal in a solver response. <a href="namespaceoperations__research_1_1sat.html#afa415e372a9d64eede869ed98666c29c">More...</a><br /></td></tr>
<tr class="separator:afa415e372a9d64eede869ed98666c29c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09d851f944ab4f305c3d9f8df99b7bf8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a09d851f944ab4f305c3d9f8df99b7bf8">Solve</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;model_proto)</td></tr>
<tr class="memdesc:a09d851f944ab4f305c3d9f8df99b7bf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> and returns an instance of <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>. <a href="namespaceoperations__research_1_1sat.html#a09d851f944ab4f305c3d9f8df99b7bf8">More...</a><br /></td></tr>
<tr class="separator:a09d851f944ab4f305c3d9f8df99b7bf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3062797aa0396abf37dbcc99a746f12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aa3062797aa0396abf37dbcc99a746f12">SolveWithParameters</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;model_proto, const SatParameters &amp;params)</td></tr>
<tr class="memdesc:aa3062797aa0396abf37dbcc99a746f12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> with the given parameters. <a href="namespaceoperations__research_1_1sat.html#aa3062797aa0396abf37dbcc99a746f12">More...</a><br /></td></tr>
<tr class="separator:aa3062797aa0396abf37dbcc99a746f12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a287579e5f181fc7c89feccf1128faffb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a287579e5f181fc7c89feccf1128faffb">CpModelStats</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;model)</td></tr>
<tr class="memdesc:a287579e5f181fc7c89feccf1128faffb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string with some statistics on the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a>. <a href="namespaceoperations__research_1_1sat.html#a287579e5f181fc7c89feccf1128faffb">More...</a><br /></td></tr>
<tr class="separator:a287579e5f181fc7c89feccf1128faffb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2d87e8109f9c60f7af84a60106abd57"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ac2d87e8109f9c60f7af84a60106abd57">CpSolverResponseStats</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;response)</td></tr>
<tr class="memdesc:ac2d87e8109f9c60f7af84a60106abd57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string with some statistics on the solver response. <a href="namespaceoperations__research_1_1sat.html#ac2d87e8109f9c60f7af84a60106abd57">More...</a><br /></td></tr>
<tr class="separator:ac2d87e8109f9c60f7af84a60106abd57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d67b9c66f1cb9c1dcc3415cd5af11bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a9d67b9c66f1cb9c1dcc3415cd5af11bf">SolveCpModel</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;model_proto, <a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a> *model)</td></tr>
<tr class="memdesc:a9d67b9c66f1cb9c1dcc3415cd5af11bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a>. <a href="namespaceoperations__research_1_1sat.html#a9d67b9c66f1cb9c1dcc3415cd5af11bf">More...</a><br /></td></tr>
<tr class="separator:a9d67b9c66f1cb9c1dcc3415cd5af11bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af52c27ecb43d6486c1a70e022b4aad39"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#af52c27ecb43d6486c1a70e022b4aad39">SolveWithParameters</a> (const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;model_proto, const std::string &amp;params)</td></tr>
<tr class="memdesc:af52c27ecb43d6486c1a70e022b4aad39"><td class="mdescLeft">&#160;</td><td class="mdescRight">Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> with the given sat parameters as string in JSon format, and returns an instance of <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>. <a href="namespaceoperations__research_1_1sat.html#af52c27ecb43d6486c1a70e022b4aad39">More...</a><br /></td></tr>
<tr class="separator:af52c27ecb43d6486c1a70e022b4aad39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad04337634227eac006d3e33a7028f82f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ad04337634227eac006d3e33a7028f82f">SetSynchronizationFunction</a> (std::function&lt; <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>()&gt; f, <a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a> *model)</td></tr>
<tr class="memdesc:ad04337634227eac006d3e33a7028f82f"><td class="mdescLeft">&#160;</td><td class="mdescRight">If set, the underlying solver will call this function regularly in a deterministic way. <a href="namespaceoperations__research_1_1sat.html#ad04337634227eac006d3e33a7028f82f">More...</a><br /></td></tr>
<tr class="separator:ad04337634227eac006d3e33a7028f82f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9644b126f05b927a27fc7eba8e62dd57"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a9644b126f05b927a27fc7eba8e62dd57">DecisionStrategyProto_VariableSelectionStrategy_IsValid</a> (int value)</td></tr>
<tr class="separator:a9644b126f05b927a27fc7eba8e62dd57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8eeb3305c37f40da67f55486402ac78"><td class="memItemLeft" align="right" valign="top">const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ac8eeb3305c37f40da67f55486402ac78">DecisionStrategyProto_VariableSelectionStrategy_descriptor</a> ()</td></tr>
<tr class="separator:ac8eeb3305c37f40da67f55486402ac78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbc472dcbb3ad76095da9926b37e49f8"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:abbc472dcbb3ad76095da9926b37e49f8"><td class="memTemplItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#abbc472dcbb3ad76095da9926b37e49f8">DecisionStrategyProto_VariableSelectionStrategy_Name</a> (T enum_t_value)</td></tr>
<tr class="separator:abbc472dcbb3ad76095da9926b37e49f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a158d3c3e8612a0cb9be525140c96267f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a158d3c3e8612a0cb9be525140c96267f">DecisionStrategyProto_VariableSelectionStrategy_Parse</a> (const std::string &amp;name, <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a> *value)</td></tr>
<tr class="separator:a158d3c3e8612a0cb9be525140c96267f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af161ecb897e60ce83c87c17d11ae7d91"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#af161ecb897e60ce83c87c17d11ae7d91">DecisionStrategyProto_DomainReductionStrategy_IsValid</a> (int value)</td></tr>
<tr class="separator:af161ecb897e60ce83c87c17d11ae7d91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60036e4e1e1d47218d6339e9119805c4"><td class="memItemLeft" align="right" valign="top">const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a60036e4e1e1d47218d6339e9119805c4">DecisionStrategyProto_DomainReductionStrategy_descriptor</a> ()</td></tr>
<tr class="separator:a60036e4e1e1d47218d6339e9119805c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac22a3ab628a918dd90466ba12d6ee0cd"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ac22a3ab628a918dd90466ba12d6ee0cd"><td class="memTemplItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ac22a3ab628a918dd90466ba12d6ee0cd">DecisionStrategyProto_DomainReductionStrategy_Name</a> (T enum_t_value)</td></tr>
<tr class="separator:ac22a3ab628a918dd90466ba12d6ee0cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f1fd67f2396dd88544958778b9854bf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a6f1fd67f2396dd88544958778b9854bf">DecisionStrategyProto_DomainReductionStrategy_Parse</a> (const std::string &amp;name, <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a> *value)</td></tr>
<tr class="separator:a6f1fd67f2396dd88544958778b9854bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f7f7995f8e9a03c15cdddf39b675702"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a8f7f7995f8e9a03c15cdddf39b675702">CpSolverStatus_IsValid</a> (int value)</td></tr>
<tr class="separator:a8f7f7995f8e9a03c15cdddf39b675702"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad87fa7d63870ba0085a841c2303dad6b"><td class="memItemLeft" align="right" valign="top">const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ad87fa7d63870ba0085a841c2303dad6b">CpSolverStatus_descriptor</a> ()</td></tr>
<tr class="separator:ad87fa7d63870ba0085a841c2303dad6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aede942101121114490d4f59631bf9292"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:aede942101121114490d4f59631bf9292"><td class="memTemplItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aede942101121114490d4f59631bf9292">CpSolverStatus_Name</a> (T enum_t_value)</td></tr>
<tr class="separator:aede942101121114490d4f59631bf9292"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a463a1c6294a89434db5de2a5560685f4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a463a1c6294a89434db5de2a5560685f4">CpSolverStatus_Parse</a> (const std::string &amp;name, <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a> *value)</td></tr>
<tr class="separator:a463a1c6294a89434db5de2a5560685f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a47117e7eefc0bb9b66054a64988804e6"><td class="memItemLeft" align="right" valign="top">std::function&lt; void(<a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a> *)&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a47117e7eefc0bb9b66054a64988804e6">NewFeasibleSolutionObserver</a> (const std::function&lt; void(const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;response)&gt; &amp;observer)</td></tr>
<tr class="memdesc:a47117e7eefc0bb9b66054a64988804e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a solution observer with the model with model.Add(NewFeasibleSolutionObserver([](response){...}));. <a href="namespaceoperations__research_1_1sat.html#a47117e7eefc0bb9b66054a64988804e6">More...</a><br /></td></tr>
<tr class="separator:a47117e7eefc0bb9b66054a64988804e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1684fe34484d78336d3cdac55ec6de57"><td class="memItemLeft" align="right" valign="top">std::function&lt; SatParameters(<a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a> *)&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a1684fe34484d78336d3cdac55ec6de57">NewSatParameters</a> (const std::string &amp;params)</td></tr>
<tr class="memdesc:a1684fe34484d78336d3cdac55ec6de57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates parameters for the solver, which you can add to the model with. <a href="namespaceoperations__research_1_1sat.html#a1684fe34484d78336d3cdac55ec6de57">More...</a><br /></td></tr>
<tr class="separator:a1684fe34484d78336d3cdac55ec6de57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5022cdbf0a4511363b80caf245fb2854"><td class="memItemLeft" align="right" valign="top">AllDifferentConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a5022cdbf0a4511363b80caf245fb2854">_AllDifferentConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a5022cdbf0a4511363b80caf245fb2854"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf09b453afccb2f50177ffcd3dfbd27a"><td class="memItemLeft" align="right" valign="top">AutomatonConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#abf09b453afccb2f50177ffcd3dfbd27a">_AutomatonConstraintProto_default_instance_</a></td></tr>
<tr class="separator:abf09b453afccb2f50177ffcd3dfbd27a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655d0feb045c5101029918aae3cead88"><td class="memItemLeft" align="right" valign="top">BoolArgumentProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a655d0feb045c5101029918aae3cead88">_BoolArgumentProto_default_instance_</a></td></tr>
<tr class="separator:a655d0feb045c5101029918aae3cead88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea6eecafe1713c4565393c72a379122b"><td class="memItemLeft" align="right" valign="top">CircuitConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aea6eecafe1713c4565393c72a379122b">_CircuitConstraintProto_default_instance_</a></td></tr>
<tr class="separator:aea6eecafe1713c4565393c72a379122b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86bca90a4ee896b46c6f9336590311bf"><td class="memItemLeft" align="right" valign="top">CircuitCoveringConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a86bca90a4ee896b46c6f9336590311bf">_CircuitCoveringConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a86bca90a4ee896b46c6f9336590311bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af34fca4c31d5c2ab765ec99b192bab6a"><td class="memItemLeft" align="right" valign="top">ConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#af34fca4c31d5c2ab765ec99b192bab6a">_ConstraintProto_default_instance_</a></td></tr>
<tr class="separator:af34fca4c31d5c2ab765ec99b192bab6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41f9dc3f87845be93073600332540b9c"><td class="memItemLeft" align="right" valign="top">CpModelProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a41f9dc3f87845be93073600332540b9c">_CpModelProto_default_instance_</a></td></tr>
<tr class="separator:a41f9dc3f87845be93073600332540b9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a223479678a6c4c9d8b47a77db02b914d"><td class="memItemLeft" align="right" valign="top">CpObjectiveProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a223479678a6c4c9d8b47a77db02b914d">_CpObjectiveProto_default_instance_</a></td></tr>
<tr class="separator:a223479678a6c4c9d8b47a77db02b914d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cc08aed16e89a81f7cde799a790a3d1"><td class="memItemLeft" align="right" valign="top">CpSolverResponseDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a8cc08aed16e89a81f7cde799a790a3d1">_CpSolverResponse_default_instance_</a></td></tr>
<tr class="separator:a8cc08aed16e89a81f7cde799a790a3d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee153940e8ef35428c50dd448409c6f2"><td class="memItemLeft" align="right" valign="top">CumulativeConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aee153940e8ef35428c50dd448409c6f2">_CumulativeConstraintProto_default_instance_</a></td></tr>
<tr class="separator:aee153940e8ef35428c50dd448409c6f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e1584f6741309b50e2db39c1670f097"><td class="memItemLeft" align="right" valign="top">DecisionStrategyProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a6e1584f6741309b50e2db39c1670f097">_DecisionStrategyProto_default_instance_</a></td></tr>
<tr class="separator:a6e1584f6741309b50e2db39c1670f097"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42bfe2cdee7a1e2cecf327269512932d"><td class="memItemLeft" align="right" valign="top">DecisionStrategyProto_AffineTransformationDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a42bfe2cdee7a1e2cecf327269512932d">_DecisionStrategyProto_AffineTransformation_default_instance_</a></td></tr>
<tr class="separator:a42bfe2cdee7a1e2cecf327269512932d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8a8f5cff578449bc5514c4df3e823b6"><td class="memItemLeft" align="right" valign="top">ElementConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ab8a8f5cff578449bc5514c4df3e823b6">_ElementConstraintProto_default_instance_</a></td></tr>
<tr class="separator:ab8a8f5cff578449bc5514c4df3e823b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37ff576212cf01bac7c37c4bfb670511"><td class="memItemLeft" align="right" valign="top">IntegerArgumentProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a37ff576212cf01bac7c37c4bfb670511">_IntegerArgumentProto_default_instance_</a></td></tr>
<tr class="separator:a37ff576212cf01bac7c37c4bfb670511"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bef289699c48c5389fa270be5b59c3a"><td class="memItemLeft" align="right" valign="top">IntegerVariableProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a3bef289699c48c5389fa270be5b59c3a">_IntegerVariableProto_default_instance_</a></td></tr>
<tr class="separator:a3bef289699c48c5389fa270be5b59c3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f4bbdfa15618bf8312bf8e6cc742097"><td class="memItemLeft" align="right" valign="top">IntervalConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a5f4bbdfa15618bf8312bf8e6cc742097">_IntervalConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a5f4bbdfa15618bf8312bf8e6cc742097"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a221276dc5424848b110e741e47d11c12"><td class="memItemLeft" align="right" valign="top">InverseConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a221276dc5424848b110e741e47d11c12">_InverseConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a221276dc5424848b110e741e47d11c12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e813d01ac2d5d980dc56019ce6a40cb"><td class="memItemLeft" align="right" valign="top">LinearArgumentProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a2e813d01ac2d5d980dc56019ce6a40cb">_LinearArgumentProto_default_instance_</a></td></tr>
<tr class="separator:a2e813d01ac2d5d980dc56019ce6a40cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7fe2d41dc416b27433f95a6c2b060338"><td class="memItemLeft" align="right" valign="top">LinearConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a7fe2d41dc416b27433f95a6c2b060338">_LinearConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a7fe2d41dc416b27433f95a6c2b060338"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac65a4238749ba58cb9d108e4441b8a3c"><td class="memItemLeft" align="right" valign="top">LinearExpressionProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ac65a4238749ba58cb9d108e4441b8a3c">_LinearExpressionProto_default_instance_</a></td></tr>
<tr class="separator:ac65a4238749ba58cb9d108e4441b8a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5682de205955fe92a2903141da1737ca"><td class="memItemLeft" align="right" valign="top">NoOverlap2DConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a5682de205955fe92a2903141da1737ca">_NoOverlap2DConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a5682de205955fe92a2903141da1737ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a921e9c249f7c69309d0c2712f78867a2"><td class="memItemLeft" align="right" valign="top">NoOverlapConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a921e9c249f7c69309d0c2712f78867a2">_NoOverlapConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a921e9c249f7c69309d0c2712f78867a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5c743ef0c2dfd8d383ec4a665b31af1"><td class="memItemLeft" align="right" valign="top">PartialVariableAssignmentDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ae5c743ef0c2dfd8d383ec4a665b31af1">_PartialVariableAssignment_default_instance_</a></td></tr>
<tr class="separator:ae5c743ef0c2dfd8d383ec4a665b31af1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa291a640d37abb7a53142f7b4acba70"><td class="memItemLeft" align="right" valign="top">ReservoirConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#afa291a640d37abb7a53142f7b4acba70">_ReservoirConstraintProto_default_instance_</a></td></tr>
<tr class="separator:afa291a640d37abb7a53142f7b4acba70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a614d5011dd52e4c6e4643497410deadb"><td class="memItemLeft" align="right" valign="top">RoutesConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a614d5011dd52e4c6e4643497410deadb">_RoutesConstraintProto_default_instance_</a></td></tr>
<tr class="separator:a614d5011dd52e4c6e4643497410deadb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aecd8e85982106d608b8b23678f1508f7"><td class="memItemLeft" align="right" valign="top">TableConstraintProtoDefaultTypeInternal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aecd8e85982106d608b8b23678f1508f7">_TableConstraintProto_default_instance_</a></td></tr>
<tr class="separator:aecd8e85982106d608b8b23678f1508f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae21dd421323a77bde4c9253b6255c785"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ae21dd421323a77bde4c9253b6255c785">DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MIN</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a9cc9a32b4cec62f6bcd8410311de9b51">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_FIRST</a></td></tr>
<tr class="separator:ae21dd421323a77bde4c9253b6255c785"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04487ffe93d385896ec57f978f248a1f"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a04487ffe93d385896ec57f978f248a1f">DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a3b1dbb74050c9b83b333d6137c47e10b">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MAX_DOMAIN_SIZE</a></td></tr>
<tr class="separator:a04487ffe93d385896ec57f978f248a1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31ba6359043b091cd5c02ff98f8dafa1"><td class="memItemLeft" align="right" valign="top">constexpr int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a31ba6359043b091cd5c02ff98f8dafa1">DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_ARRAYSIZE</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#a04487ffe93d385896ec57f978f248a1f">DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX</a> + 1</td></tr>
<tr class="separator:a31ba6359043b091cd5c02ff98f8dafa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae812a198d8b85b66696afdc8a7f21480"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#ae812a198d8b85b66696afdc8a7f21480">DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MIN</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea9c560a476724e955a1f69e4057eaa372">DecisionStrategyProto_DomainReductionStrategy_SELECT_MIN_VALUE</a></td></tr>
<tr class="separator:ae812a198d8b85b66696afdc8a7f21480"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32d06c0a033135b152dc6aaa0cce11cb"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a32d06c0a033135b152dc6aaa0cce11cb">DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea2dd975e36bdd9ac9e65463fcc4f0541c">DecisionStrategyProto_DomainReductionStrategy_SELECT_MEDIAN_VALUE</a></td></tr>
<tr class="separator:a32d06c0a033135b152dc6aaa0cce11cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc149d79ce813acfacf966a6f0114f9a"><td class="memItemLeft" align="right" valign="top">constexpr int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#abc149d79ce813acfacf966a6f0114f9a">DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_ARRAYSIZE</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#a32d06c0a033135b152dc6aaa0cce11cb">DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX</a> + 1</td></tr>
<tr class="separator:abc149d79ce813acfacf966a6f0114f9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b76cd25015012648a3d14bc20d7f0bd"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a6b76cd25015012648a3d14bc20d7f0bd">CpSolverStatus_MIN</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a6ce26a62afab55d7606ad4e92428b30c">UNKNOWN</a></td></tr>
<tr class="separator:a6b76cd25015012648a3d14bc20d7f0bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa8ca38a83038dce1f21a6ff727d9cd4"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#aaa8ca38a83038dce1f21a6ff727d9cd4">CpSolverStatus_MAX</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a2579881e7c83261bc21bafb5a5c92cad">OPTIMAL</a></td></tr>
<tr class="separator:aaa8ca38a83038dce1f21a6ff727d9cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74dd1a529939101db35e9d731ffac186"><td class="memItemLeft" align="right" valign="top">constexpr int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceoperations__research_1_1sat.html#a74dd1a529939101db35e9d731ffac186">CpSolverStatus_ARRAYSIZE</a> = <a class="el" href="namespaceoperations__research_1_1sat.html#aaa8ca38a83038dce1f21a6ff727d9cd4">CpSolverStatus_MAX</a> + 1</td></tr>
<tr class="separator:a74dd1a529939101db35e9d731ffac186"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="aedc4ddb96acc28481c09828d2e016815"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aedc4ddb96acc28481c09828d2e016815">&#9670;&nbsp;</a></span>CpSolverStatus</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a> : int</td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aedc4ddb96acc28481c09828d2e016815a6ce26a62afab55d7606ad4e92428b30c"></a>UNKNOWN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aedc4ddb96acc28481c09828d2e016815ae071e79c23f061c9dd00ee09519a0031"></a>MODEL_INVALID&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aedc4ddb96acc28481c09828d2e016815a03f919221217f95d21a593a7120165e1"></a>FEASIBLE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aedc4ddb96acc28481c09828d2e016815a2884fa43446c0cbc9c7a9b74d41d7483"></a>INFEASIBLE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aedc4ddb96acc28481c09828d2e016815a2579881e7c83261bc21bafb5a5c92cad"></a>OPTIMAL&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aedc4ddb96acc28481c09828d2e016815a3c013bc15052315782a00d86f3fca3ab"></a>CpSolverStatus_INT_MIN_SENTINEL_DO_NOT_USE_&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aedc4ddb96acc28481c09828d2e016815a3c910aa4be26fdd6efed0262315b1ffd"></a>CpSolverStatus_INT_MAX_SENTINEL_DO_NOT_USE_&#160;</td><td class="fielddoc"></td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00227">227</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a0ab0c4789d577b30dde661c19f88d00e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ab0c4789d577b30dde661c19f88d00e">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a> : int</td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a0ab0c4789d577b30dde661c19f88d00ea9c560a476724e955a1f69e4057eaa372"></a>DecisionStrategyProto_DomainReductionStrategy_SELECT_MIN_VALUE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a0ab0c4789d577b30dde661c19f88d00ea9ce19914b81dbcf78ebde3ed15e10b3b"></a>DecisionStrategyProto_DomainReductionStrategy_SELECT_MAX_VALUE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a0ab0c4789d577b30dde661c19f88d00ea76013e303afc2f8b54afdeecd37224d3"></a>DecisionStrategyProto_DomainReductionStrategy_SELECT_LOWER_HALF&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a0ab0c4789d577b30dde661c19f88d00eae2ddcc4b888df56eb4300f94b24f8005"></a>DecisionStrategyProto_DomainReductionStrategy_SELECT_UPPER_HALF&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a0ab0c4789d577b30dde661c19f88d00ea2dd975e36bdd9ac9e65463fcc4f0541c"></a>DecisionStrategyProto_DomainReductionStrategy_SELECT_MEDIAN_VALUE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a0ab0c4789d577b30dde661c19f88d00ea12f599538c023b465123a3c9cfa9869f"></a>DecisionStrategyProto_DomainReductionStrategy_DecisionStrategyProto_DomainReductionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a0ab0c4789d577b30dde661c19f88d00ea610f4d8bf804f4c0261df253a3e06462"></a>DecisionStrategyProto_DomainReductionStrategy_DecisionStrategyProto_DomainReductionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_&#160;</td><td class="fielddoc"></td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00199">199</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a94523f1ebceff999bc59a3db7d2b98b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94523f1ebceff999bc59a3db7d2b98b6">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a> : int</td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a94523f1ebceff999bc59a3db7d2b98b6a9cc9a32b4cec62f6bcd8410311de9b51"></a>DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_FIRST&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a94523f1ebceff999bc59a3db7d2b98b6a3e671416caa639665eb8dcd550940467"></a>DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_LOWEST_MIN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a94523f1ebceff999bc59a3db7d2b98b6a8a26bd6d9e48e2c4f2f144c021d74d1a"></a>DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_HIGHEST_MAX&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a94523f1ebceff999bc59a3db7d2b98b6aac0157e9af8921b714667cdaa10d09f0"></a>DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MIN_DOMAIN_SIZE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a94523f1ebceff999bc59a3db7d2b98b6a3b1dbb74050c9b83b333d6137c47e10b"></a>DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MAX_DOMAIN_SIZE&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a94523f1ebceff999bc59a3db7d2b98b6a3da8a28b16b5c0072a721e7657f77763"></a>DecisionStrategyProto_VariableSelectionStrategy_DecisionStrategyProto_VariableSelectionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a94523f1ebceff999bc59a3db7d2b98b6ae49c5ca9c4434f188df518c8d6d597c1"></a>DecisionStrategyProto_VariableSelectionStrategy_DecisionStrategyProto_VariableSelectionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_&#160;</td><td class="fielddoc"></td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00171">171</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a287579e5f181fc7c89feccf1128faffb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a287579e5f181fc7c89feccf1128faffb">&#9670;&nbsp;</a></span>CpModelStats()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string operations_research::sat::CpModelStats </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;&#160;</td>
<td class="paramname"><em>model</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a string with some statistics on the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a>. </p>
</div>
</div>
<a id="ac2d87e8109f9c60f7af84a60106abd57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2d87e8109f9c60f7af84a60106abd57">&#9670;&nbsp;</a></span>CpSolverResponseStats()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string operations_research::sat::CpSolverResponseStats </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;&#160;</td>
<td class="paramname"><em>response</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a string with some statistics on the solver response. </p>
</div>
</div>
<a id="ad87fa7d63870ba0085a841c2303dad6b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad87fa7d63870ba0085a841c2303dad6b">&#9670;&nbsp;</a></span>CpSolverStatus_descriptor()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* operations_research::sat::CpSolverStatus_descriptor </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a8f7f7995f8e9a03c15cdddf39b675702"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f7f7995f8e9a03c15cdddf39b675702">&#9670;&nbsp;</a></span>CpSolverStatus_IsValid()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool operations_research::sat::CpSolverStatus_IsValid </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aede942101121114490d4f59631bf9292"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aede942101121114490d4f59631bf9292">&#9670;&nbsp;</a></span>CpSolverStatus_Name()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::string&amp; operations_research::sat::CpSolverStatus_Name </td>
<td>(</td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>enum_t_value</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00243">243</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a463a1c6294a89434db5de2a5560685f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a463a1c6294a89434db5de2a5560685f4">&#9670;&nbsp;</a></span>CpSolverStatus_Parse()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool operations_research::sat::CpSolverStatus_Parse </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a> *&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00250">250</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a60036e4e1e1d47218d6339e9119805c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60036e4e1e1d47218d6339e9119805c4">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy_descriptor()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* operations_research::sat::DecisionStrategyProto_DomainReductionStrategy_descriptor </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af161ecb897e60ce83c87c17d11ae7d91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af161ecb897e60ce83c87c17d11ae7d91">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy_IsValid()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool operations_research::sat::DecisionStrategyProto_DomainReductionStrategy_IsValid </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac22a3ab628a918dd90466ba12d6ee0cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac22a3ab628a918dd90466ba12d6ee0cd">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy_Name()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::string&amp; operations_research::sat::DecisionStrategyProto_DomainReductionStrategy_Name </td>
<td>(</td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>enum_t_value</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00215">215</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a6f1fd67f2396dd88544958778b9854bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f1fd67f2396dd88544958778b9854bf">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy_Parse()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool operations_research::sat::DecisionStrategyProto_DomainReductionStrategy_Parse </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a> *&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00222">222</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="ac8eeb3305c37f40da67f55486402ac78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8eeb3305c37f40da67f55486402ac78">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy_descriptor()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy_descriptor </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9644b126f05b927a27fc7eba8e62dd57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9644b126f05b927a27fc7eba8e62dd57">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy_IsValid()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy_IsValid </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="abbc472dcbb3ad76095da9926b37e49f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abbc472dcbb3ad76095da9926b37e49f8">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy_Name()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::string&amp; operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy_Name </td>
<td>(</td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>enum_t_value</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00187">187</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a158d3c3e8612a0cb9be525140c96267f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a158d3c3e8612a0cb9be525140c96267f">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy_Parse()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy_Parse </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a> *&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00194">194</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a5e3de118c1f8dd5a7ec21704e05684b9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e3de118c1f8dd5a7ec21704e05684b9">&#9670;&nbsp;</a></span>Not()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a> operations_research::sat::Not </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>A convenient wrapper so we can write Not(x) instead of <a class="el" href="namespaceoperations__research_1_1sat.html#a5e3de118c1f8dd5a7ec21704e05684b9" title="A convenient wrapper so we can write Not(x) instead of x.Not() which is sometimes clearer.">x.Not()</a> which is sometimes clearer. </p>
</div>
</div>
<a id="a9c0ae0d048a431656985fc79428bbe67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c0ae0d048a431656985fc79428bbe67">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::ostream&amp; operations_research::sat::operator&lt;&lt; </td>
<td>(</td>
<td class="paramtype">std::ostream &amp;&#160;</td>
<td class="paramname"><em>os</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a> &amp;&#160;</td>
<td class="paramname"><em>var</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae9f86b31794751c624a783d15306280c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae9f86b31794751c624a783d15306280c">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::ostream&amp; operations_research::sat::operator&lt;&lt; </td>
<td>(</td>
<td class="paramtype">std::ostream &amp;&#160;</td>
<td class="paramname"><em>os</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1IntervalVar.html">IntervalVar</a> &amp;&#160;</td>
<td class="paramname"><em>var</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a57b8aabbc5b3c1d177d35b3ebcf9b5fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57b8aabbc5b3c1d177d35b3ebcf9b5fa">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::ostream&amp; operations_research::sat::operator&lt;&lt; </td>
<td>(</td>
<td class="paramtype">std::ostream &amp;&#160;</td>
<td class="paramname"><em>os</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1IntVar.html">IntVar</a> &amp;&#160;</td>
<td class="paramname"><em>var</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad04337634227eac006d3e33a7028f82f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad04337634227eac006d3e33a7028f82f">&#9670;&nbsp;</a></span>SetSynchronizationFunction()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void operations_research::sat::SetSynchronizationFunction </td>
<td>(</td>
<td class="paramtype">std::function&lt; <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>()&gt;&#160;</td>
<td class="paramname"><em>f</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a> *&#160;</td>
<td class="paramname"><em>model</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>If set, the underlying solver will call this function regularly in a deterministic way. </p>
<p>It will then wait until this function returns with the current best information about the current problem.</p>
<p>This is meant to be used in a multi-threaded environment with many parallel solving process. If the returned current "best" response only uses information derived at a lower deterministic time (possibly with offset) than the deterministic time of the current thread, the whole process can be made deterministic. </p>
</div>
</div>
<a id="afa415e372a9d64eede869ed98666c29c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa415e372a9d64eede869ed98666c29c">&#9670;&nbsp;</a></span>SolutionBooleanValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool operations_research::sat::SolutionBooleanValue </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1sat_1_1BoolVar.html">BoolVar</a>&#160;</td>
<td class="paramname"><em>x</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Evaluates the value of a Boolean literal in a solver response. </p>
</div>
</div>
<a id="a8ec893fa736de5b95135ecb9314ee6d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ec893fa736de5b95135ecb9314ee6d8">&#9670;&nbsp;</a></span>SolutionIntegerMax()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int64 operations_research::sat::SolutionIntegerMax </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1sat_1_1IntVar.html">IntVar</a>&#160;</td>
<td class="paramname"><em>x</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the max of an integer variable in a solution. </p>
</div>
</div>
<a id="a671200a31003492dbef21f2b4ee3dcbd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a671200a31003492dbef21f2b4ee3dcbd">&#9670;&nbsp;</a></span>SolutionIntegerMin()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int64 operations_research::sat::SolutionIntegerMin </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1sat_1_1IntVar.html">IntVar</a>&#160;</td>
<td class="paramname"><em>x</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the min of an integer variable in a solution. </p>
</div>
</div>
<a id="aeaed9bdf2a27bb778ba397666cb874d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeaed9bdf2a27bb778ba397666cb874d7">&#9670;&nbsp;</a></span>SolutionIntegerValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int64 operations_research::sat::SolutionIntegerValue </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1LinearExpr.html">LinearExpr</a> &amp;&#160;</td>
<td class="paramname"><em>expr</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Evaluates the value of an linear expression in a solver response. </p>
</div>
</div>
<a id="a09d851f944ab4f305c3d9f8df99b7bf8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09d851f944ab4f305c3d9f8df99b7bf8">&#9670;&nbsp;</a></span>Solve()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> operations_research::sat::Solve </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;&#160;</td>
<td class="paramname"><em>model_proto</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> and returns an instance of <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>. </p>
</div>
</div>
<a id="a9d67b9c66f1cb9c1dcc3415cd5af11bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d67b9c66f1cb9c1dcc3415cd5af11bf">&#9670;&nbsp;</a></span>SolveCpModel()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> operations_research::sat::SolveCpModel </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;&#160;</td>
<td class="paramname"><em>model_proto</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a> *&#160;</td>
<td class="paramname"><em>model</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a>. </p>
<p>This advanced API accept a Model* which allows to access more adavanced features by configuring some classes in the <a class="el" href="classoperations__research_1_1sat_1_1Model.html" title="Class that owns everything related to a particular optimization model.">Model</a> before solve.</p>
<p>For instance:</p><ul>
<li>model-&gt;Add(NewSatParameters(parameters_as_string_or_proto));</li>
<li>model-&gt;GetOrCreate&lt;TimeLimit&gt;()-&gt;RegisterExternalBooleanAsLimit(&amp;stop);</li>
<li>model-&gt;Add(NewFeasibleSolutionObserver(observer)); </li>
</ul>
</div>
</div>
<a id="aa3062797aa0396abf37dbcc99a746f12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3062797aa0396abf37dbcc99a746f12">&#9670;&nbsp;</a></span>SolveWithParameters() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> operations_research::sat::SolveWithParameters </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;&#160;</td>
<td class="paramname"><em>model_proto</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const SatParameters &amp;&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> with the given parameters. </p>
</div>
</div>
<a id="af52c27ecb43d6486c1a70e022b4aad39"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af52c27ecb43d6486c1a70e022b4aad39">&#9670;&nbsp;</a></span>SolveWithParameters() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> operations_research::sat::SolveWithParameters </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> &amp;&#160;</td>
<td class="paramname"><em>model_proto</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Solves the given <a class="el" href="classoperations__research_1_1sat_1_1CpModelProto.html">CpModelProto</a> with the given sat parameters as string in JSon format, and returns an instance of <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a>. </p>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="a5022cdbf0a4511363b80caf245fb2854"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5022cdbf0a4511363b80caf245fb2854">&#9670;&nbsp;</a></span>_AllDifferentConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">AllDifferentConstraintProtoDefaultTypeInternal _AllDifferentConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="abf09b453afccb2f50177ffcd3dfbd27a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf09b453afccb2f50177ffcd3dfbd27a">&#9670;&nbsp;</a></span>_AutomatonConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">AutomatonConstraintProtoDefaultTypeInternal _AutomatonConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a655d0feb045c5101029918aae3cead88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a655d0feb045c5101029918aae3cead88">&#9670;&nbsp;</a></span>_BoolArgumentProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">BoolArgumentProtoDefaultTypeInternal _BoolArgumentProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aea6eecafe1713c4565393c72a379122b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea6eecafe1713c4565393c72a379122b">&#9670;&nbsp;</a></span>_CircuitConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CircuitConstraintProtoDefaultTypeInternal _CircuitConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a86bca90a4ee896b46c6f9336590311bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a86bca90a4ee896b46c6f9336590311bf">&#9670;&nbsp;</a></span>_CircuitCoveringConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CircuitCoveringConstraintProtoDefaultTypeInternal _CircuitCoveringConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af34fca4c31d5c2ab765ec99b192bab6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af34fca4c31d5c2ab765ec99b192bab6a">&#9670;&nbsp;</a></span>_ConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ConstraintProtoDefaultTypeInternal _ConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a41f9dc3f87845be93073600332540b9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41f9dc3f87845be93073600332540b9c">&#9670;&nbsp;</a></span>_CpModelProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CpModelProtoDefaultTypeInternal _CpModelProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a223479678a6c4c9d8b47a77db02b914d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a223479678a6c4c9d8b47a77db02b914d">&#9670;&nbsp;</a></span>_CpObjectiveProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CpObjectiveProtoDefaultTypeInternal _CpObjectiveProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a8cc08aed16e89a81f7cde799a790a3d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8cc08aed16e89a81f7cde799a790a3d1">&#9670;&nbsp;</a></span>_CpSolverResponse_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CpSolverResponseDefaultTypeInternal _CpSolverResponse_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aee153940e8ef35428c50dd448409c6f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee153940e8ef35428c50dd448409c6f2">&#9670;&nbsp;</a></span>_CumulativeConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CumulativeConstraintProtoDefaultTypeInternal _CumulativeConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a42bfe2cdee7a1e2cecf327269512932d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42bfe2cdee7a1e2cecf327269512932d">&#9670;&nbsp;</a></span>_DecisionStrategyProto_AffineTransformation_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">DecisionStrategyProto_AffineTransformationDefaultTypeInternal _DecisionStrategyProto_AffineTransformation_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6e1584f6741309b50e2db39c1670f097"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e1584f6741309b50e2db39c1670f097">&#9670;&nbsp;</a></span>_DecisionStrategyProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">DecisionStrategyProtoDefaultTypeInternal _DecisionStrategyProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab8a8f5cff578449bc5514c4df3e823b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8a8f5cff578449bc5514c4df3e823b6">&#9670;&nbsp;</a></span>_ElementConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ElementConstraintProtoDefaultTypeInternal _ElementConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a37ff576212cf01bac7c37c4bfb670511"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37ff576212cf01bac7c37c4bfb670511">&#9670;&nbsp;</a></span>_IntegerArgumentProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">IntegerArgumentProtoDefaultTypeInternal _IntegerArgumentProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3bef289699c48c5389fa270be5b59c3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3bef289699c48c5389fa270be5b59c3a">&#9670;&nbsp;</a></span>_IntegerVariableProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">IntegerVariableProtoDefaultTypeInternal _IntegerVariableProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5f4bbdfa15618bf8312bf8e6cc742097"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f4bbdfa15618bf8312bf8e6cc742097">&#9670;&nbsp;</a></span>_IntervalConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">IntervalConstraintProtoDefaultTypeInternal _IntervalConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a221276dc5424848b110e741e47d11c12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a221276dc5424848b110e741e47d11c12">&#9670;&nbsp;</a></span>_InverseConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">InverseConstraintProtoDefaultTypeInternal _InverseConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2e813d01ac2d5d980dc56019ce6a40cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2e813d01ac2d5d980dc56019ce6a40cb">&#9670;&nbsp;</a></span>_LinearArgumentProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">LinearArgumentProtoDefaultTypeInternal _LinearArgumentProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7fe2d41dc416b27433f95a6c2b060338"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7fe2d41dc416b27433f95a6c2b060338">&#9670;&nbsp;</a></span>_LinearConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">LinearConstraintProtoDefaultTypeInternal _LinearConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac65a4238749ba58cb9d108e4441b8a3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac65a4238749ba58cb9d108e4441b8a3c">&#9670;&nbsp;</a></span>_LinearExpressionProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">LinearExpressionProtoDefaultTypeInternal _LinearExpressionProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5682de205955fe92a2903141da1737ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5682de205955fe92a2903141da1737ca">&#9670;&nbsp;</a></span>_NoOverlap2DConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">NoOverlap2DConstraintProtoDefaultTypeInternal _NoOverlap2DConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a921e9c249f7c69309d0c2712f78867a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a921e9c249f7c69309d0c2712f78867a2">&#9670;&nbsp;</a></span>_NoOverlapConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">NoOverlapConstraintProtoDefaultTypeInternal _NoOverlapConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae5c743ef0c2dfd8d383ec4a665b31af1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae5c743ef0c2dfd8d383ec4a665b31af1">&#9670;&nbsp;</a></span>_PartialVariableAssignment_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="afa291a640d37abb7a53142f7b4acba70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa291a640d37abb7a53142f7b4acba70">&#9670;&nbsp;</a></span>_ReservoirConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ReservoirConstraintProtoDefaultTypeInternal _ReservoirConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a614d5011dd52e4c6e4643497410deadb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a614d5011dd52e4c6e4643497410deadb">&#9670;&nbsp;</a></span>_RoutesConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">RoutesConstraintProtoDefaultTypeInternal _RoutesConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aecd8e85982106d608b8b23678f1508f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aecd8e85982106d608b8b23678f1508f7">&#9670;&nbsp;</a></span>_TableConstraintProto_default_instance_</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">TableConstraintProtoDefaultTypeInternal _TableConstraintProto_default_instance_</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a74dd1a529939101db35e9d731ffac186"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a74dd1a529939101db35e9d731ffac186">&#9670;&nbsp;</a></span>CpSolverStatus_ARRAYSIZE</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr int CpSolverStatus_ARRAYSIZE = <a class="el" href="namespaceoperations__research_1_1sat.html#aaa8ca38a83038dce1f21a6ff727d9cd4">CpSolverStatus_MAX</a> + 1</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00239">239</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="aaa8ca38a83038dce1f21a6ff727d9cd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa8ca38a83038dce1f21a6ff727d9cd4">&#9670;&nbsp;</a></span>CpSolverStatus_MAX</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a> CpSolverStatus_MAX = <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a2579881e7c83261bc21bafb5a5c92cad">OPTIMAL</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00238">238</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a6b76cd25015012648a3d14bc20d7f0bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b76cd25015012648a3d14bc20d7f0bd">&#9670;&nbsp;</a></span>CpSolverStatus_MIN</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815">CpSolverStatus</a> CpSolverStatus_MIN = <a class="el" href="namespaceoperations__research_1_1sat.html#aedc4ddb96acc28481c09828d2e016815a6ce26a62afab55d7606ad4e92428b30c">UNKNOWN</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00237">237</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="abc149d79ce813acfacf966a6f0114f9a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc149d79ce813acfacf966a6f0114f9a">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_ARRAYSIZE</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr int DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_ARRAYSIZE = <a class="el" href="namespaceoperations__research_1_1sat.html#a32d06c0a033135b152dc6aaa0cce11cb">DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX</a> + 1</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00211">211</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a32d06c0a033135b152dc6aaa0cce11cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a32d06c0a033135b152dc6aaa0cce11cb">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a> DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX = <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea2dd975e36bdd9ac9e65463fcc4f0541c">DecisionStrategyProto_DomainReductionStrategy_SELECT_MEDIAN_VALUE</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00210">210</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="ae812a198d8b85b66696afdc8a7f21480"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae812a198d8b85b66696afdc8a7f21480">&#9670;&nbsp;</a></span>DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MIN</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00e">DecisionStrategyProto_DomainReductionStrategy</a> DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MIN = <a class="el" href="namespaceoperations__research_1_1sat.html#a0ab0c4789d577b30dde661c19f88d00ea9c560a476724e955a1f69e4057eaa372">DecisionStrategyProto_DomainReductionStrategy_SELECT_MIN_VALUE</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00209">209</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a31ba6359043b091cd5c02ff98f8dafa1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31ba6359043b091cd5c02ff98f8dafa1">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_ARRAYSIZE</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr int DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_ARRAYSIZE = <a class="el" href="namespaceoperations__research_1_1sat.html#a04487ffe93d385896ec57f978f248a1f">DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX</a> + 1</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00183">183</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a04487ffe93d385896ec57f978f248a1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04487ffe93d385896ec57f978f248a1f">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a> DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX = <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a3b1dbb74050c9b83b333d6137c47e10b">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MAX_DOMAIN_SIZE</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00182">182</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="ae21dd421323a77bde4c9253b6255c785"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae21dd421323a77bde4c9253b6255c785">&#9670;&nbsp;</a></span>DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MIN</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6">DecisionStrategyProto_VariableSelectionStrategy</a> DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MIN = <a class="el" href="namespaceoperations__research_1_1sat.html#a94523f1ebceff999bc59a3db7d2b98b6a9cc9a32b4cec62f6bcd8410311de9b51">DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_FIRST</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="cp__model_8pb_8h_source.html#l00181">181</a> of file <a class="el" href="cp__model_8pb_8h_source.html">cp_model.pb.h</a>.</p>
</div>
</div>
<a id="a47117e7eefc0bb9b66054a64988804e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47117e7eefc0bb9b66054a64988804e6">&#9670;&nbsp;</a></span>NewFeasibleSolutionObserver</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::function&lt;void(<a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a>*)&gt; NewFeasibleSolutionObserver(const std::function&lt; void(const <a class="el" href="classoperations__research_1_1sat_1_1CpSolverResponse.html">CpSolverResponse</a> &amp;response)&gt; &amp;observer)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a solution observer with the model with model.Add(NewFeasibleSolutionObserver([](response){...}));. </p>
<p>The given function will be called on each improving feasible solution found during the search. For a non-optimization problem, if the option to find all solution was set, then this will be called on each new solution. </p>
<p class="definition">Definition at line <a class="el" href="cp__model__solver_8h_source.html#l00072">72</a> of file <a class="el" href="cp__model__solver_8h_source.html">cp_model_solver.h</a>.</p>
</div>
</div>
<a id="a1684fe34484d78336d3cdac55ec6de57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1684fe34484d78336d3cdac55ec6de57">&#9670;&nbsp;</a></span>NewSatParameters</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::function&lt; SatParameters(<a class="el" href="classoperations__research_1_1sat_1_1Model.html">Model</a> *)&gt; NewSatParameters</td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates parameters for the solver, which you can add to the model with. </p>
<div class="fragment"><div class="line">model-&gt;Add(<a class="code" href="namespaceoperations__research_1_1sat.html#a1684fe34484d78336d3cdac55ec6de57">NewSatParameters</a>(parameters_as_string_or_proto))</div>
</div><!-- fragment --><p> before calling <code><a class="el" href="namespaceoperations__research_1_1sat.html#a9d67b9c66f1cb9c1dcc3415cd5af11bf" title="Solves the given CpModelProto.">SolveCpModel()</a></code>. </p>
<p class="definition">Definition at line <a class="el" href="cp__model__solver_8h_source.html#l00097">97</a> of file <a class="el" href="cp__model__solver_8h_source.html">cp_model_solver.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<div class="ttc" id="anamespaceoperations__research_1_1sat_html_a1684fe34484d78336d3cdac55ec6de57"><div class="ttname"><a href="namespaceoperations__research_1_1sat.html#a1684fe34484d78336d3cdac55ec6de57">operations_research::sat::NewSatParameters</a></div><div class="ttdeci">std::function&lt; SatParameters(Model *)&gt; NewSatParameters(const std::string &amp;params)</div><div class="ttdoc">Creates parameters for the solver, which you can add to the model with.</div><div class="ttdef"><b>Definition:</b> <a href="cp__model__solver_8h_source.html#l00097">cp_model_solver.h:97</a></div></div>
</div>
</div>
<div id="footer-container">
<div id="footer">
</div>
</div>
</body>
</html>