OR-Tools  9.1
constraint_solver_csharp_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.1
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_operations_research_constraint_solver_WRAP_H_
12 #define SWIG_operations_research_constraint_solver_WRAP_H_
13 
15 
16 public:
18  virtual ~SwigDirector_Decision();
19  virtual std::string DebugString() const;
20  virtual void Apply(operations_research::Solver *const s);
21  virtual void Refute(operations_research::Solver *const s);
22  virtual void Accept(operations_research::DecisionVisitor *const visitor) const;
23 
24  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
25  typedef void (SWIGSTDCALL* SWIG_Callback1_t)(void *);
26  typedef void (SWIGSTDCALL* SWIG_Callback2_t)(void *);
27  typedef void (SWIGSTDCALL* SWIG_Callback3_t)(void *);
28  void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackApplyWrapper, SWIG_Callback2_t callbackRefuteWrapper, SWIG_Callback3_t callbackAccept);
29 
30 private:
31  SWIG_Callback0_t swig_callbackToString;
32  SWIG_Callback1_t swig_callbackApplyWrapper;
33  SWIG_Callback2_t swig_callbackRefuteWrapper;
34  SWIG_Callback3_t swig_callbackAccept;
35  void swig_init_callbacks();
36 };
37 
39 
40 public:
43  virtual std::string DebugString() const;
45 
46  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
47  typedef void * (SWIGSTDCALL* SWIG_Callback1_t)(void *);
48  void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackNextWrapper);
49 
50 private:
51  SWIG_Callback0_t swig_callbackToString;
52  SWIG_Callback1_t swig_callbackNextWrapper;
53  void swig_init_callbacks();
54 };
55 
57 
58 public:
60  virtual ~SwigDirector_Demon();
61  virtual std::string DebugString() const;
62  virtual void Run(operations_research::Solver *const s);
64 
65  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
66  typedef void (SWIGSTDCALL* SWIG_Callback1_t)(void *);
67  typedef int (SWIGSTDCALL* SWIG_Callback2_t)();
68  void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackRunWrapper, SWIG_Callback2_t callbackPriority);
69 
70 private:
71  SWIG_Callback0_t swig_callbackToString;
72  SWIG_Callback1_t swig_callbackRunWrapper;
73  SWIG_Callback2_t swig_callbackPriority;
74  void swig_init_callbacks();
75 };
76 
78 
79 public:
81  virtual ~SwigDirector_Constraint();
82  virtual std::string DebugString() const;
83  virtual std::string name() const;
84  virtual std::string BaseName() const;
85  virtual void Post();
86  virtual void InitialPropagate();
87 
88  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
89  typedef char * (SWIGSTDCALL* SWIG_Callback1_t)();
90  typedef char * (SWIGSTDCALL* SWIG_Callback2_t)();
91  typedef void (SWIGSTDCALL* SWIG_Callback3_t)();
92  typedef void (SWIGSTDCALL* SWIG_Callback4_t)();
93  void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackName, SWIG_Callback2_t callbackBaseName, SWIG_Callback3_t callbackPost, SWIG_Callback4_t callbackInitialPropagateWrapper);
94 
95 private:
96  SWIG_Callback0_t swig_callbackToString;
97  SWIG_Callback1_t swig_callbackName;
98  SWIG_Callback2_t swig_callbackBaseName;
99  SWIG_Callback3_t swig_callbackPost;
100  SWIG_Callback4_t swig_callbackInitialPropagateWrapper;
101  void swig_init_callbacks();
102 };
103 
105 
106 public:
108  virtual ~SwigDirector_SearchMonitor();
109  virtual std::string DebugString() const;
110  virtual void EnterSearch();
111  virtual void RestartSearch();
112  virtual void ExitSearch();
115  virtual void ApplyDecision(operations_research::Decision *const d);
116  virtual void RefuteDecision(operations_research::Decision *const d);
117  virtual void AfterDecision(operations_research::Decision *const d, bool apply);
118  virtual void BeginFail();
119  virtual void EndFail();
120  virtual void BeginInitialPropagation();
121  virtual void EndInitialPropagation();
122  virtual bool AcceptSolution();
123  virtual bool AtSolution();
124  virtual void NoMoreSolutions();
125  virtual bool LocalOptimum();
127  virtual void AcceptNeighbor();
128  virtual void AcceptUncheckedNeighbor();
129  virtual bool IsUncheckedSolutionLimitReached();
130  virtual void PeriodicCheck();
131  virtual int ProgressPercent();
132  virtual void Accept(operations_research::ModelVisitor *const visitor) const;
133  virtual void Install();
134 
135  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
136  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
137  typedef void (SWIGSTDCALL* SWIG_Callback2_t)();
138  typedef void (SWIGSTDCALL* SWIG_Callback3_t)();
139  typedef void (SWIGSTDCALL* SWIG_Callback4_t)(void *);
140  typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *, void *);
141  typedef void (SWIGSTDCALL* SWIG_Callback6_t)(void *);
142  typedef void (SWIGSTDCALL* SWIG_Callback7_t)(void *);
143  typedef void (SWIGSTDCALL* SWIG_Callback8_t)(void *, unsigned int);
144  typedef void (SWIGSTDCALL* SWIG_Callback9_t)();
145  typedef void (SWIGSTDCALL* SWIG_Callback10_t)();
146  typedef void (SWIGSTDCALL* SWIG_Callback11_t)();
147  typedef void (SWIGSTDCALL* SWIG_Callback12_t)();
148  typedef unsigned int (SWIGSTDCALL* SWIG_Callback13_t)();
149  typedef unsigned int (SWIGSTDCALL* SWIG_Callback14_t)();
150  typedef void (SWIGSTDCALL* SWIG_Callback15_t)();
151  typedef unsigned int (SWIGSTDCALL* SWIG_Callback16_t)();
152  typedef unsigned int (SWIGSTDCALL* SWIG_Callback17_t)(void *, void *);
153  typedef void (SWIGSTDCALL* SWIG_Callback18_t)();
154  typedef void (SWIGSTDCALL* SWIG_Callback19_t)();
155  typedef unsigned int (SWIGSTDCALL* SWIG_Callback20_t)();
156  typedef void (SWIGSTDCALL* SWIG_Callback21_t)();
157  typedef int (SWIGSTDCALL* SWIG_Callback22_t)();
158  typedef void (SWIGSTDCALL* SWIG_Callback23_t)(void *);
159  typedef void (SWIGSTDCALL* SWIG_Callback24_t)();
160  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);
161 
162 private:
163  SWIG_Callback0_t swig_callbackToString;
164  SWIG_Callback1_t swig_callbackEnterSearch;
165  SWIG_Callback2_t swig_callbackRestartSearch;
166  SWIG_Callback3_t swig_callbackExitSearch;
167  SWIG_Callback4_t swig_callbackBeginNextDecision;
168  SWIG_Callback5_t swig_callbackEndNextDecision;
169  SWIG_Callback6_t swig_callbackApplyDecision;
170  SWIG_Callback7_t swig_callbackRefuteDecision;
171  SWIG_Callback8_t swig_callbackAfterDecision;
172  SWIG_Callback9_t swig_callbackBeginFail;
173  SWIG_Callback10_t swig_callbackEndFail;
174  SWIG_Callback11_t swig_callbackBeginInitialPropagation;
175  SWIG_Callback12_t swig_callbackEndInitialPropagation;
176  SWIG_Callback13_t swig_callbackAcceptSolution;
177  SWIG_Callback14_t swig_callbackAtSolution;
178  SWIG_Callback15_t swig_callbackNoMoreSolutions;
179  SWIG_Callback16_t swig_callbackLocalOptimum;
180  SWIG_Callback17_t swig_callbackAcceptDelta;
181  SWIG_Callback18_t swig_callbackAcceptNeighbor;
182  SWIG_Callback19_t swig_callbackAcceptUncheckedNeighbor;
183  SWIG_Callback20_t swig_callbackIsUncheckedSolutionLimitReached;
184  SWIG_Callback21_t swig_callbackPeriodicCheck;
185  SWIG_Callback22_t swig_callbackProgressPercent;
186  SWIG_Callback23_t swig_callbackAccept;
187  SWIG_Callback24_t swig_callbackInstall;
188  void swig_init_callbacks();
189 };
190 
192 
193 public:
197  virtual std::string DebugString() const;
198  virtual void EnterSearch();
199  virtual void RestartSearch();
200  virtual void ExitSearch();
203  virtual void ApplyDecision(operations_research::Decision *const d);
204  virtual void RefuteDecision(operations_research::Decision *const d);
205  virtual void AfterDecision(operations_research::Decision *const d, bool apply);
206  virtual void BeginFail();
207  virtual void EndFail();
208  virtual void BeginInitialPropagation();
209  virtual void EndInitialPropagation();
210  virtual bool AcceptSolution();
211  virtual bool AtSolution();
212  virtual void NoMoreSolutions();
213  virtual bool LocalOptimum();
215  virtual void AcceptNeighbor();
216  virtual void AcceptUncheckedNeighbor();
217  virtual bool IsUncheckedSolutionLimitReached();
218  virtual void PeriodicCheck();
219  virtual int ProgressPercent();
220  virtual void Accept(operations_research::ModelVisitor *const visitor) const;
221  virtual void Install();
222 
223  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
224  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
225  typedef void (SWIGSTDCALL* SWIG_Callback2_t)();
226  typedef void (SWIGSTDCALL* SWIG_Callback3_t)();
227  typedef void (SWIGSTDCALL* SWIG_Callback4_t)(void *);
228  typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *, void *);
229  typedef void (SWIGSTDCALL* SWIG_Callback6_t)(void *);
230  typedef void (SWIGSTDCALL* SWIG_Callback7_t)(void *);
231  typedef void (SWIGSTDCALL* SWIG_Callback8_t)(void *, unsigned int);
232  typedef void (SWIGSTDCALL* SWIG_Callback9_t)();
233  typedef void (SWIGSTDCALL* SWIG_Callback10_t)();
234  typedef void (SWIGSTDCALL* SWIG_Callback11_t)();
235  typedef void (SWIGSTDCALL* SWIG_Callback12_t)();
236  typedef unsigned int (SWIGSTDCALL* SWIG_Callback13_t)();
237  typedef unsigned int (SWIGSTDCALL* SWIG_Callback14_t)();
238  typedef void (SWIGSTDCALL* SWIG_Callback15_t)();
239  typedef unsigned int (SWIGSTDCALL* SWIG_Callback16_t)();
240  typedef unsigned int (SWIGSTDCALL* SWIG_Callback17_t)(void *, void *);
241  typedef void (SWIGSTDCALL* SWIG_Callback18_t)();
242  typedef void (SWIGSTDCALL* SWIG_Callback19_t)();
243  typedef unsigned int (SWIGSTDCALL* SWIG_Callback20_t)();
244  typedef void (SWIGSTDCALL* SWIG_Callback21_t)();
245  typedef int (SWIGSTDCALL* SWIG_Callback22_t)();
246  typedef void (SWIGSTDCALL* SWIG_Callback23_t)(void *);
247  typedef void (SWIGSTDCALL* SWIG_Callback24_t)();
248  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);
249 
250 private:
251  SWIG_Callback0_t swig_callbackToString;
252  SWIG_Callback1_t swig_callbackEnterSearch;
253  SWIG_Callback2_t swig_callbackRestartSearch;
254  SWIG_Callback3_t swig_callbackExitSearch;
255  SWIG_Callback4_t swig_callbackBeginNextDecision;
256  SWIG_Callback5_t swig_callbackEndNextDecision;
257  SWIG_Callback6_t swig_callbackApplyDecision;
258  SWIG_Callback7_t swig_callbackRefuteDecision;
259  SWIG_Callback8_t swig_callbackAfterDecision;
260  SWIG_Callback9_t swig_callbackBeginFail;
261  SWIG_Callback10_t swig_callbackEndFail;
262  SWIG_Callback11_t swig_callbackBeginInitialPropagation;
263  SWIG_Callback12_t swig_callbackEndInitialPropagation;
264  SWIG_Callback13_t swig_callbackAcceptSolution;
265  SWIG_Callback14_t swig_callbackAtSolution;
266  SWIG_Callback15_t swig_callbackNoMoreSolutions;
267  SWIG_Callback16_t swig_callbackLocalOptimum;
268  SWIG_Callback17_t swig_callbackAcceptDelta;
269  SWIG_Callback18_t swig_callbackAcceptNeighbor;
270  SWIG_Callback19_t swig_callbackAcceptUncheckedNeighbor;
271  SWIG_Callback20_t swig_callbackIsUncheckedSolutionLimitReached;
272  SWIG_Callback21_t swig_callbackPeriodicCheck;
273  SWIG_Callback22_t swig_callbackProgressPercent;
274  SWIG_Callback23_t swig_callbackAccept;
275  SWIG_Callback24_t swig_callbackInstall;
276  void swig_init_callbacks();
277 };
278 
280 
281 public:
282  SwigDirector_OptimizeVar(operations_research::Solver *const s, bool maximize, operations_research::IntVar *const a, int64_t step);
283  virtual ~SwigDirector_OptimizeVar();
284  virtual std::string DebugString() const;
285  virtual void EnterSearch();
286  virtual void RestartSearch();
287  virtual void ExitSearch();
290  virtual void ApplyDecision(operations_research::Decision *const d);
291  virtual void RefuteDecision(operations_research::Decision *const d);
292  virtual void AfterDecision(operations_research::Decision *const d, bool apply);
293  virtual void BeginFail();
294  virtual void EndFail();
295  virtual void BeginInitialPropagation();
296  virtual void EndInitialPropagation();
297  virtual bool AcceptSolution();
298  virtual bool AtSolution();
299  virtual void NoMoreSolutions();
300  virtual bool LocalOptimum();
302  virtual void AcceptNeighbor();
303  virtual void AcceptUncheckedNeighbor();
304  virtual bool IsUncheckedSolutionLimitReached();
305  virtual void PeriodicCheck();
306  virtual int ProgressPercent();
307  virtual void Accept(operations_research::ModelVisitor *const visitor) const;
308  virtual void Install();
309  virtual std::string Print() const;
310 
311  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
312  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
313  typedef void (SWIGSTDCALL* SWIG_Callback2_t)();
314  typedef void (SWIGSTDCALL* SWIG_Callback3_t)();
315  typedef void (SWIGSTDCALL* SWIG_Callback4_t)(void *);
316  typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *, void *);
317  typedef void (SWIGSTDCALL* SWIG_Callback6_t)(void *);
318  typedef void (SWIGSTDCALL* SWIG_Callback7_t)(void *);
319  typedef void (SWIGSTDCALL* SWIG_Callback8_t)(void *, unsigned int);
320  typedef void (SWIGSTDCALL* SWIG_Callback9_t)();
321  typedef void (SWIGSTDCALL* SWIG_Callback10_t)();
322  typedef void (SWIGSTDCALL* SWIG_Callback11_t)();
323  typedef void (SWIGSTDCALL* SWIG_Callback12_t)();
324  typedef unsigned int (SWIGSTDCALL* SWIG_Callback13_t)();
325  typedef unsigned int (SWIGSTDCALL* SWIG_Callback14_t)();
326  typedef void (SWIGSTDCALL* SWIG_Callback15_t)();
327  typedef unsigned int (SWIGSTDCALL* SWIG_Callback16_t)();
328  typedef unsigned int (SWIGSTDCALL* SWIG_Callback17_t)(void *, void *);
329  typedef void (SWIGSTDCALL* SWIG_Callback18_t)();
330  typedef void (SWIGSTDCALL* SWIG_Callback19_t)();
331  typedef unsigned int (SWIGSTDCALL* SWIG_Callback20_t)();
332  typedef void (SWIGSTDCALL* SWIG_Callback21_t)();
333  typedef int (SWIGSTDCALL* SWIG_Callback22_t)();
334  typedef void (SWIGSTDCALL* SWIG_Callback23_t)(void *);
335  typedef void (SWIGSTDCALL* SWIG_Callback24_t)();
336  typedef char * (SWIGSTDCALL* SWIG_Callback25_t)();
337  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, SWIG_Callback25_t callbackPrint);
338 
339 private:
340  SWIG_Callback0_t swig_callbackToString;
341  SWIG_Callback1_t swig_callbackEnterSearch;
342  SWIG_Callback2_t swig_callbackRestartSearch;
343  SWIG_Callback3_t swig_callbackExitSearch;
344  SWIG_Callback4_t swig_callbackBeginNextDecision;
345  SWIG_Callback5_t swig_callbackEndNextDecision;
346  SWIG_Callback6_t swig_callbackApplyDecision;
347  SWIG_Callback7_t swig_callbackRefuteDecision;
348  SWIG_Callback8_t swig_callbackAfterDecision;
349  SWIG_Callback9_t swig_callbackBeginFail;
350  SWIG_Callback10_t swig_callbackEndFail;
351  SWIG_Callback11_t swig_callbackBeginInitialPropagation;
352  SWIG_Callback12_t swig_callbackEndInitialPropagation;
353  SWIG_Callback13_t swig_callbackAcceptSolution;
354  SWIG_Callback14_t swig_callbackAtSolution;
355  SWIG_Callback15_t swig_callbackNoMoreSolutions;
356  SWIG_Callback16_t swig_callbackLocalOptimum;
357  SWIG_Callback17_t swig_callbackAcceptDelta;
358  SWIG_Callback18_t swig_callbackAcceptNeighbor;
359  SWIG_Callback19_t swig_callbackAcceptUncheckedNeighbor;
360  SWIG_Callback20_t swig_callbackIsUncheckedSolutionLimitReached;
361  SWIG_Callback21_t swig_callbackPeriodicCheck;
362  SWIG_Callback22_t swig_callbackProgressPercent;
363  SWIG_Callback23_t swig_callbackAccept;
364  SWIG_Callback24_t swig_callbackInstall;
365  SWIG_Callback25_t swig_callbackPrint;
366  void swig_init_callbacks();
367 };
368 
370 
371 public:
373  virtual ~SwigDirector_SearchLimit();
374  virtual std::string DebugString() const;
375  virtual void EnterSearch();
376  virtual void RestartSearch();
377  virtual void ExitSearch();
380  virtual void ApplyDecision(operations_research::Decision *const d);
381  virtual void RefuteDecision(operations_research::Decision *const d);
382  virtual void AfterDecision(operations_research::Decision *const d, bool apply);
383  virtual void BeginFail();
384  virtual void EndFail();
385  virtual void BeginInitialPropagation();
386  virtual void EndInitialPropagation();
387  virtual bool AcceptSolution();
388  virtual bool AtSolution();
389  virtual void NoMoreSolutions();
390  virtual bool LocalOptimum();
392  virtual void AcceptNeighbor();
393  virtual void AcceptUncheckedNeighbor();
394  virtual bool IsUncheckedSolutionLimitReached();
395  virtual void PeriodicCheck();
396  virtual int ProgressPercent();
397  virtual void Accept(operations_research::ModelVisitor *const visitor) const;
398  virtual void Install();
399  virtual bool Check();
400  virtual void Init();
401  virtual void Copy(operations_research::SearchLimit const *const limit);
403 
404  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
405  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
406  typedef void (SWIGSTDCALL* SWIG_Callback2_t)();
407  typedef void (SWIGSTDCALL* SWIG_Callback3_t)();
408  typedef void (SWIGSTDCALL* SWIG_Callback4_t)(void *);
409  typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *, void *);
410  typedef void (SWIGSTDCALL* SWIG_Callback6_t)(void *);
411  typedef void (SWIGSTDCALL* SWIG_Callback7_t)(void *);
412  typedef void (SWIGSTDCALL* SWIG_Callback8_t)(void *, unsigned int);
413  typedef void (SWIGSTDCALL* SWIG_Callback9_t)();
414  typedef void (SWIGSTDCALL* SWIG_Callback10_t)();
415  typedef void (SWIGSTDCALL* SWIG_Callback11_t)();
416  typedef void (SWIGSTDCALL* SWIG_Callback12_t)();
417  typedef unsigned int (SWIGSTDCALL* SWIG_Callback13_t)();
418  typedef unsigned int (SWIGSTDCALL* SWIG_Callback14_t)();
419  typedef void (SWIGSTDCALL* SWIG_Callback15_t)();
420  typedef unsigned int (SWIGSTDCALL* SWIG_Callback16_t)();
421  typedef unsigned int (SWIGSTDCALL* SWIG_Callback17_t)(void *, void *);
422  typedef void (SWIGSTDCALL* SWIG_Callback18_t)();
423  typedef void (SWIGSTDCALL* SWIG_Callback19_t)();
424  typedef unsigned int (SWIGSTDCALL* SWIG_Callback20_t)();
425  typedef void (SWIGSTDCALL* SWIG_Callback21_t)();
426  typedef int (SWIGSTDCALL* SWIG_Callback22_t)();
427  typedef void (SWIGSTDCALL* SWIG_Callback23_t)(void *);
428  typedef void (SWIGSTDCALL* SWIG_Callback24_t)();
429  typedef unsigned int (SWIGSTDCALL* SWIG_Callback25_t)();
430  typedef void (SWIGSTDCALL* SWIG_Callback26_t)();
431  typedef void (SWIGSTDCALL* SWIG_Callback27_t)(void *);
432  typedef void * (SWIGSTDCALL* SWIG_Callback28_t)();
433  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, SWIG_Callback25_t callbackCheck, SWIG_Callback26_t callbackInit, SWIG_Callback27_t callbackCopy, SWIG_Callback28_t callbackMakeClone);
434 
435 private:
436  SWIG_Callback0_t swig_callbackToString;
437  SWIG_Callback1_t swig_callbackEnterSearch;
438  SWIG_Callback2_t swig_callbackRestartSearch;
439  SWIG_Callback3_t swig_callbackExitSearch;
440  SWIG_Callback4_t swig_callbackBeginNextDecision;
441  SWIG_Callback5_t swig_callbackEndNextDecision;
442  SWIG_Callback6_t swig_callbackApplyDecision;
443  SWIG_Callback7_t swig_callbackRefuteDecision;
444  SWIG_Callback8_t swig_callbackAfterDecision;
445  SWIG_Callback9_t swig_callbackBeginFail;
446  SWIG_Callback10_t swig_callbackEndFail;
447  SWIG_Callback11_t swig_callbackBeginInitialPropagation;
448  SWIG_Callback12_t swig_callbackEndInitialPropagation;
449  SWIG_Callback13_t swig_callbackAcceptSolution;
450  SWIG_Callback14_t swig_callbackAtSolution;
451  SWIG_Callback15_t swig_callbackNoMoreSolutions;
452  SWIG_Callback16_t swig_callbackLocalOptimum;
453  SWIG_Callback17_t swig_callbackAcceptDelta;
454  SWIG_Callback18_t swig_callbackAcceptNeighbor;
455  SWIG_Callback19_t swig_callbackAcceptUncheckedNeighbor;
456  SWIG_Callback20_t swig_callbackIsUncheckedSolutionLimitReached;
457  SWIG_Callback21_t swig_callbackPeriodicCheck;
458  SWIG_Callback22_t swig_callbackProgressPercent;
459  SWIG_Callback23_t swig_callbackAccept;
460  SWIG_Callback24_t swig_callbackInstall;
461  SWIG_Callback25_t swig_callbackCheck;
462  SWIG_Callback26_t swig_callbackInit;
463  SWIG_Callback27_t swig_callbackCopy;
464  SWIG_Callback28_t swig_callbackMakeClone;
465  void swig_init_callbacks();
466 };
467 
469 
470 public:
471  SwigDirector_RegularLimit(operations_research::Solver *const s, absl::Duration time, int64_t branches, int64_t failures, int64_t solutions, bool smart_time_check, bool cumulative);
472  virtual ~SwigDirector_RegularLimit();
473  virtual std::string DebugString() const;
474  virtual void EnterSearch();
475  virtual void RestartSearch();
476  virtual void ExitSearch();
479  virtual void ApplyDecision(operations_research::Decision *const d);
480  virtual void RefuteDecision(operations_research::Decision *const d);
481  virtual void AfterDecision(operations_research::Decision *const d, bool apply);
482  virtual void BeginFail();
483  virtual void EndFail();
484  virtual void BeginInitialPropagation();
485  virtual void EndInitialPropagation();
486  virtual bool AcceptSolution();
487  virtual bool AtSolution();
488  virtual void NoMoreSolutions();
489  virtual bool LocalOptimum();
491  virtual void AcceptNeighbor();
492  virtual void AcceptUncheckedNeighbor();
493  virtual bool IsUncheckedSolutionLimitReached();
494  virtual void PeriodicCheck();
495  virtual int ProgressPercent();
496  virtual void Accept(operations_research::ModelVisitor *const visitor) const;
497  virtual void Install();
498  virtual bool Check();
499  virtual void Init();
500  virtual void Copy(operations_research::SearchLimit const *const limit);
502 
503  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
504  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
505  typedef void (SWIGSTDCALL* SWIG_Callback2_t)();
506  typedef void (SWIGSTDCALL* SWIG_Callback3_t)();
507  typedef void (SWIGSTDCALL* SWIG_Callback4_t)(void *);
508  typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *, void *);
509  typedef void (SWIGSTDCALL* SWIG_Callback6_t)(void *);
510  typedef void (SWIGSTDCALL* SWIG_Callback7_t)(void *);
511  typedef void (SWIGSTDCALL* SWIG_Callback8_t)(void *, unsigned int);
512  typedef void (SWIGSTDCALL* SWIG_Callback9_t)();
513  typedef void (SWIGSTDCALL* SWIG_Callback10_t)();
514  typedef void (SWIGSTDCALL* SWIG_Callback11_t)();
515  typedef void (SWIGSTDCALL* SWIG_Callback12_t)();
516  typedef unsigned int (SWIGSTDCALL* SWIG_Callback13_t)();
517  typedef unsigned int (SWIGSTDCALL* SWIG_Callback14_t)();
518  typedef void (SWIGSTDCALL* SWIG_Callback15_t)();
519  typedef unsigned int (SWIGSTDCALL* SWIG_Callback16_t)();
520  typedef unsigned int (SWIGSTDCALL* SWIG_Callback17_t)(void *, void *);
521  typedef void (SWIGSTDCALL* SWIG_Callback18_t)();
522  typedef void (SWIGSTDCALL* SWIG_Callback19_t)();
523  typedef unsigned int (SWIGSTDCALL* SWIG_Callback20_t)();
524  typedef void (SWIGSTDCALL* SWIG_Callback21_t)();
525  typedef int (SWIGSTDCALL* SWIG_Callback22_t)();
526  typedef void (SWIGSTDCALL* SWIG_Callback23_t)(void *);
527  typedef void (SWIGSTDCALL* SWIG_Callback24_t)();
528  typedef unsigned int (SWIGSTDCALL* SWIG_Callback25_t)();
529  typedef void (SWIGSTDCALL* SWIG_Callback26_t)();
530  typedef void (SWIGSTDCALL* SWIG_Callback27_t)(void *);
531  typedef void * (SWIGSTDCALL* SWIG_Callback28_t)();
532  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, SWIG_Callback25_t callbackCheck, SWIG_Callback26_t callbackInit, SWIG_Callback27_t callbackCopy, SWIG_Callback28_t callbackMakeClone);
533 
534 private:
535  SWIG_Callback0_t swig_callbackToString;
536  SWIG_Callback1_t swig_callbackEnterSearch;
537  SWIG_Callback2_t swig_callbackRestartSearch;
538  SWIG_Callback3_t swig_callbackExitSearch;
539  SWIG_Callback4_t swig_callbackBeginNextDecision;
540  SWIG_Callback5_t swig_callbackEndNextDecision;
541  SWIG_Callback6_t swig_callbackApplyDecision;
542  SWIG_Callback7_t swig_callbackRefuteDecision;
543  SWIG_Callback8_t swig_callbackAfterDecision;
544  SWIG_Callback9_t swig_callbackBeginFail;
545  SWIG_Callback10_t swig_callbackEndFail;
546  SWIG_Callback11_t swig_callbackBeginInitialPropagation;
547  SWIG_Callback12_t swig_callbackEndInitialPropagation;
548  SWIG_Callback13_t swig_callbackAcceptSolution;
549  SWIG_Callback14_t swig_callbackAtSolution;
550  SWIG_Callback15_t swig_callbackNoMoreSolutions;
551  SWIG_Callback16_t swig_callbackLocalOptimum;
552  SWIG_Callback17_t swig_callbackAcceptDelta;
553  SWIG_Callback18_t swig_callbackAcceptNeighbor;
554  SWIG_Callback19_t swig_callbackAcceptUncheckedNeighbor;
555  SWIG_Callback20_t swig_callbackIsUncheckedSolutionLimitReached;
556  SWIG_Callback21_t swig_callbackPeriodicCheck;
557  SWIG_Callback22_t swig_callbackProgressPercent;
558  SWIG_Callback23_t swig_callbackAccept;
559  SWIG_Callback24_t swig_callbackInstall;
560  SWIG_Callback25_t swig_callbackCheck;
561  SWIG_Callback26_t swig_callbackInit;
562  SWIG_Callback27_t swig_callbackCopy;
563  SWIG_Callback28_t swig_callbackMakeClone;
564  void swig_init_callbacks();
565 };
566 
568 
569 public:
572  virtual std::string DebugString() const;
574  virtual void Start(operations_research::Assignment const *assignment);
575  virtual void Reset();
576  virtual bool HasFragments() const;
577  virtual bool HoldsDelta() const;
578 
579  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
580  typedef unsigned int (SWIGSTDCALL* SWIG_Callback1_t)(void *, void *);
581  typedef void (SWIGSTDCALL* SWIG_Callback2_t)(void *);
582  typedef void (SWIGSTDCALL* SWIG_Callback3_t)();
583  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
584  typedef unsigned int (SWIGSTDCALL* SWIG_Callback5_t)();
585  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);
586 
587 private:
588  SWIG_Callback0_t swig_callbackToString;
589  SWIG_Callback1_t swig_callbackMakeNextNeighbor;
590  SWIG_Callback2_t swig_callbackStart;
591  SWIG_Callback3_t swig_callbackReset;
592  SWIG_Callback4_t swig_callbackHasFragments;
593  SWIG_Callback5_t swig_callbackHoldsDelta;
594  void swig_init_callbacks();
595 };
596 
598 
599 public:
601  SwigDirector_IntVarLocalSearchOperator(std::vector< operations_research::IntVar * > const &vars, bool keep_inverse_values = false);
603  virtual std::string DebugString() const;
605  virtual void Start(operations_research::Assignment const *assignment);
606  virtual void Reset();
607  virtual bool HasFragments() const;
608  virtual bool HoldsDelta() const;
609  virtual bool IsIncremental() const;
610  virtual bool SkipUnchanged(int index) const;
611  virtual void OnStart();
612  virtual bool MakeOneNeighbor();
613  virtual bool MakeOneNeighborSwigPublic() {
615  }
616 
617  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
618  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
619  typedef unsigned int (SWIGSTDCALL* SWIG_Callback2_t)();
620  typedef unsigned int (SWIGSTDCALL* SWIG_Callback3_t)();
621  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
622  typedef void (SWIGSTDCALL* SWIG_Callback5_t)();
623  typedef unsigned int (SWIGSTDCALL* SWIG_Callback6_t)();
624  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);
625 
626 private:
627  SWIG_Callback0_t swig_callbackToString;
628  SWIG_Callback1_t swig_callbackReset;
629  SWIG_Callback2_t swig_callbackHasFragments;
630  SWIG_Callback3_t swig_callbackHoldsDelta;
631  SWIG_Callback4_t swig_callbackIsIncremental;
632  SWIG_Callback5_t swig_callbackOnStart;
633  SWIG_Callback6_t swig_callbackMakeOneNeighbor;
634  void swig_init_callbacks();
635 };
636 
638 
639 public:
641  SwigDirector_SequenceVarLocalSearchOperator(std::vector< operations_research::SequenceVar * > const &vars);
643  virtual std::string DebugString() const;
645  virtual void Start(operations_research::Assignment const *assignment);
646  virtual void Reset();
647  virtual bool HasFragments() const;
648  virtual bool HoldsDelta() const;
649  virtual bool IsIncremental() const;
650  virtual bool SkipUnchanged(int index) const;
651  virtual void OnStart();
652 
653  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
654  typedef unsigned int (SWIGSTDCALL* SWIG_Callback1_t)(void *, void *);
655  typedef void (SWIGSTDCALL* SWIG_Callback2_t)();
656  typedef unsigned int (SWIGSTDCALL* SWIG_Callback3_t)();
657  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
658  typedef unsigned int (SWIGSTDCALL* SWIG_Callback5_t)();
659  typedef void (SWIGSTDCALL* SWIG_Callback6_t)();
660  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);
661 
662 private:
663  SWIG_Callback0_t swig_callbackToString;
664  SWIG_Callback1_t swig_callbackMakeNextNeighbor;
665  SWIG_Callback2_t swig_callbackReset;
666  SWIG_Callback3_t swig_callbackHasFragments;
667  SWIG_Callback4_t swig_callbackHoldsDelta;
668  SWIG_Callback5_t swig_callbackIsIncremental;
669  SWIG_Callback6_t swig_callbackOnStart;
670  void swig_init_callbacks();
671 };
672 
674 
675 public:
676  SwigDirector_BaseLns(std::vector< operations_research::IntVar * > const &vars);
677  virtual ~SwigDirector_BaseLns();
678  virtual std::string DebugString() const;
680  virtual void Start(operations_research::Assignment const *assignment);
681  virtual void Reset();
682  virtual bool HasFragments() const;
683  virtual bool HoldsDelta() const;
684  virtual bool IsIncremental() const;
685  virtual void InitFragments();
686  virtual bool NextFragment();
687 
688  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
689  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
690  typedef unsigned int (SWIGSTDCALL* SWIG_Callback2_t)();
691  typedef unsigned int (SWIGSTDCALL* SWIG_Callback3_t)();
692  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
693  typedef void (SWIGSTDCALL* SWIG_Callback5_t)();
694  typedef unsigned int (SWIGSTDCALL* SWIG_Callback6_t)();
695  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);
696 
697 private:
698  SWIG_Callback0_t swig_callbackToString;
699  SWIG_Callback1_t swig_callbackReset;
700  SWIG_Callback2_t swig_callbackHasFragments;
701  SWIG_Callback3_t swig_callbackHoldsDelta;
702  SWIG_Callback4_t swig_callbackIsIncremental;
703  SWIG_Callback5_t swig_callbackInitFragments;
704  SWIG_Callback6_t swig_callbackNextFragment;
705  void swig_init_callbacks();
706 };
707 
709 
710 public:
711  SwigDirector_ChangeValue(std::vector< operations_research::IntVar * > const &vars);
712  virtual ~SwigDirector_ChangeValue();
713  virtual std::string DebugString() const;
715  virtual void Start(operations_research::Assignment const *assignment);
716  virtual void Reset();
717  virtual bool HasFragments() const;
718  virtual bool HoldsDelta() const;
719  virtual bool IsIncremental() const;
720  virtual bool SkipUnchanged(int index) const;
721  virtual void OnStart();
722  virtual bool MakeOneNeighbor();
723  virtual bool MakeOneNeighborSwigPublic() {
725  }
726  virtual int64_t ModifyValue(int64_t index, int64_t value);
727 
728  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
729  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
730  typedef unsigned int (SWIGSTDCALL* SWIG_Callback2_t)();
731  typedef unsigned int (SWIGSTDCALL* SWIG_Callback3_t)();
732  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
733  typedef void (SWIGSTDCALL* SWIG_Callback5_t)();
734  typedef unsigned int (SWIGSTDCALL* SWIG_Callback6_t)();
735  typedef long long (SWIGSTDCALL* SWIG_Callback7_t)(long long, long long);
736  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);
737 
738 private:
739  SWIG_Callback0_t swig_callbackToString;
740  SWIG_Callback1_t swig_callbackReset;
741  SWIG_Callback2_t swig_callbackHasFragments;
742  SWIG_Callback3_t swig_callbackHoldsDelta;
743  SWIG_Callback4_t swig_callbackIsIncremental;
744  SWIG_Callback5_t swig_callbackOnStart;
745  SWIG_Callback6_t swig_callbackMakeOneNeighbor;
746  SWIG_Callback7_t swig_callbackModifyValue;
747  void swig_init_callbacks();
748 };
749 
751 
752 public:
753  virtual ~SwigDirector_PathOperator();
754  virtual std::string DebugString() const;
756  virtual void Start(operations_research::Assignment const *assignment);
757  virtual void Reset();
758  virtual bool HasFragments() const;
759  virtual bool HoldsDelta() const;
760  virtual bool IsIncremental() const;
761  virtual bool SkipUnchanged(int index) const;
762  virtual void OnStart();
763  virtual bool MakeOneNeighbor();
764  virtual bool MakeOneNeighborSwigPublic() {
766  }
767  virtual bool MakeNeighbor();
768  virtual void OnNodeInitialization();
771  }
772  virtual bool RestartAtPathStartOnSynchronize();
775  }
776  virtual bool OnSamePathAsPreviousBase(int64_t base_index);
777  virtual bool OnSamePathAsPreviousBaseSwigPublic(int64_t base_index) {
779  }
780  virtual int64_t GetBaseNodeRestartPosition(int base_index);
781  virtual int64_t GetBaseNodeRestartPositionSwigPublic(int base_index) {
783  }
784  virtual void SetNextBaseToIncrement(int64_t base_index);
785  virtual void SetNextBaseToIncrementSwigPublic(int64_t base_index) {
787  }
788  virtual bool ConsiderAlternatives(int64_t base_index) const;
789  virtual bool ConsiderAlternativesSwigPublic(int64_t base_index) const {
791  }
792  virtual bool InitPosition() const;
793  virtual bool InitPositionSwigPublic() const {
795  }
796 
797  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
798  typedef void (SWIGSTDCALL* SWIG_Callback1_t)();
799  typedef unsigned int (SWIGSTDCALL* SWIG_Callback2_t)();
800  typedef unsigned int (SWIGSTDCALL* SWIG_Callback3_t)();
801  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
802  typedef void (SWIGSTDCALL* SWIG_Callback5_t)();
803  typedef unsigned int (SWIGSTDCALL* SWIG_Callback6_t)();
804  typedef unsigned int (SWIGSTDCALL* SWIG_Callback7_t)();
805  typedef void (SWIGSTDCALL* SWIG_Callback8_t)();
806  typedef unsigned int (SWIGSTDCALL* SWIG_Callback9_t)();
807  typedef unsigned int (SWIGSTDCALL* SWIG_Callback10_t)(long long);
808  typedef long long (SWIGSTDCALL* SWIG_Callback11_t)(int);
809  typedef void (SWIGSTDCALL* SWIG_Callback12_t)(long long);
810  typedef unsigned int (SWIGSTDCALL* SWIG_Callback13_t)(long long);
811  typedef unsigned int (SWIGSTDCALL* SWIG_Callback14_t)();
812  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);
813 
814 private:
815  SWIG_Callback0_t swig_callbackToString;
816  SWIG_Callback1_t swig_callbackReset;
817  SWIG_Callback2_t swig_callbackHasFragments;
818  SWIG_Callback3_t swig_callbackHoldsDelta;
819  SWIG_Callback4_t swig_callbackIsIncremental;
820  SWIG_Callback5_t swig_callbackOnStart;
821  SWIG_Callback6_t swig_callbackMakeOneNeighbor;
822  SWIG_Callback7_t swig_callbackMakeNeighbor;
823  SWIG_Callback8_t swig_callbackOnNodeInitialization;
824  SWIG_Callback9_t swig_callbackRestartAtPathStartOnSynchronize;
825  SWIG_Callback10_t swig_callbackOnSamePathAsPreviousBase;
826  SWIG_Callback11_t swig_callbackGetBaseNodeRestartPosition;
827  SWIG_Callback12_t swig_callbackSetNextBaseToIncrement;
828  SWIG_Callback13_t swig_callbackConsiderAlternatives;
829  SWIG_Callback14_t swig_callbackInitPosition;
830  void swig_init_callbacks();
831 };
832 
834 
835 public:
838  virtual std::string DebugString() const;
839  virtual void Relax(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta);
840  virtual void Commit(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta);
841  virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64_t objective_min, int64_t objective_max);
842  virtual bool IsIncremental() const;
844  virtual void Revert();
845  virtual void Reset();
846  virtual int64_t GetSynchronizedObjectiveValue() const;
847  virtual int64_t GetAcceptedObjectiveValue() const;
848 
849  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
850  typedef void (SWIGSTDCALL* SWIG_Callback1_t)(void *, void *);
851  typedef void (SWIGSTDCALL* SWIG_Callback2_t)(void *, void *);
852  typedef unsigned int (SWIGSTDCALL* SWIG_Callback3_t)(void *, void *, long long, long long);
853  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
854  typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *, void *);
855  typedef void (SWIGSTDCALL* SWIG_Callback6_t)();
856  typedef void (SWIGSTDCALL* SWIG_Callback7_t)();
857  typedef long long (SWIGSTDCALL* SWIG_Callback8_t)();
858  typedef long long (SWIGSTDCALL* SWIG_Callback9_t)();
859  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);
860 
861 private:
862  SWIG_Callback0_t swig_callbackToString;
863  SWIG_Callback1_t swig_callbackRelax;
864  SWIG_Callback2_t swig_callbackCommit;
865  SWIG_Callback3_t swig_callbackAccept;
866  SWIG_Callback4_t swig_callbackIsIncremental;
867  SWIG_Callback5_t swig_callbackSynchronize;
868  SWIG_Callback6_t swig_callbackRevert;
869  SWIG_Callback7_t swig_callbackReset;
870  SWIG_Callback8_t swig_callbackGetSynchronizedObjectiveValue;
871  SWIG_Callback9_t swig_callbackGetAcceptedObjectiveValue;
872  void swig_init_callbacks();
873 };
874 
876 
877 public:
878  SwigDirector_LocalSearchFilterManager(std::vector< operations_research::LocalSearchFilterManager::FilterEvent > filter_events);
879  SwigDirector_LocalSearchFilterManager(std::vector< operations_research::LocalSearchFilter * > filters);
881  virtual std::string DebugString() const;
882 
883  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
884  void swig_connect_director(SWIG_Callback0_t callbackToString);
885 
886 private:
887  SWIG_Callback0_t swig_callbackToString;
888  void swig_init_callbacks();
889 };
890 
892 
893 public:
894  SwigDirector_IntVarLocalSearchFilter(std::vector< operations_research::IntVar * > const &vars);
896  virtual std::string DebugString() const;
897  virtual void Relax(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta);
898  virtual void Commit(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta);
899  virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64_t objective_min, int64_t objective_max);
900  virtual bool IsIncremental() const;
901  virtual void Revert();
902  virtual void Reset();
903  virtual int64_t GetSynchronizedObjectiveValue() const;
904  virtual int64_t GetAcceptedObjectiveValue() const;
908  }
909 
910  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
911  typedef void (SWIGSTDCALL* SWIG_Callback1_t)(void *, void *);
912  typedef void (SWIGSTDCALL* SWIG_Callback2_t)(void *, void *);
913  typedef unsigned int (SWIGSTDCALL* SWIG_Callback3_t)(void *, void *, long long, long long);
914  typedef unsigned int (SWIGSTDCALL* SWIG_Callback4_t)();
915  typedef void (SWIGSTDCALL* SWIG_Callback5_t)();
916  typedef void (SWIGSTDCALL* SWIG_Callback6_t)();
917  typedef long long (SWIGSTDCALL* SWIG_Callback7_t)();
918  typedef long long (SWIGSTDCALL* SWIG_Callback8_t)();
919  typedef void (SWIGSTDCALL* SWIG_Callback9_t)(void *);
920  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);
921 
922 private:
923  SWIG_Callback0_t swig_callbackToString;
924  SWIG_Callback1_t swig_callbackRelax;
925  SWIG_Callback2_t swig_callbackCommit;
926  SWIG_Callback3_t swig_callbackAccept;
927  SWIG_Callback4_t swig_callbackIsIncremental;
928  SWIG_Callback5_t swig_callbackRevert;
929  SWIG_Callback6_t swig_callbackReset;
930  SWIG_Callback7_t swig_callbackGetSynchronizedObjectiveValue;
931  SWIG_Callback8_t swig_callbackGetAcceptedObjectiveValue;
932  SWIG_Callback9_t swig_callbackOnSynchronize;
933  void swig_init_callbacks();
934 };
935 
937 
938 public:
941  virtual std::string DebugString() const;
942  virtual void VisitSetVariableValue(operations_research::IntVar *const var, int64_t value);
943  virtual void VisitSplitVariableDomain(operations_research::IntVar *const var, int64_t value, bool start_with_lower_half);
944  virtual void VisitScheduleOrPostpone(operations_research::IntervalVar *const var, int64_t est);
945  virtual void VisitScheduleOrExpedite(operations_research::IntervalVar *const var, int64_t est);
946  virtual void VisitRankFirstInterval(operations_research::SequenceVar *const sequence, int index);
947  virtual void VisitRankLastInterval(operations_research::SequenceVar *const sequence, int index);
948  virtual void VisitUnknownDecision();
949 
950  typedef char * (SWIGSTDCALL* SWIG_Callback0_t)();
951  typedef void (SWIGSTDCALL* SWIG_Callback1_t)(void *, long long);
952  typedef void (SWIGSTDCALL* SWIG_Callback2_t)(void *, long long, unsigned int);
953  typedef void (SWIGSTDCALL* SWIG_Callback3_t)(void *, long long);
954  typedef void (SWIGSTDCALL* SWIG_Callback4_t)(void *, long long);
955  typedef void (SWIGSTDCALL* SWIG_Callback5_t)(void *, int);
956  typedef void (SWIGSTDCALL* SWIG_Callback6_t)(void *, int);
957  typedef void (SWIGSTDCALL* SWIG_Callback7_t)();
958  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);
959 
960 private:
961  SWIG_Callback0_t swig_callbackToString;
962  SWIG_Callback1_t swig_callbackVisitSetVariableValue;
963  SWIG_Callback2_t swig_callbackVisitSplitVariableDomain;
964  SWIG_Callback3_t swig_callbackVisitScheduleOrPostpone;
965  SWIG_Callback4_t swig_callbackVisitScheduleOrExpedite;
966  SWIG_Callback5_t swig_callbackVisitRankFirstInterval;
967  SWIG_Callback6_t swig_callbackVisitRankLastInterval;
968  SWIG_Callback7_t swig_callbackVisitUnknownDecision;
969  void swig_init_callbacks();
970 };
971 
972 
973 #endif
virtual operations_research::SearchLimit * MakeClone() const
Allocates a clone of the limit.
void(SWIGSTDCALL * SWIG_Callback4_t)(void *)
void(SWIGSTDCALL * SWIG_Callback6_t)(void *)
virtual void ExitSearch()
End of the search.
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackName, SWIG_Callback2_t callbackBaseName, SWIG_Callback3_t callbackPost, SWIG_Callback4_t callbackInitialPropagateWrapper)
SwigDirector_BaseLns(std::vector< operations_research::IntVar * > const &vars)
virtual void RefuteDecision(operations_research::Decision *const d)
Before refuting the decision.
This is the base class for building an Lns operator.
virtual void Install()
Registers itself on the solver such that it gets notified of the search and propagation events.
unsigned int(SWIGSTDCALL * SWIG_Callback14_t)()
virtual void Revert()
Cancels the changes made by the last Relax()/Accept() calls.
virtual int64_t GetSynchronizedObjectiveValue() const
Objective value from last time Synchronize() was called.
unsigned int(SWIGSTDCALL * SWIG_Callback17_t)(void *, void *)
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 callbackMakeNextNeighbor, SWIG_Callback2_t callbackStart, SWIG_Callback3_t callbackReset, SWIG_Callback4_t callbackHasFragments, SWIG_Callback5_t callbackHoldsDelta)
virtual void EndFail()
After completing the backtrack.
virtual void Post()
This method is called when the constraint is processed by the solver.
unsigned int(SWIGSTDCALL * SWIG_Callback3_t)()
void *(SWIGSTDCALL * SWIG_Callback28_t)()
virtual bool AtSolution()
This method is called when a valid solution is found.
void(SWIGSTDCALL * SWIG_Callback5_t)(void *, void *)
virtual void EndInitialPropagation()
After the initial propagation.
unsigned int(SWIGSTDCALL * SWIG_Callback4_t)()
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
virtual void SetNextBaseToIncrementSwigPublic(int64_t base_index)
virtual void AcceptNeighbor()
After accepting a neighbor during local search.
virtual std::string DebugString() const
The base class for all local search operators.
virtual void EndInitialPropagation()
After the initial propagation.
virtual int ProgressPercent()
Returns a percentage representing the propress of the search before reaching limits.
virtual void RestartSearch()
Restart the search.
virtual bool LocalOptimum()
When a local optimum is reached.
virtual void ExitSearch()
End of the search.
unsigned int(SWIGSTDCALL * SWIG_Callback3_t)(void *, void *, long long, long long)
virtual bool InitPosition() const
Returns true if the operator needs to restart its initial position at each call to Start()
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, SWIG_Callback25_t callbackCheck, SWIG_Callback26_t callbackInit, SWIG_Callback27_t callbackCopy, SWIG_Callback28_t callbackMakeClone)
virtual bool ConsiderAlternatives(int64_t base_index) const
Indicates if alternatives should be considered when iterating over base nodes.
virtual void OnSynchronize(operations_research::Assignment const *delta)
unsigned int(SWIGSTDCALL * SWIG_Callback16_t)()
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackRunWrapper, SWIG_Callback2_t callbackPriority)
virtual bool AcceptDelta(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
void(SWIGSTDCALL * SWIG_Callback6_t)(void *, int)
virtual void Reset()
Sets the filter to empty solution.
Base class of the local search operators dedicated to path modifications (a path is a set of nodes li...
virtual bool AcceptDelta(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64_t objective_min, int64_t objective_max)
Accepts a "delta" given the assignment with which the filter has been synchronized; the delta holds t...
unsigned int(SWIGSTDCALL * SWIG_Callback2_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback4_t)()
void(SWIGSTDCALL * SWIG_Callback1_t)(void *)
virtual void Copy(operations_research::SearchLimit const *const limit)
Copy a limit.
virtual void EndInitialPropagation()
After the initial propagation.
virtual void Init()
This method is called when the search limit is initialized.
virtual bool ConsiderAlternativesSwigPublic(int64_t base_index) const
virtual void PeriodicCheck()
Periodic call to check limits in long running methods.
void(SWIGSTDCALL * SWIG_Callback23_t)(void *)
virtual void AfterDecision(operations_research::Decision *const d, bool apply)
Just after refuting or applying the decision, apply is true after Apply.
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
virtual void PeriodicCheck()
Periodic call to check limits in long running methods.
virtual bool AtSolution()
This method is called when a valid solution is found.
virtual void Init()
This method is called when the search limit is initialized.
unsigned int(SWIGSTDCALL * SWIG_Callback10_t)(long long)
char *(SWIGSTDCALL * SWIG_Callback0_t)()
void(SWIGSTDCALL * SWIG_Callback1_t)(void *, void *)
void(SWIGSTDCALL * SWIG_Callback4_t)(void *, long long)
void(SWIGSTDCALL * SWIG_Callback2_t)(void *)
virtual void Start(operations_research::Assignment const *assignment)
This method should not be overridden.
virtual void Start(operations_research::Assignment const *assignment)
virtual void Revert()
Cancels the changes made by the last Relax()/Accept() calls.
SwigDirector_ChangeValue(std::vector< operations_research::IntVar * > const &vars)
char *(SWIGSTDCALL * SWIG_Callback0_t)()
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 Accept(operations_research::ModelVisitor *const visitor) const
Accepts the given model visitor.
virtual bool AcceptSolution()
This method is called when a solution is found.
unsigned int(SWIGSTDCALL * SWIG_Callback14_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback13_t)()
void(SWIGSTDCALL * SWIG_Callback5_t)(void *, void *)
virtual void EndInitialPropagation()
After the initial propagation.
virtual void EndNextDecision(operations_research::DecisionBuilder *const b, operations_research::Decision *const d)
After calling DecisionBuilder::Next, along with the returned decision.
A Demon is the base element of a propagation queue.
virtual void EndNextDecision(operations_research::DecisionBuilder *const b, operations_research::Decision *const d)
After calling DecisionBuilder::Next, along with the returned decision.
A DecisionVisitor is used to inspect a decision.
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)
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)
unsigned int(SWIGSTDCALL * SWIG_Callback6_t)()
long long(SWIGSTDCALL * SWIG_Callback11_t)(int)
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual void OnSynchronize(const Assignment *delta)
virtual bool IsUncheckedSolutionLimitReached()
Returns true if the limit of solutions has been reached including unchecked solutions.
SwigDirector_SearchLimit(operations_research::Solver *const s)
unsigned int(SWIGSTDCALL * SWIG_Callback20_t)()
long long(SWIGSTDCALL * SWIG_Callback7_t)(long long, long long)
unsigned int(SWIGSTDCALL * SWIG_Callback1_t)(void *, void *)
unsigned int(SWIGSTDCALL * SWIG_Callback3_t)(void *, void *, long long, long long)
void(SWIGSTDCALL * SWIG_Callback23_t)(void *)
void(SWIGSTDCALL * SWIG_Callback3_t)(void *, long long)
virtual std::string DebugString() const
void(SWIGSTDCALL * SWIG_Callback23_t)(void *)
void *(SWIGSTDCALL * SWIG_Callback1_t)(void *)
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 void BeginInitialPropagation()
Before the initial propagation.
virtual void OnNodeInitialization()
Called by OnStart() after initializing node information.
void(SWIGSTDCALL * SWIG_Callback7_t)(void *)
char *(SWIGSTDCALL * SWIG_Callback0_t)()
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
void(SWIGSTDCALL * SWIG_Callback23_t)(void *)
virtual void AcceptNeighbor()
After accepting a neighbor during local search.
A constraint is the main modeling object.
virtual void Copy(operations_research::SearchLimit const *const limit)
Copy a limit.
virtual bool MakeOneNeighbor()
This method should not be overridden. Override ModifyValue() instead.
virtual void Install()
Registers itself on the solver such that it gets notified of the search and propagation events.
virtual void BeginFail()
Just when the failure occurs.
void(SWIGSTDCALL * SWIG_Callback6_t)(void *)
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 operations_research::SearchLimit * MakeClone() const
Allocates a clone of the limit.
int(SWIGSTDCALL * SWIG_Callback2_t)()
Usual limit based on wall_time, number of explored branches and number of failures in the search tree...
char *(SWIGSTDCALL * SWIG_Callback0_t)()
virtual void Start(operations_research::Assignment const *assignment)
char *(SWIGSTDCALL * SWIG_Callback0_t)()
virtual void VisitSetVariableValue(operations_research::IntVar *const var, int64_t value)
virtual void RestartSearch()
Restart the search.
virtual void EndFail()
After completing the backtrack.
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, 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, SWIG_Callback25_t callbackPrint)
unsigned int(SWIGSTDCALL * SWIG_Callback13_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback4_t)()
virtual void BeginFail()
Just when the failure occurs.
A DecisionBuilder is responsible for creating the search tree.
virtual void AcceptUncheckedNeighbor()
After accepting an unchecked neighbor during local search.
virtual void OnNodeInitialization()
Called by OnStart() after initializing node information.
virtual void AcceptUncheckedNeighbor()
After accepting an unchecked neighbor during local search.
virtual bool AcceptSolution()
This method is called when a solution is found.
unsigned int(SWIGSTDCALL * SWIG_Callback14_t)()
int64_t b
Defines operators which change the value of variables; each neighbor corresponds to one modified vari...
virtual void AcceptUncheckedNeighbor()
After accepting an unchecked neighbor during local search.
unsigned int(SWIGSTDCALL * SWIG_Callback4_t)()
void(SWIGSTDCALL * SWIG_Callback6_t)(void *)
virtual void AcceptUncheckedNeighbor()
After accepting an unchecked neighbor during local search.
void *(SWIGSTDCALL * SWIG_Callback28_t)()
virtual void AcceptNeighbor()
After accepting a neighbor during local search.
virtual void Run(operations_research::Solver *const s)
This is the main callback of the demon.
virtual bool MakeOneNeighbor()
Creates a new neighbor.
void(SWIGSTDCALL * SWIG_Callback1_t)()
virtual void RefuteDecision(operations_research::Decision *const d)
Before refuting the decision.
virtual void RestartSearch()
Restart the search.
virtual void NoMoreSolutions()
When the search tree is finished.
Interval variables are often used in scheduling.
unsigned int(SWIGSTDCALL * SWIG_Callback17_t)(void *, void *)
virtual bool AtSolution()
This method is called when a valid solution is found.
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 Accept(operations_research::ModelVisitor *const visitor) const
Accepts the given model visitor.
virtual std::string DebugString() const
virtual bool IsUncheckedSolutionLimitReached()
Returns true if the limit of solutions has been reached including unchecked solutions.
void(SWIGSTDCALL * SWIG_Callback5_t)(void *, int)
virtual int ProgressPercent()
Returns a percentage representing the propress of the search before reaching limits.
void(SWIGSTDCALL * SWIG_Callback2_t)(void *, long long, unsigned int)
SwigDirector_LocalSearchFilterManager(std::vector< operations_research::LocalSearchFilterManager::FilterEvent > filter_events)
virtual bool LocalOptimum()
When a local optimum is reached.
SwigDirector_Constraint(operations_research::Solver *const solver)
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
virtual void AcceptUncheckedNeighbor()
After accepting an unchecked neighbor during local search.
virtual bool OnSamePathAsPreviousBaseSwigPublic(int64_t base_index)
virtual void ExitSearch()
End of the search.
void(SWIGSTDCALL * SWIG_Callback2_t)(void *, void *)
virtual bool AcceptSolution()
This method is called when a solution is found.
virtual void VisitRankFirstInterval(operations_research::SequenceVar *const sequence, int index)
unsigned int(SWIGSTDCALL * SWIG_Callback13_t)()
virtual std::string DebugString() const
virtual void Accept(operations_research::ModelVisitor *const visitor) const
Accepts the given model visitor.
virtual bool IsUncheckedSolutionLimitReached()
Returns true if the limit of solutions has been reached including unchecked solutions.
char *(SWIGSTDCALL * SWIG_Callback0_t)()
virtual std::string DebugString() const
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
unsigned int(SWIGSTDCALL * SWIG_Callback17_t)(void *, void *)
virtual void ApplyDecision(operations_research::Decision *const d)
Before applying the decision.
virtual void AfterDecision(operations_research::Decision *const d, bool apply)
Just after refuting or applying the decision, apply is true after Apply.
#define SWIGSTDCALL
virtual void BeginInitialPropagation()
Before the initial propagation.
Filter manager: when a move is made, filters are executed to decide whether the solution is feasible ...
This class encapsulates an objective.
virtual void Apply(operations_research::Solver *const s)
Apply will be called first when the decision is executed.
void(SWIGSTDCALL * SWIG_Callback5_t)(void *, void *)
virtual void Start(operations_research::Assignment const *assignment)
unsigned int(SWIGSTDCALL * SWIG_Callback5_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback3_t)()
virtual void EnterSearch()
Internal methods.
void(SWIGSTDCALL * SWIG_Callback7_t)(void *)
unsigned int(SWIGSTDCALL * SWIG_Callback14_t)()
char *(SWIGSTDCALL * SWIG_Callback0_t)()
virtual bool SkipUnchanged(int index) const
virtual void NoMoreSolutions()
When the search tree is finished.
SwigDirector_OptimizeVar(operations_research::Solver *const s, bool maximize, operations_research::IntVar *const a, int64_t step)
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 int64_t GetBaseNodeRestartPositionSwigPublic(int base_index)
virtual std::string DebugString() const
virtual void EndNextDecision(operations_research::DecisionBuilder *const b, operations_research::Decision *const d)
After calling DecisionBuilder::Next, along with the returned decision.
virtual bool Check()
This method is called to check the status of the limit.
virtual int ProgressPercent()
Returns a percentage representing the propress of the search before reaching limits.
unsigned int(SWIGSTDCALL * SWIG_Callback6_t)()
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 int64_t GetAcceptedObjectiveValue() const
Objective value from the last time Accept() was called and returned true.
virtual std::string DebugString() const
virtual bool AcceptSolution()
This method is called when a solution is found.
void(SWIGSTDCALL * SWIG_Callback4_t)()
virtual void BeginInitialPropagation()
Before the initial propagation.
unsigned int(SWIGSTDCALL * SWIG_Callback13_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback25_t)()
bool MakeOneNeighbor() override
This method should not be overridden. Override MakeNeighbor() instead.
unsigned int(SWIGSTDCALL * SWIG_Callback1_t)(void *, void *)
virtual void EnterSearch()
Beginning of the search.
char *(SWIGSTDCALL * SWIG_Callback1_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback17_t)(void *, void *)
void(SWIGSTDCALL * SWIG_Callback4_t)(void *)
virtual void BeginNextDecision(operations_research::DecisionBuilder *const b)
Before calling DecisionBuilder::Next.
void(SWIGSTDCALL * SWIG_Callback1_t)(void *, long long)
virtual void ApplyDecision(operations_research::Decision *const d)
Before applying the decision.
unsigned int(SWIGSTDCALL * SWIG_Callback20_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback9_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback2_t)()
virtual void PeriodicCheck()
Periodic call to check limits in long running methods.
void(SWIGSTDCALL * SWIG_Callback5_t)()
virtual void AfterDecision(operations_research::Decision *const d, bool apply)
Just after refuting or applying the decision, apply is true after Apply.
void(SWIGSTDCALL * SWIG_Callback6_t)(void *)
virtual bool IsUncheckedSolutionLimitReached()
Returns true if the limit of solutions has been reached including unchecked solutions.
int index
Definition: pack.cc:509
virtual void Accept(operations_research::DecisionVisitor *const visitor) const
Accepts the given visitor.
An Assignment is a variable -> domains mapping, used to report solutions to the user.
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, SWIG_Callback25_t callbackCheck, SWIG_Callback26_t callbackInit, SWIG_Callback27_t callbackCopy, SWIG_Callback28_t callbackMakeClone)
void(SWIGSTDCALL * SWIG_Callback7_t)(void *)
virtual void EnterSearch()
Beginning of the search.
void(SWIGSTDCALL * SWIG_Callback27_t)(void *)
virtual std::string BaseName() const
Returns a base name for automatic naming.
The class IntVar is a subset of IntExpr.
unsigned int(SWIGSTDCALL * SWIG_Callback17_t)(void *, void *)
virtual int ProgressPercent()
Returns a percentage representing the propress of the search before reaching limits.
virtual void EndInitialPropagation()
After the initial propagation.
unsigned int(SWIGSTDCALL * SWIG_Callback7_t)()
virtual void BeginNextDecision(operations_research::DecisionBuilder *const b)
Before calling DecisionBuilder::Next.
virtual void ApplyDecision(operations_research::Decision *const d)
Before applying the decision.
virtual void EndFail()
After completing the backtrack.
char *(SWIGSTDCALL * SWIG_Callback0_t)()
virtual bool LocalOptimum()
When a local optimum is reached.
virtual void BeginInitialPropagation()
Before the initial propagation.
virtual void SetNextBaseToIncrement(int64_t base_index)
Set the next base to increment on next iteration.
virtual bool ConsiderAlternatives(int64_t base_index) const
Indicates if alternatives should be considered when iterating over base nodes.
virtual void InitialPropagate()
This method performs the initial propagation of the constraint.
void(SWIGSTDCALL * SWIG_Callback23_t)(void *)
unsigned int(SWIGSTDCALL * SWIG_Callback25_t)()
virtual bool SkipUnchanged(int index) const
virtual void Install()
Registers itself on the solver such that it gets notified of the search and propagation events.
unsigned int(SWIGSTDCALL * SWIG_Callback20_t)()
void(SWIGSTDCALL * SWIG_Callback27_t)(void *)
int64_t delta
Definition: resource.cc:1692
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(SWIGSTDCALL * SWIG_Callback4_t)(void *)
virtual void BeginFail()
Just when the failure occurs.
unsigned int(SWIGSTDCALL * SWIG_Callback13_t)()
unsigned int(SWIGSTDCALL * SWIG_Callback16_t)()
char *(SWIGSTDCALL * SWIG_Callback2_t)()
void(SWIGSTDCALL * SWIG_Callback3_t)()
virtual bool AcceptDelta(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual void EnterSearch()
Beginning of the search.
virtual void Accept(operations_research::ModelVisitor *const visitor) const
Accepts the given model visitor.
virtual int ProgressPercent()
Returns a percentage representing the propress of the search before reaching limits.
virtual bool AcceptDelta(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
char *(SWIGSTDCALL * SWIG_Callback0_t)()
virtual void AcceptNeighbor()
After accepting a neighbor during local search.
virtual void Install()
Registers itself on the solver such that it gets notified of the search and propagation events.
virtual void NoMoreSolutions()
When the search tree is finished.
A sequence variable is a variable whose domain is a set of possible orderings of the interval variabl...
unsigned int(SWIGSTDCALL * SWIG_Callback20_t)()
virtual bool InitPosition() const
Returns true if the operator needs to restart its initial position at each call to Start()
virtual void RestartSearch()
Restart the search.
virtual bool OnSamePathAsPreviousBase(int64_t 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 RestartAtPathStartOnSynchronize()
When the operator is being synchronized with a new solution (when Start() is called),...
virtual void RefuteDecision(operations_research::Decision *const d)
Before refuting the decision.
void(SWIGSTDCALL * SWIG_Callback5_t)(void *, void *)
void(SWIGSTDCALL * SWIG_Callback1_t)(void *, void *)
unsigned int(SWIGSTDCALL * SWIG_Callback13_t)(long long)
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackNextWrapper)
virtual void VisitScheduleOrPostpone(operations_research::IntervalVar *const var, int64_t est)
virtual void Install()
Registers itself on the solver such that it gets notified of the search and propagation events.
virtual int64_t ModifyValue(int64_t index, int64_t value)
unsigned int(SWIGSTDCALL * SWIG_Callback6_t)()
void(SWIGSTDCALL * SWIG_Callback7_t)(void *)
virtual void EnterSearch()
Internal methods.
unsigned int(SWIGSTDCALL * SWIG_Callback16_t)()
void(SWIGSTDCALL * SWIG_Callback8_t)(void *, unsigned int)
virtual void AfterDecision(operations_research::Decision *const d, bool apply)
Just after refuting or applying the decision, apply is true after Apply.
virtual int64_t GetSynchronizedObjectiveValue() const
Objective value from last time Synchronize() was called.
char *(SWIGSTDCALL * SWIG_Callback25_t)()
virtual void BeginNextDecision(operations_research::DecisionBuilder *const b)
Before calling DecisionBuilder::Next.
DemonPriority
This enum represents the three possible priorities for a demon in the Solver queue.
void(SWIGSTDCALL * SWIG_Callback4_t)(void *)
A Decision represents a choice point in the search tree.
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 OnSynchronizeSwigPublic(operations_research::Assignment const *delta)
void(SWIGSTDCALL * SWIG_Callback5_t)(void *, void *)
virtual int64_t GetAcceptedObjectiveValue() const
Objective value from the last time Accept() was called and returned true.
A search monitor is a simple set of callbacks to monitor all search events.
virtual void EndFail()
After completing the backtrack.
virtual void PeriodicCheck()
Periodic call to check limits in long running methods.
virtual void ExitSearch()
End of the search.
virtual void Reset()
Sets the filter to empty solution.
void(SWIGSTDCALL * SWIG_Callback8_t)(void *, unsigned int)
virtual bool MakeOneNeighbor()
This method should not be overridden. Override MakeNeighbor() instead.
virtual void EndNextDecision(operations_research::DecisionBuilder *const b, operations_research::Decision *const d)
After calling DecisionBuilder::Next, along with the returned decision.
virtual bool AcceptDelta(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Internal methods.
void(SWIGSTDCALL * SWIG_Callback8_t)(void *, unsigned int)
virtual operations_research::Solver::DemonPriority priority() const
This method returns the priority of the demon.
int64_t time
Definition: resource.cc:1691
virtual void RefuteDecision(operations_research::Decision *const d)
Before refuting the decision.
virtual std::string name() const
Object naming.
SwigDirector_SearchMonitor(operations_research::Solver *const s)
void(SWIGSTDCALL * SWIG_Callback8_t)(void *, unsigned int)
void(SWIGSTDCALL * SWIG_Callback1_t)(void *)
virtual bool Check()
This method is called to check the status of the limit.
A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in r...
virtual void Start(operations_research::Assignment const *assignment)
SwigDirector_SolutionCollector(operations_research::Solver *const solver, operations_research::Assignment const *assignment)
virtual void OnStart()
Called by Start() after synchronizing the operator with the current assignment.
virtual void EndNextDecision(operations_research::DecisionBuilder *const b, operations_research::Decision *const d)
After calling DecisionBuilder::Next, along with the returned decision.
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 void ExitSearch()
End of the search.
virtual void NoMoreSolutions()
When the search tree is finished.
void(SWIGSTDCALL * SWIG_Callback4_t)(void *)
void swig_connect_director(SWIG_Callback0_t callbackToString, SWIG_Callback1_t callbackApplyWrapper, SWIG_Callback2_t callbackRefuteWrapper, SWIG_Callback3_t callbackAccept)
unsigned int(SWIGSTDCALL * SWIG_Callback16_t)()
virtual bool MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
Redefines MakeNextNeighbor to export a simpler interface.
IntVar * var
Definition: expr_array.cc:1874
virtual void BeginNextDecision(operations_research::DecisionBuilder *const b)
Before calling DecisionBuilder::Next.
unsigned int(SWIGSTDCALL * SWIG_Callback2_t)()
virtual void SetNextBaseToIncrement(int64_t base_index)
Set the next base to increment on next iteration.
virtual bool AtSolution()
This method is called when a valid solution is found.
virtual bool AcceptSolution()
This method is called when a solution is found.
virtual void BeginFail()
Just when the failure occurs.
virtual bool AtSolution()
This method is called when a valid solution is found.
virtual void RestartSearch()
Restart the search.
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 MakeNextNeighbor(operations_research::Assignment *delta, operations_research::Assignment *deltadelta)
virtual void BeginFail()
Just when the failure occurs.
virtual void VisitSplitVariableDomain(operations_research::IntVar *const var, int64_t value, bool start_with_lower_half)
virtual int64_t 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...
void swig_connect_director(SWIG_Callback0_t callbackToString)
virtual void Start(operations_research::Assignment const *assignment)
Specialization of LocalSearchOperator built from an array of IntVars which specifies the scope of the...
virtual void AcceptNeighbor()
After accepting a neighbor during local search.
void(SWIGSTDCALL * SWIG_Callback2_t)(void *, void *)
virtual int64_t 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...
void(SWIGSTDCALL * SWIG_Callback5_t)(void *, void *)
virtual bool IsUncheckedSolutionLimitReached()
Returns true if the limit of solutions has been reached including unchecked solutions.
virtual bool RestartAtPathStartOnSynchronize()
When the operator is being synchronized with a new solution (when Start() is called),...
Base class of all search limits.
virtual void NoMoreSolutions()
When the search tree is finished.
unsigned int(SWIGSTDCALL * SWIG_Callback14_t)()
virtual bool MakeOneNeighbor()
Creates a new neighbor.
Definition: local_search.cc:97
virtual void RefuteDecision(operations_research::Decision *const d)
Before refuting the decision.
virtual bool LocalOptimum()
When a local optimum is reached.
virtual void VisitRankLastInterval(operations_research::SequenceVar *const sequence, int index)
unsigned int(SWIGSTDCALL * SWIG_Callback4_t)()
virtual void PeriodicCheck()
Periodic call to check limits in long running methods.
void(SWIGSTDCALL * SWIG_Callback8_t)(void *, unsigned int)
virtual std::string DebugString() const
virtual void VisitScheduleOrExpedite(operations_research::IntervalVar *const var, int64_t est)
unsigned int(SWIGSTDCALL * SWIG_Callback20_t)()
void(SWIGSTDCALL * SWIG_Callback12_t)(long long)
unsigned int(SWIGSTDCALL * SWIG_Callback16_t)()
SwigDirector_RegularLimit(operations_research::Solver *const s, absl::Duration time, int64_t branches, int64_t failures, int64_t solutions, bool smart_time_check, bool cumulative)
virtual void ApplyDecision(operations_research::Decision *const d)
Before applying the decision.
Local Search Filters are used for fast neighbor pruning.
bool MakeOneNeighbor() override
This method should not be overridden. Override ModifyValue() instead.
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)
void(SWIGSTDCALL * SWIG_Callback7_t)(void *)
virtual void BeginNextDecision(operations_research::DecisionBuilder *const db)
Before calling DecisionBuilder::Next.
int64_t value
SwigDirector_IntVarLocalSearchFilter(std::vector< operations_research::IntVar * > const &vars)
virtual bool Accept(operations_research::Assignment const *delta, operations_research::Assignment const *deltadelta, int64_t objective_min, int64_t objective_max)
Accepts a "delta" given the assignment with which the filter has been synchronized; the delta holds t...
virtual void BeginInitialPropagation()
Before the initial propagation.
virtual void Refute(operations_research::Solver *const s)
Refute will be called after a backtrack.
virtual bool OnSamePathAsPreviousBase(int64_t 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 std::string DebugString() const
virtual void ApplyDecision(operations_research::Decision *const d)
Before applying the decision.
virtual void EndFail()
After completing the backtrack.
unsigned int(SWIGSTDCALL * SWIG_Callback14_t)()
virtual void AfterDecision(operations_research::Decision *const d, bool apply)
Just after refuting or applying the decision, apply is true after Apply.
void(SWIGSTDCALL * SWIG_Callback6_t)(void *)
virtual std::string DebugString() const
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().
This class is the root class of all solution collectors.
int64_t a
void(SWIGSTDCALL * SWIG_Callback3_t)(void *)
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)
unsigned int(SWIGSTDCALL * SWIG_Callback3_t)()