OR-Tools  8.2
constraint_solver_java_wrap.h
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2  * This file was automatically generated by SWIG (http://www.swig.org).
3  * Version 4.0.2
4  *
5  * This file is not intended to be easily readable and contains a number of
6  * coding conventions designed to improve portability and efficiency. Do not make
7  * changes to this file unless you know what you are doing--modify the SWIG
8  * interface file instead.
9  * ----------------------------------------------------------------------------- */
10 
11 #ifndef SWIG_main_WRAP_H_
12 #define SWIG_main_WRAP_H_
13 
15 
16 public:
17  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
18  SwigDirector_Decision(JNIEnv *jenv);
20  virtual std::string DebugString() const;
21  virtual void Apply(operations_research::Solver *const s);
22  virtual void Refute(operations_research::Solver *const s);
23  virtual void Accept(operations_research::DecisionVisitor *const visitor) const;
24 public:
25  bool swig_overrides(int n) {
26  return (n < 4 ? swig_override[n] : false);
27  }
28 protected:
30 };
31 
33 
34 public:
35  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
36  SwigDirector_DecisionVisitor(JNIEnv *jenv);
38  virtual std::string DebugString() const;
40  virtual void VisitSplitVariableDomain(operations_research::IntVar *const var, int64 value, bool start_with_lower_half);
43  virtual void VisitRankFirstInterval(operations_research::SequenceVar *const sequence, int index);
44  virtual void VisitRankLastInterval(operations_research::SequenceVar *const sequence, int index);
45  virtual void VisitUnknownDecision();
46 public:
47  bool swig_overrides(int n) {
48  return (n < 8 ? swig_override[n] : false);
49  }
50 protected:
52 };
53 
55 
56 public:
57  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
58  SwigDirector_DecisionBuilder(JNIEnv *jenv);
60  virtual std::string DebugString() const;
62 public:
63  bool swig_overrides(int n) {
64  return (n < 2 ? swig_override[n] : false);
65  }
66 protected:
68 };
69 
71 
72 public:
73  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
76  virtual std::string DebugString() const;
77  virtual void EnterSearch();
78  virtual void RestartSearch();
79  virtual void ExitSearch();
84  virtual void AfterDecision(operations_research::Decision *const d, bool apply);
85  virtual void BeginFail();
86  virtual void EndFail();
87  virtual void BeginInitialPropagation();
88  virtual void EndInitialPropagation();
89  virtual bool AcceptSolution();
90  virtual bool AtSolution();
91  virtual void NoMoreSolutions();
92  virtual bool LocalOptimum();
94  virtual void AcceptNeighbor();
95  virtual void AcceptUncheckedNeighbor();
97  virtual void PeriodicCheck();
98  virtual int ProgressPercent();
99  virtual void Accept(operations_research::ModelVisitor *const visitor) const;
100  virtual void Install();
101 public:
102  bool swig_overrides(int n) {
103  return (n < 25 ? swig_override[n] : false);
104  }
105 protected:
107 };
108 
110 
111 public:
112  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
113  SwigDirector_LocalSearchOperator(JNIEnv *jenv);
115  virtual std::string DebugString() const;
117  virtual void Start(operations_research::Assignment const *assignment);
118  virtual void Reset();
119  virtual bool HasFragments() const;
120  virtual bool HoldsDelta() const;
121 public:
122  bool swig_overrides(int n) {
123  return (n < 6 ? swig_override[n] : false);
124  }
125 protected:
127 };
128 
130 
131 public:
132  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
134  SwigDirector_IntVarLocalSearchOperator(JNIEnv *jenv, std::vector< operations_research::IntVar * > const &vars, bool keep_inverse_values = false);
136  virtual std::string DebugString() const;
138  virtual void Start(operations_research::Assignment const *assignment);
139  virtual void Reset();
140  virtual bool HasFragments() const;
141  virtual bool HoldsDelta() const;
142  virtual bool IsIncremental() const;
143  virtual bool SkipUnchanged(int index) const;
144  virtual void OnStart();
145  virtual bool MakeOneNeighbor();
146  virtual bool MakeOneNeighborSwigPublic() {
148  }
149 public:
150  bool swig_overrides(int n) {
151  return (n < 7 ? swig_override[n] : false);
152  }
153 protected:
155 };
156 
158 
159 public:
160  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
162  SwigDirector_SequenceVarLocalSearchOperator(JNIEnv *jenv, std::vector< operations_research::SequenceVar * > const &vars);
164  virtual std::string DebugString() const;
166  virtual void Start(operations_research::Assignment const *assignment);
167  virtual void Reset();
168  virtual bool HasFragments() const;
169  virtual bool HoldsDelta() const;
170  virtual bool IsIncremental() const;
171  virtual bool SkipUnchanged(int index) const;
172  virtual void OnStart();
173 public:
174  bool swig_overrides(int n) {
175  return (n < 7 ? swig_override[n] : false);
176  }
177 protected:
179 };
180 
182 
183 public:
184  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
185  SwigDirector_BaseLns(JNIEnv *jenv, std::vector< operations_research::IntVar * > const &vars);
187  virtual std::string DebugString() const;
189  virtual void Start(operations_research::Assignment const *assignment);
190  virtual void Reset();
191  virtual bool HasFragments() const;
192  virtual bool HoldsDelta() const;
193  virtual bool IsIncremental() const;
194  virtual void InitFragments();
195  virtual bool NextFragment();
196 public:
197  bool swig_overrides(int n) {
198  return (n < 7 ? swig_override[n] : false);
199  }
200 protected:
202 };
203 
205 
206 public:
207  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
208  SwigDirector_ChangeValue(JNIEnv *jenv, std::vector< operations_research::IntVar * > const &vars);
210  virtual std::string DebugString() const;
212  virtual void Start(operations_research::Assignment const *assignment);
213  virtual void Reset();
214  virtual bool HasFragments() const;
215  virtual bool HoldsDelta() const;
216  virtual bool IsIncremental() const;
217  virtual bool SkipUnchanged(int index) const;
218  virtual void OnStart();
219  virtual bool MakeOneNeighbor();
220  virtual bool MakeOneNeighborSwigPublic() {
222  }
224 public:
225  bool swig_overrides(int n) {
226  return (n < 8 ? swig_override[n] : false);
227  }
228 protected:
230 };
231 
233 
234 public:
235  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
236  SwigDirector_PathOperator(JNIEnv *jenv, std::vector< operations_research::IntVar * > const &next_vars, std::vector< operations_research::IntVar * > const &path_vars, int number_of_base_nodes, bool skip_locally_optimal_paths, bool accept_path_end_base, std::function< int (int64) > start_empty_path_class);
238  virtual std::string DebugString() const;
240  virtual void Start(operations_research::Assignment const *assignment);
241  virtual void Reset();
242  virtual bool HasFragments() const;
243  virtual bool HoldsDelta() const;
244  virtual bool IsIncremental() const;
245  virtual bool SkipUnchanged(int index) const;
246  virtual void OnStart();
247  virtual bool MakeOneNeighbor();
248  virtual bool MakeOneNeighborSwigPublic() {
250  }
251  virtual bool MakeNeighbor();
252  virtual void OnNodeInitialization();
255  }
259  }
260  virtual bool OnSamePathAsPreviousBase(int64 base_index);
261  virtual bool OnSamePathAsPreviousBaseSwigPublic(int64 base_index) {
263  }
264  virtual int64 GetBaseNodeRestartPosition(int base_index);
265  virtual int64 GetBaseNodeRestartPositionSwigPublic(int base_index) {
267  }
268  virtual void SetNextBaseToIncrement(int64 base_index);
269  virtual void SetNextBaseToIncrementSwigPublic(int64 base_index) {
271  }
272  virtual bool ConsiderAlternatives(int64 base_index) const;
273  virtual bool ConsiderAlternativesSwigPublic(int64 base_index) const {
275  }
276  virtual bool InitPosition() const;
277  virtual bool InitPositionSwigPublic() const {
279  }
280 public:
281  bool swig_overrides(int n) {
282  return (n < 15 ? swig_override[n] : false);
283  }
284 protected:
286 };
287 
289 
290 public:
291  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
292  SwigDirector_LocalSearchFilter(JNIEnv *jenv);
294  virtual std::string DebugString() const;
297  virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64 objective_min, int64 objective_max);
298  virtual bool IsIncremental() const;
300  virtual void Revert();
301  virtual void Reset();
304 public:
305  bool swig_overrides(int n) {
306  return (n < 10 ? swig_override[n] : false);
307  }
308 protected:
310 };
311 
313 
314 public:
315  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
316  SwigDirector_LocalSearchFilterManager(JNIEnv *jenv, std::vector< operations_research::LocalSearchFilterManager::FilterEvent > filter_events);
317  SwigDirector_LocalSearchFilterManager(JNIEnv *jenv, std::vector< operations_research::LocalSearchFilter * > filters);
319  virtual std::string DebugString() const;
320 public:
321  bool swig_overrides(int n) {
322  return (n < 1 ? swig_override[n] : false);
323  }
324 protected:
326 };
327 
329 
330 public:
331  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
332  SwigDirector_IntVarLocalSearchFilter(JNIEnv *jenv, std::vector< operations_research::IntVar * > const &vars);
334  virtual std::string DebugString() const;
337  virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64 objective_min, int64 objective_max);
338  virtual bool IsIncremental() const;
339  virtual void Revert();
340  virtual void Reset();
346  }
347 public:
348  bool swig_overrides(int n) {
349  return (n < 10 ? swig_override[n] : false);
350  }
351 protected:
353 };
354 
356 
357 public:
358  void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
359  SwigDirector_SymmetryBreaker(JNIEnv *jenv);
361  virtual std::string DebugString() const;
363  virtual void VisitSplitVariableDomain(operations_research::IntVar *const var, int64 value, bool start_with_lower_half);
368  virtual void VisitUnknownDecision();
369 public:
370  bool swig_overrides(int n) {
371  return (n < 8 ? swig_override[n] : false);
372  }
373 protected:
375 };
376 
377 
378 #endif
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackReset, SWIG_Callback2_t callbackHasFragments, SWIG_Callback3_t callbackHoldsDelta, SWIG_Callback4_t callbackIsIncremental, SWIG_Callback5_t callbackInitFragments, SWIG_Callback6_t callbackNextFragment)
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
virtual bool HasFragments() const
virtual bool HoldsDelta() const
SwigDirector_BaseLns(std::vector< operations_research::IntVar * > const &vars)
virtual void Reset()
virtual void InitFragments()
virtual ~SwigDirector_BaseLns()
virtual std::string DebugString() const
virtual bool IsIncremental() const
virtual bool NextFragment()
virtual void Start(operations_research::Assignment const *assignment)
Swig::BoolArray< 7 > swig_override
virtual int64 ModifyValue(int64 index, int64 value)
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
virtual bool SkipUnchanged(int index) const
virtual bool HasFragments() const
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackReset, SWIG_Callback2_t callbackHasFragments, SWIG_Callback3_t callbackHoldsDelta, SWIG_Callback4_t callbackIsIncremental, SWIG_Callback5_t callbackOnStart, SWIG_Callback6_t callbackMakeOneNeighbor, SWIG_Callback7_t callbackModifyValue)
virtual bool HoldsDelta() const
virtual bool MakeOneNeighbor()
This method should not be overridden. Override ModifyValue() instead.
virtual ~SwigDirector_ChangeValue()
SwigDirector_ChangeValue(std::vector< operations_research::IntVar * > const &vars)
virtual std::string DebugString() const
virtual bool IsIncremental() const
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
virtual void Start(operations_research::Assignment const *assignment)
virtual operations_research::Decision * Next(operations_research::Solver *const s)
This is the main method of the decision builder class.
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackNextWrapper)
virtual std::string DebugString() const
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackApplyWrapper, SWIG_Callback2_t callbackRefuteWrapper, SWIG_Callback3_t callbackAccept)
virtual ~SwigDirector_Decision()
virtual void Refute(operations_research::Solver *const s)
Refute will be called after a backtrack.
virtual std::string DebugString() const
virtual void Apply(operations_research::Solver *const s)
Apply will be called first when the decision is executed.
Swig::BoolArray< 4 > swig_override
virtual void Accept(operations_research::DecisionVisitor *const visitor) const
Accepts the given visitor.
virtual void VisitRankFirstInterval(operations_research::SequenceVar *const sequence, int index)
void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global)
virtual void VisitScheduleOrExpedite(operations_research::IntervalVar *const var, int64 est)
virtual void VisitRankLastInterval(operations_research::SequenceVar *const sequence, int index)
virtual std::string DebugString() const
virtual void VisitSetVariableValue(operations_research::IntVar *const var, int64 value)
virtual void VisitScheduleOrPostpone(operations_research::IntervalVar *const var, int64 est)
virtual void VisitSplitVariableDomain(operations_research::IntVar *const var, int64 value, bool start_with_lower_half)
virtual int64 GetSynchronizedObjectiveValue() const
Objective value from last time Synchronize() was called.
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackRelax, SWIG_Callback2_t callbackCommit, SWIG_Callback3_t callbackAccept, SWIG_Callback4_t callbackIsIncremental, SWIG_Callback5_t callbackRevert, SWIG_Callback6_t callbackReset, SWIG_Callback7_t callbackGetSynchronizedObjectiveValue, SWIG_Callback8_t callbackGetAcceptedObjectiveValue, SWIG_Callback9_t callbackOnSynchronize)
virtual void Reset()
Sets the filter to empty solution.
SwigDirector_IntVarLocalSearchFilter(std::vector< operations_research::IntVar * > const &vars)
virtual void OnSynchronize(operations_research::Assignment const *delta)
virtual void Relax(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta)
Lets the filter know what delta and deltadelta will be passed in the next Accept().
virtual void OnSynchronizeSwigPublic(operations_research::Assignment const *delta)
virtual std::string DebugString() const
virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64 objective_min, int64 objective_max)
Accepts a "delta" given the assignment with which the filter has been synchronized; the delta holds t...
virtual bool IsIncremental() const
virtual void Revert()
Cancels the changes made by the last Relax()/Accept() calls.
virtual int64 GetAcceptedObjectiveValue() const
Objective value from the last time Accept() was called and returned true.
virtual void Commit(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta)
Dual of Relax(), lets the filter know that the delta was accepted.
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
virtual bool SkipUnchanged(int index) const
virtual bool MakeOneNeighbor()
Creates a new neighbor.
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackReset, SWIG_Callback2_t callbackHasFragments, SWIG_Callback3_t callbackHoldsDelta, SWIG_Callback4_t callbackIsIncremental, SWIG_Callback5_t callbackOnStart, SWIG_Callback6_t callbackMakeOneNeighbor)
virtual std::string DebugString() const
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
virtual void Start(operations_research::Assignment const *assignment)
virtual int64 GetSynchronizedObjectiveValue() const
Objective value from last time Synchronize() was called.
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackRelax, SWIG_Callback2_t callbackCommit, SWIG_Callback3_t callbackAccept, SWIG_Callback4_t callbackIsIncremental, SWIG_Callback5_t callbackSynchronize, SWIG_Callback6_t callbackRevert, SWIG_Callback7_t callbackReset, SWIG_Callback8_t callbackGetSynchronizedObjectiveValue, SWIG_Callback9_t callbackGetAcceptedObjectiveValue)
virtual void Reset()
Sets the filter to empty solution.
virtual void Relax(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta)
Lets the filter know what delta and deltadelta will be passed in the next Accept().
virtual std::string DebugString() const
virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64 objective_min, int64 objective_max)
Accepts a "delta" given the assignment with which the filter has been synchronized; the delta holds t...
virtual bool IsIncremental() const
virtual void Revert()
Cancels the changes made by the last Relax()/Accept() calls.
virtual void Synchronize(operations_research::Assignment const *assignment, operations_research::Assignment const *delta)
Synchronizes the filter with the current solution, delta being the difference with the solution passe...
virtual int64 GetAcceptedObjectiveValue() const
Objective value from the last time Accept() was called and returned true.
virtual void Commit(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta)
Dual of Relax(), lets the filter know that the delta was accepted.
void swig_connect_director(SWIG_Callback0_t callbackToString)
virtual std::string DebugString() const
SwigDirector_LocalSearchFilterManager(std::vector< operations_research::LocalSearchFilterManager::FilterEvent > filter_events)
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual bool HasFragments() const
virtual bool HoldsDelta() const
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackMakeNextNeighbor, SWIG_Callback2_t callbackStart, SWIG_Callback3_t callbackReset, SWIG_Callback4_t callbackHasFragments, SWIG_Callback5_t callbackHoldsDelta)
virtual std::string DebugString() const
virtual void Start(operations_research::Assignment const *assignment)
virtual void OnNodeInitialization()
Called by OnStart() after initializing node information.
virtual bool OnSamePathAsPreviousBaseSwigPublic(int64 base_index)
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
virtual bool SkipUnchanged(int index) const
virtual bool HasFragments() const
virtual bool HoldsDelta() const
virtual bool MakeNeighbor()
virtual void SetNextBaseToIncrement(int64 base_index)
Set the next base to increment on next iteration.
virtual bool ConsiderAlternatives(int64 base_index) const
Indicates if alternatives should be considered when iterating over base nodes.
virtual ~SwigDirector_PathOperator()
virtual bool RestartAtPathStartOnSynchronize()
When the operator is being synchronized with a new solution (when Start() is called),...
virtual void SetNextBaseToIncrementSwigPublic(int64 base_index)
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackReset, SWIG_Callback2_t callbackHasFragments, SWIG_Callback3_t callbackHoldsDelta, SWIG_Callback4_t callbackIsIncremental, SWIG_Callback5_t callbackOnStart, SWIG_Callback6_t callbackMakeOneNeighbor, SWIG_Callback7_t callbackMakeNeighbor, SWIG_Callback8_t callbackOnNodeInitialization, SWIG_Callback9_t callbackRestartAtPathStartOnSynchronize, SWIG_Callback10_t callbackOnSamePathAsPreviousBase, SWIG_Callback11_t callbackGetBaseNodeRestartPosition, SWIG_Callback12_t callbackSetNextBaseToIncrement, SWIG_Callback13_t callbackConsiderAlternatives, SWIG_Callback14_t callbackInitPosition)
virtual bool ConsiderAlternativesSwigPublic(int64 base_index) const
virtual bool InitPositionSwigPublic() const
virtual bool MakeOneNeighbor()
This method should not be overridden. Override MakeNeighbor() instead.
virtual int64 GetBaseNodeRestartPositionSwigPublic(int base_index)
SwigDirector_PathOperator(JNIEnv *jenv, std::vector< operations_research::IntVar * > const &next_vars, std::vector< operations_research::IntVar * > const &path_vars, int number_of_base_nodes, bool skip_locally_optimal_paths, bool accept_path_end_base, std::function< int(int64) > start_empty_path_class)
virtual std::string DebugString() const
virtual bool RestartAtPathStartOnSynchronizeSwigPublic()
virtual bool IsIncremental() const
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
virtual int64 GetBaseNodeRestartPosition(int base_index)
Returns the index of the node to which the base node of index base_index must be set to when it reach...
virtual void Start(operations_research::Assignment const *assignment)
virtual bool OnSamePathAsPreviousBase(int64 base_index)
Returns true if a base node has to be on the same path as the "previous" base node (base node of inde...
virtual bool InitPosition() const
Returns true if the operator needs to restart its initial position at each call to Start()
virtual void Install()
Registers itself on the solver such that it gets notified of the search and propagation events.
virtual bool IsUncheckedSolutionLimitReached()
Returns true if the limit of solutions has been reached including unchecked solutions.
virtual void ExitSearch()
End of the search.
virtual void EndInitialPropagation()
After the initial propagation.
virtual void PeriodicCheck()
Periodic call to check limits in long running methods.
virtual void BeginFail()
Just when the failure occurs.
virtual void RestartSearch()
Restart the search.
virtual void EnterSearch()
Beginning of the search.
virtual bool AcceptSolution()
This method is called when a solution is found.
virtual int ProgressPercent()
Returns a percentage representing the propress of the search before reaching limits.
virtual void EndFail()
After completing the backtrack.
virtual void AcceptNeighbor()
After accepting a neighbor during local search.
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackEnterSearch, SWIG_Callback2_t callbackRestartSearch, SWIG_Callback3_t callbackExitSearch, SWIG_Callback4_t callbackBeginNextDecision, SWIG_Callback5_t callbackEndNextDecision, SWIG_Callback6_t callbackApplyDecision, SWIG_Callback7_t callbackRefuteDecision, SWIG_Callback8_t callbackAfterDecision, SWIG_Callback9_t callbackBeginFail, SWIG_Callback10_t callbackEndFail, SWIG_Callback11_t callbackBeginInitialPropagation, SWIG_Callback12_t callbackEndInitialPropagation, SWIG_Callback13_t callbackAcceptSolution, SWIG_Callback14_t callbackAtSolution, SWIG_Callback15_t callbackNoMoreSolutions, SWIG_Callback16_t callbackLocalOptimum, SWIG_Callback17_t callbackAcceptDelta, SWIG_Callback18_t callbackAcceptNeighbor, SWIG_Callback19_t callbackAcceptUncheckedNeighbor, SWIG_Callback20_t callbackIsUncheckedSolutionLimitReached, SWIG_Callback21_t callbackPeriodicCheck, SWIG_Callback22_t callbackProgressPercent, SWIG_Callback23_t callbackAccept, SWIG_Callback24_t callbackInstall)
virtual void ApplyDecision(operations_research::Decision *const d)
Before applying the decision.
virtual void NoMoreSolutions()
When the search tree is finished.
virtual void AfterDecision(operations_research::Decision *const d, bool apply)
Just after refuting or applying the decision, apply is true after Apply.
virtual void BeginNextDecision(operations_research::DecisionBuilder *const b)
Before calling DecisionBuilder::Next.
virtual void RefuteDecision(operations_research::Decision *const d)
Before refuting the decision.
virtual std::string DebugString() const
virtual bool AtSolution()
This method is called when a valid solution is found.
virtual void EndNextDecision(operations_research::DecisionBuilder *const b, operations_research::Decision *const d)
After calling DecisionBuilder::Next, along with the returned decision.
virtual void Accept(operations_research::ModelVisitor *const visitor) const
Accepts the given model visitor.
virtual bool LocalOptimum()
When a local optimum is reached.
virtual bool AcceptDelta(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual void BeginInitialPropagation()
Before the initial propagation.
virtual void AcceptUncheckedNeighbor()
After accepting an unchecked neighbor during local search.
virtual ~SwigDirector_SearchMonitor()
SwigDirector_SearchMonitor(operations_research::Solver *const s)
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual bool SkipUnchanged(int index) const
virtual std::string DebugString() const
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
virtual void Start(operations_research::Assignment const *assignment)
This method should not be overridden.
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackMakeNextNeighbor, SWIG_Callback2_t callbackReset, SWIG_Callback3_t callbackHasFragments, SWIG_Callback4_t callbackHoldsDelta, SWIG_Callback5_t callbackIsIncremental, SWIG_Callback6_t callbackOnStart)
virtual void VisitScheduleOrExpedite(operations_research::IntervalVar *const var, int64 est)
virtual void VisitSetVariableValue(operations_research::IntVar *const var, int64 value)
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackVisitSetVariableValue, SWIG_Callback2_t callbackVisitSplitVariableDomain, SWIG_Callback3_t callbackVisitScheduleOrPostpone, SWIG_Callback4_t callbackVisitScheduleOrExpedite, SWIG_Callback5_t callbackVisitRankFirstInterval, SWIG_Callback6_t callbackVisitRankLastInterval, SWIG_Callback7_t callbackVisitUnknownDecision)
virtual std::string DebugString() const
virtual void VisitRankLastInterval(operations_research::SequenceVar *const sequence, int index)
virtual void VisitRankFirstInterval(operations_research::SequenceVar *const sequence, int index)
virtual void VisitUnknownDecision()
virtual void VisitSplitVariableDomain(operations_research::IntVar *const var, int64 value, bool start_with_lower_half)
virtual void VisitScheduleOrPostpone(operations_research::IntervalVar *const var, int64 est)
An Assignment is a variable -> domains mapping, used to report solutions to the user.
This is the base class for building an Lns operator.
Defines operators which change the value of variables; each neighbor corresponds to one modified vari...
bool MakeOneNeighbor() override
This method should not be overridden. Override ModifyValue() instead.
A DecisionBuilder is responsible for creating the search tree.
A Decision represents a choice point in the search tree.
A DecisionVisitor is used to inspect a decision.
The class IntVar is a subset of IntExpr.
virtual void OnSynchronize(const Assignment *delta)
Specialization of LocalSearchOperator built from an array of IntVars which specifies the scope of the...
virtual bool MakeOneNeighbor()
Creates a new neighbor.
Definition: local_search.cc:95
Interval variables are often used in scheduling.
Local Search Filters are used for fast neighbor pruning.
Filter manager: when a move is made, filters are executed to decide whether the solution is feasible ...
The base class for all local search operators.
Base class of the local search operators dedicated to path modifications (a path is a set of nodes li...
virtual void OnNodeInitialization()
Called by OnStart() after initializing node information.
virtual void SetNextBaseToIncrement(int64 base_index)
Set the next base to increment on next iteration.
virtual bool ConsiderAlternatives(int64 base_index) const
Indicates if alternatives should be considered when iterating over base nodes.
virtual bool RestartAtPathStartOnSynchronize()
When the operator is being synchronized with a new solution (when Start() is called),...
virtual int64 GetBaseNodeRestartPosition(int base_index)
Returns the index of the node to which the base node of index base_index must be set to when it reach...
bool MakeOneNeighbor() override
This method should not be overridden. Override MakeNeighbor() instead.
virtual bool OnSamePathAsPreviousBase(int64 base_index)
Returns true if a base node has to be on the same path as the "previous" base node (base node of inde...
virtual bool InitPosition() const
Returns true if the operator needs to restart its initial position at each call to Start()
A search monitor is a simple set of callbacks to monitor all search events.
A sequence variable is a variable whose domain is a set of possible orderings of the interval variabl...
A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in r...
int64 value
IntVar * var
Definition: expr_array.cc:1858
int64_t int64
int index
Definition: pack.cc:508
int64 delta
Definition: resource.cc:1684