<ahref="cp__model__solver_8h.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aname="l00001"></a><spanclass="lineno"> 1</span> <spanclass="comment">// Copyright 2010-2018 Google LLC</span></div>
<divclass="line"><aname="l00002"></a><spanclass="lineno"> 2</span> <spanclass="comment">// Licensed under the Apache License, Version 2.0 (the "License");</span></div>
<divclass="line"><aname="l00003"></a><spanclass="lineno"> 3</span> <spanclass="comment">// you may not use this file except in compliance with the License.</span></div>
<divclass="line"><aname="l00004"></a><spanclass="lineno"> 4</span> <spanclass="comment">// You may obtain a copy of the License at</span></div>
<divclass="line"><aname="l00008"></a><spanclass="lineno"> 8</span> <spanclass="comment">// Unless required by applicable law or agreed to in writing, software</span></div>
<divclass="line"><aname="l00009"></a><spanclass="lineno"> 9</span> <spanclass="comment">// distributed under the License is distributed on an "AS IS" BASIS,</span></div>
<divclass="line"><aname="l00010"></a><spanclass="lineno"> 10</span> <spanclass="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
<divclass="line"><aname="l00011"></a><spanclass="lineno"> 11</span> <spanclass="comment">// See the License for the specific language governing permissions and</span></div>
<divclass="line"><aname="l00012"></a><spanclass="lineno"> 12</span> <spanclass="comment">// limitations under the License.</span></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_ac2d87e8109f9c60f7af84a60106abd57"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#ac2d87e8109f9c60f7af84a60106abd57">operations_research::sat::CpSolverResponseStats</a></div><divclass="ttdeci">std::string CpSolverResponseStats(const CpSolverResponse &response)</div><divclass="ttdoc">Returns a string with some statistics on the solver response.</div></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_a287579e5f181fc7c89feccf1128faffb"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#a287579e5f181fc7c89feccf1128faffb">operations_research::sat::CpModelStats</a></div><divclass="ttdeci">std::string CpModelStats(const CpModelProto &model)</div><divclass="ttdoc">Returns a string with some statistics on the given CpModelProto.</div></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_a09d851f944ab4f305c3d9f8df99b7bf8"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#a09d851f944ab4f305c3d9f8df99b7bf8">operations_research::sat::Solve</a></div><divclass="ttdeci">CpSolverResponse Solve(const CpModelProto &model_proto)</div><divclass="ttdoc">Solves the given CpModelProto and returns an instance of CpSolverResponse.</div></div>
<divclass="ttc"id="aclassoperations__research_1_1sat_1_1Model_html"><divclass="ttname"><ahref="classoperations__research_1_1sat_1_1Model.html">operations_research::sat::Model</a></div><divclass="ttdoc">Class that owns everything related to a particular optimization model.</div><divclass="ttdef"><b>Definition:</b><ahref="model_8h_source.html#l00038">model.h:38</a></div></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_a47117e7eefc0bb9b66054a64988804e6"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#a47117e7eefc0bb9b66054a64988804e6">operations_research::sat::NewFeasibleSolutionObserver</a></div><divclass="ttdeci">std::function< void(Model *)> NewFeasibleSolutionObserver(const std::function< void(const CpSolverResponse &response)>&observer)</div><divclass="ttdoc">Creates a solution observer with the model with model.Add(NewFeasibleSolutionObserver([](response){....</div><divclass="ttdef"><b>Definition:</b><ahref="cp__model__solver_8h_source.html#l00072">cp_model_solver.h:72</a></div></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_a9d67b9c66f1cb9c1dcc3415cd5af11bf"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#a9d67b9c66f1cb9c1dcc3415cd5af11bf">operations_research::sat::SolveCpModel</a></div><divclass="ttdeci">CpSolverResponse SolveCpModel(const CpModelProto &model_proto, Model *model)</div><divclass="ttdoc">Solves the given CpModelProto.</div></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_a1684fe34484d78336d3cdac55ec6de57"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#a1684fe34484d78336d3cdac55ec6de57">operations_research::sat::NewSatParameters</a></div><divclass="ttdeci">std::function< SatParameters(Model *)> NewSatParameters(const std::string &params)</div><divclass="ttdoc">Creates parameters for the solver, which you can add to the model with.</div><divclass="ttdef"><b>Definition:</b><ahref="cp__model__solver_8h_source.html#l00097">cp_model_solver.h:97</a></div></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_ad04337634227eac006d3e33a7028f82f"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#ad04337634227eac006d3e33a7028f82f">operations_research::sat::SetSynchronizationFunction</a></div><divclass="ttdeci">void SetSynchronizationFunction(std::function< CpSolverResponse()> f, Model *model)</div><divclass="ttdoc">If set, the underlying solver will call this function regularly in a deterministic way.</div></div>
<divclass="ttc"id="anamespaceoperations__research_1_1sat_html_aa3062797aa0396abf37dbcc99a746f12"><divclass="ttname"><ahref="namespaceoperations__research_1_1sat.html#aa3062797aa0396abf37dbcc99a746f12">operations_research::sat::SolveWithParameters</a></div><divclass="ttdeci">CpSolverResponse SolveWithParameters(const CpModelProto &model_proto, const SatParameters &params)</div><divclass="ttdoc">Solves the given CpModelProto with the given parameters.</div></div>