DotNet Reference

DotNet Reference

RoutingModel.cs
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 // <auto-generated />
3 //
4 // This file was automatically generated by SWIG (http://www.swig.org).
5 // Version 4.0.1
6 //
7 // Do not make changes to this file unless you know what you are doing--modify
8 // the SWIG interface file instead.
9 //------------------------------------------------------------------------------
10 
12 
13 using System;
14 using System.Runtime.InteropServices;
15 using System.Collections;
16 using System.Collections.Generic;
17 
18 public partial class RoutingModel : global::System.IDisposable {
19  private global::System.Runtime.InteropServices.HandleRef swigCPtr;
20  protected bool swigCMemOwn;
21 
22  internal RoutingModel(global::System.IntPtr cPtr, bool cMemoryOwn) {
23  swigCMemOwn = cMemoryOwn;
24  swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
25  }
26 
27  internal static global::System.Runtime.InteropServices.HandleRef getCPtr(RoutingModel obj) {
28  return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
29  }
30 
31  ~RoutingModel() {
32  Dispose(false);
33  }
34 
35  public void Dispose() {
36  Dispose(true);
37  global::System.GC.SuppressFinalize(this);
38  }
39 
40  protected virtual void Dispose(bool disposing) {
41  lock(this) {
42  if (swigCPtr.Handle != global::System.IntPtr.Zero) {
43  if (swigCMemOwn) {
44  swigCMemOwn = false;
46  }
47  swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
48  }
49  }
50  }
51 
52  // Keep reference to delegate to avoid GC to collect them early.
53  private List<LongToLong> unaryTransitCallbacks;
54  private LongToLong StoreLongToLong(LongToLong c) {
55  if (unaryTransitCallbacks == null)
56  unaryTransitCallbacks = new List<LongToLong>();
57  unaryTransitCallbacks.Add(c);
58  return c;
59  }
60 
61  private List<LongLongToLong> transitCallbacks;
62  private LongLongToLong StoreLongLongToLong(LongLongToLong c) {
63  if (transitCallbacks == null)
64  transitCallbacks = new List<LongLongToLong>();
65  transitCallbacks.Add(c);
66  return c;
67  }
68 
69  private List<VoidToVoid> solutionCallbacks;
70  private VoidToVoid StoreVoidToVoid(VoidToVoid c) {
71  if (solutionCallbacks == null)
72  solutionCallbacks = new List<VoidToVoid>();
73  solutionCallbacks.Add(c);
74  return c;
75  }
76 
77  public static long kNoPenalty {
78  get {
80  return ret;
81  }
82  }
83 
84  public static int kNoDisjunction {
85  get {
87  }
88 
89  }
90 
91  public static int kNoDimension {
92  get {
94  }
95 
96  }
97 
98  public RoutingModel(RoutingIndexManager index_manager) : this(operations_research_constraint_solverPINVOKE.new_RoutingModel__SWIG_0(RoutingIndexManager.getCPtr(index_manager)), true) {
100  }
101 
102  public RoutingModel(RoutingIndexManager index_manager, Google.OrTools.ConstraintSolver.RoutingModelParameters parameters) : this(operations_research_constraint_solverPINVOKE.new_RoutingModel__SWIG_1(RoutingIndexManager.getCPtr(index_manager), parameters.CalculateSize(), ProtoHelper.ProtoToByteArray(parameters)), true) {
104  }
105 
106  public int RegisterUnaryTransitCallback( LongToLong callback) {
107  int ret = operations_research_constraint_solverPINVOKE.RoutingModel_RegisterUnaryTransitCallback(swigCPtr, StoreLongToLong(callback) );
108  return ret;
109  }
110 
113  return ret;
114  }
115 
116  public int RegisterTransitCallback( LongLongToLong callback) {
117  int ret = operations_research_constraint_solverPINVOKE.RoutingModel_RegisterTransitCallback(swigCPtr, StoreLongLongToLong(callback) );
118  return ret;
119  }
120 
122  int ret = operations_research_constraint_solverPINVOKE.RoutingModel_RegisterPositiveTransitCallback(swigCPtr, StoreLongLongToLong(callback) );
123  return ret;
124  }
125 
126  public bool AddDimension(int evaluator_index, long slack_max, long capacity, bool fix_start_cumul_to_zero, string name) {
127  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_AddDimension(swigCPtr, evaluator_index, slack_max, capacity, fix_start_cumul_to_zero, name);
129  return ret;
130  }
131 
132  public bool AddDimensionWithVehicleTransits( int[] evaluator_indices, long slack_max, long capacity, bool fix_start_cumul_to_zero, string name) {
133  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_AddDimensionWithVehicleTransits(swigCPtr, evaluator_indices.Length, evaluator_indices , slack_max, capacity, fix_start_cumul_to_zero, name);
135  return ret;
136  }
137 
138  public bool AddDimensionWithVehicleCapacity(int evaluator_index, long slack_max, long[] vehicle_capacities, bool fix_start_cumul_to_zero, string name) {
139  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_AddDimensionWithVehicleCapacity(swigCPtr, evaluator_index, slack_max, vehicle_capacities.Length, vehicle_capacities , fix_start_cumul_to_zero, name);
141  return ret;
142  }
143 
144  public bool AddDimensionWithVehicleTransitAndCapacity( int[] evaluator_indices, long slack_max, long[] vehicle_capacities, bool fix_start_cumul_to_zero, string name) {
145  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_AddDimensionWithVehicleTransitAndCapacity(swigCPtr, evaluator_indices.Length, evaluator_indices , slack_max, vehicle_capacities.Length, vehicle_capacities , fix_start_cumul_to_zero, name);
147  return ret;
148  }
149 
150  public bool AddConstantDimensionWithSlack(long value, long capacity, long slack_max, bool fix_start_cumul_to_zero, string name) {
151  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_AddConstantDimensionWithSlack(swigCPtr, value, capacity, slack_max, fix_start_cumul_to_zero, name);
153  return ret;
154  }
155 
156  public bool AddConstantDimension(long value, long capacity, bool fix_start_cumul_to_zero, string name) {
157  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_AddConstantDimension(swigCPtr, value, capacity, fix_start_cumul_to_zero, name);
159  return ret;
160  }
161 
162  public bool AddVectorDimension( long[] values, long capacity, bool fix_start_cumul_to_zero, string name) {
163  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_AddVectorDimension(swigCPtr, values.Length, values , capacity, fix_start_cumul_to_zero, name);
165  return ret;
166  }
167 
169  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_MakePathSpansAndTotalSlacks(swigCPtr, RoutingDimension.getCPtr(dimension), IntVarVector.getCPtr(spans), IntVarVector.getCPtr(total_slacks));
170  Constraint ret = (cPtr == global::System.IntPtr.Zero) ? null : new Constraint(cPtr, false);
172  return ret;
173  }
174 
175  public SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__GlobalDimensionCumulOptimizer_t_t GetGlobalDimensionCumulOptimizers() {
176  SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__GlobalDimensionCumulOptimizer_t_t ret = new SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__GlobalDimensionCumulOptimizer_t_t(operations_research_constraint_solverPINVOKE.RoutingModel_GetGlobalDimensionCumulOptimizers(swigCPtr), false);
177  return ret;
178  }
179 
180  public SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__LocalDimensionCumulOptimizer_t_t GetLocalDimensionCumulOptimizers() {
181  SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__LocalDimensionCumulOptimizer_t_t ret = new SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__LocalDimensionCumulOptimizer_t_t(operations_research_constraint_solverPINVOKE.RoutingModel_GetLocalDimensionCumulOptimizers(swigCPtr), false);
182  return ret;
183  }
184 
185  public SWIGTYPE_p_operations_research__GlobalDimensionCumulOptimizer GetMutableGlobalCumulOptimizer(RoutingDimension dimension) {
186  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_GetMutableGlobalCumulOptimizer(swigCPtr, RoutingDimension.getCPtr(dimension));
187  SWIGTYPE_p_operations_research__GlobalDimensionCumulOptimizer ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_operations_research__GlobalDimensionCumulOptimizer(cPtr, false);
189  return ret;
190  }
191 
192  public SWIGTYPE_p_operations_research__LocalDimensionCumulOptimizer GetMutableLocalCumulOptimizer(RoutingDimension dimension) {
193  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_GetMutableLocalCumulOptimizer(swigCPtr, RoutingDimension.getCPtr(dimension));
194  SWIGTYPE_p_operations_research__LocalDimensionCumulOptimizer ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_operations_research__LocalDimensionCumulOptimizer(cPtr, false);
196  return ret;
197  }
198 
199  public bool HasDimension(string dimension_name) {
200  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_HasDimension(swigCPtr, dimension_name);
202  return ret;
203  }
204 
205  public RoutingDimension GetDimensionOrDie(string dimension_name) {
208  return ret;
209  }
210 
211  public RoutingDimension GetMutableDimension(string dimension_name) {
212  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_GetMutableDimension(swigCPtr, dimension_name);
213  RoutingDimension ret = (cPtr == global::System.IntPtr.Zero) ? null : new RoutingDimension(cPtr, false);
215  return ret;
216  }
217 
218  public void SetPrimaryConstrainedDimension(string dimension_name) {
221  }
222 
225  return ret;
226  }
227 
228  public int AddDisjunction( long[] indices, long penalty, long max_cardinality) {
229  return operations_research_constraint_solverPINVOKE.RoutingModel_AddDisjunction__SWIG_0(swigCPtr, indices.Length, indices , penalty, max_cardinality);
230 }
231 
232  public int AddDisjunction( long[] indices, long penalty) {
233  return operations_research_constraint_solverPINVOKE.RoutingModel_AddDisjunction__SWIG_1(swigCPtr, indices.Length, indices , penalty);
234 }
235 
236  public int AddDisjunction( long[] indices) {
238 }
239 
240  public int[] GetDisjunctionIndices(long index) {
242  CpIntVector tmpVector = null;
243  if (cPtr != global::System.IntPtr.Zero) {
244  tmpVector = new CpIntVector(cPtr, true);
245  int[] outArray = new int[tmpVector.Count];
246  tmpVector.CopyTo(outArray);
247  return outArray;
248  }
249  return null;
250 }
251 
252  public long[] GetDisjunctionIndices(int index) {
254  CpInt64Vector tmpVector = null;
255  if (cPtr != global::System.IntPtr.Zero) {
256  tmpVector = new CpInt64Vector(cPtr, true);
257  long[] outArray = new long[tmpVector.Count];
258  tmpVector.CopyTo(outArray);
259  return outArray;
260  }
261  return null;
262 }
263 
264  public long GetDisjunctionPenalty(int index) {
266  return ret;
267  }
268 
269  public long GetDisjunctionMaxCardinality(int index) {
271  return ret;
272  }
273 
274  public int GetNumberOfDisjunctions() {
276  return ret;
277  }
278 
281  }
282 
283  public void AddSoftSameVehicleConstraint( long[] indices, long cost) {
285  }
286 
287  public void SetAllowedVehiclesForIndex( int[] vehicles, long index) {
289  }
290 
291  public bool IsVehicleAllowedForIndex(int vehicle, long index) {
293  return ret;
294  }
295 
296  public void AddPickupAndDelivery(long pickup, long delivery) {
298  }
299 
300  public void AddPickupAndDeliverySets(int pickup_disjunction, int delivery_disjunction) {
301  operations_research_constraint_solverPINVOKE.RoutingModel_AddPickupAndDeliverySets(swigCPtr, pickup_disjunction, delivery_disjunction);
302  }
303 
304  public void SetPickupAndDeliveryPolicyOfAllVehicles(int policy) {
306  }
307 
308  public void SetPickupAndDeliveryPolicyOfVehicle(int policy, int vehicle) {
310  }
311 
312  public int GetPickupAndDeliveryPolicyOfVehicle(int vehicle) {
314  return ret;
315  }
316 
317  public int GetNumOfSingletonNodes() {
319  return ret;
320  }
321 
322  public void SetVisitType(long index, int type) {
324  }
325 
326  public int GetVisitType(long index) {
328  return ret;
329  }
330 
331  public int GetNumberOfVisitTypes() {
333  return ret;
334  }
335 
336  public long UnperformedPenalty(long var_index) {
338  return ret;
339  }
340 
341  public long UnperformedPenaltyOrValue(long default_value, long var_index) {
342  long ret = operations_research_constraint_solverPINVOKE.RoutingModel_UnperformedPenaltyOrValue(swigCPtr, default_value, var_index);
343  return ret;
344  }
345 
346  public long GetDepot() {
348  return ret;
349  }
350 
351  public void SetArcCostEvaluatorOfAllVehicles(int evaluator_index) {
353  }
354 
355  public void SetArcCostEvaluatorOfVehicle(int evaluator_index, int vehicle) {
357  }
358 
359  public void SetFixedCostOfAllVehicles(long cost) {
361  }
362 
363  public void SetFixedCostOfVehicle(long cost, int vehicle) {
365  }
366 
367  public long GetFixedCostOfVehicle(int vehicle) {
369  return ret;
370  }
371 
372  public void SetAmortizedCostFactorsOfAllVehicles(long linear_cost_factor, long quadratic_cost_factor) {
373  operations_research_constraint_solverPINVOKE.RoutingModel_SetAmortizedCostFactorsOfAllVehicles(swigCPtr, linear_cost_factor, quadratic_cost_factor);
374  }
375 
376  public void SetAmortizedCostFactorsOfVehicle(long linear_cost_factor, long quadratic_cost_factor, int vehicle) {
377  operations_research_constraint_solverPINVOKE.RoutingModel_SetAmortizedCostFactorsOfVehicle(swigCPtr, linear_cost_factor, quadratic_cost_factor, vehicle);
378  }
379 
382  CpInt64Vector tmpVector = null;
383  if (cPtr != global::System.IntPtr.Zero) {
384  tmpVector = new CpInt64Vector(cPtr, true);
385  long[] outArray = new long[tmpVector.Count];
386  tmpVector.CopyTo(outArray);
387  return outArray;
388  }
389  return null;
390 }
391 
394  CpInt64Vector tmpVector = null;
395  if (cPtr != global::System.IntPtr.Zero) {
396  tmpVector = new CpInt64Vector(cPtr, true);
397  long[] outArray = new long[tmpVector.Count];
398  tmpVector.CopyTo(outArray);
399  return outArray;
400  }
401  return null;
402 }
403 
404  public void ConsiderEmptyRouteCostsForVehicle(bool consider_costs, int vehicle) {
406  }
407 
408  public bool AreEmptyRouteCostsConsideredForVehicle(int vehicle) {
410  return ret;
411  }
412 
413  public void SetFirstSolutionEvaluator( LongLongToLong evaluator) {
415  }
416 
417  public void AddLocalSearchOperator(LocalSearchOperator ls_operator) {
419  }
420 
421  public void AddSearchMonitor(SearchMonitor monitor) {
423  }
424 
425  public void AddAtSolutionCallback( VoidToVoid callback) {
427  }
428 
431  }
432 
435  }
436 
437  public void AddWeightedVariableMinimizedByFinalizer(IntVar var, long cost) {
439  }
440 
441  public void AddVariableTargetToFinalizer(IntVar var, long target) {
443  }
444 
445  public void CloseModel() {
447  }
448 
449  public void CloseModelWithParameters(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters) {
450  operations_research_constraint_solverPINVOKE.RoutingModel_CloseModelWithParameters(swigCPtr, search_parameters.CalculateSize(), ProtoHelper.ProtoToByteArray(search_parameters));
451  }
452 
453  public Assignment Solve(Assignment assignment) {
454  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_Solve__SWIG_0(swigCPtr, Assignment.getCPtr(assignment));
455  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
456  return ret;
457  }
458 
459  public Assignment Solve() {
460  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_Solve__SWIG_1(swigCPtr);
461  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
462  return ret;
463  }
464 
465  public Assignment SolveWithParameters(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters) {
466  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_SolveWithParameters(swigCPtr, search_parameters.CalculateSize(), ProtoHelper.ProtoToByteArray(search_parameters));
467  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
468  return ret;
469  }
470 
471  public Assignment SolveFromAssignmentWithParameters(Assignment assignment, Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters) {
472  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_SolveFromAssignmentWithParameters(swigCPtr, Assignment.getCPtr(assignment), search_parameters.CalculateSize(), ProtoHelper.ProtoToByteArray(search_parameters));
473  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
474  return ret;
475  }
476 
477  public void SetAssignmentFromOtherModelAssignment(Assignment target_assignment, RoutingModel source_model, Assignment source_assignment) {
478  operations_research_constraint_solverPINVOKE.RoutingModel_SetAssignmentFromOtherModelAssignment(swigCPtr, Assignment.getCPtr(target_assignment), RoutingModel.getCPtr(source_model), Assignment.getCPtr(source_assignment));
479  }
480 
481  public long ComputeLowerBound() {
483  return ret;
484  }
485 
486  public int GetStatus() {
488  return ret;
489  }
490 
491  public IntVar ApplyLocks( long[] locks) {
492  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_ApplyLocks(swigCPtr, locks.Length, locks );
493  IntVar ret = (cPtr == global::System.IntPtr.Zero) ? null : new IntVar(cPtr, false);
494  return ret;
495  }
496 
497  public bool ApplyLocksToAllVehicles( long[][] locks, bool close_routes) {
499  locks.GetLength(0),
500  NestedArrayHelper.GetArraySecondSize(locks),
501  NestedArrayHelper.GetFlatArray(locks)
502 , close_routes);
503  return ret;
504  }
505 
507  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_PreAssignment(swigCPtr);
508  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
509  return ret;
510  }
511 
514  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
515  return ret;
516  }
517 
518  public bool WriteAssignment(string file_name) {
521  return ret;
522  }
523 
524  public Assignment ReadAssignment(string file_name) {
525  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_ReadAssignment(swigCPtr, file_name);
526  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
528  return ret;
529  }
530 
532  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_RestoreAssignment(swigCPtr, Assignment.getCPtr(solution));
533  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
535  return ret;
536  }
537 
538  public Assignment ReadAssignmentFromRoutes( long[][] routes, bool ignore_inactive_indices) {
540  routes.GetLength(0),
541  NestedArrayHelper.GetArraySecondSize(routes),
542  NestedArrayHelper.GetFlatArray(routes)
543 , ignore_inactive_indices);
544  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
545  return ret;
546  }
547 
548  public bool RoutesToAssignment( long[][] routes, bool ignore_inactive_indices, bool close_routes, Assignment assignment) {
550  routes.GetLength(0),
551  NestedArrayHelper.GetArraySecondSize(routes),
552  NestedArrayHelper.GetFlatArray(routes)
553 , ignore_inactive_indices, close_routes, Assignment.getCPtr(assignment));
554  return ret;
555  }
556 
557  public void AssignmentToRoutes(Assignment assignment, long[][] routes) {
559  routes.GetLength(0),
560  NestedArrayHelper.GetArraySecondSize(routes),
561  NestedArrayHelper.GetFlatArray(routes)
562 );
564  }
565 
567  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_CompactAssignment(swigCPtr, Assignment.getCPtr(assignment));
568  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
570  return ret;
571  }
572 
574  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_CompactAndCheckAssignment(swigCPtr, Assignment.getCPtr(assignment));
575  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
577  return ret;
578  }
579 
580  public void AddToAssignment(IntVar var) {
582  }
583 
584  public void AddIntervalToAssignment(IntervalVar interval) {
586  }
587 
588  public Assignment PackCumulsOfOptimizerDimensionsFromAssignment(Assignment original_assignment, SWIGTYPE_p_absl__Duration duration_limit) {
589  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_PackCumulsOfOptimizerDimensionsFromAssignment(swigCPtr, Assignment.getCPtr(original_assignment), SWIGTYPE_p_absl__Duration.getCPtr(duration_limit));
590  Assignment ret = (cPtr == global::System.IntPtr.Zero) ? null : new Assignment(cPtr, false);
592  return ret;
593  }
594 
597  }
598 
599  public long Start(int vehicle) {
601  return ret;
602  }
603 
604  public long End(int vehicle) {
606  return ret;
607  }
608 
609  public bool IsStart(long index) {
611  return ret;
612  }
613 
614  public bool IsEnd(long index) {
616  return ret;
617  }
618 
619  public int VehicleIndex(int index) {
621  return ret;
622  }
623 
624  public long Next(Assignment assignment, long index) {
625  long ret = operations_research_constraint_solverPINVOKE.RoutingModel_Next(swigCPtr, Assignment.getCPtr(assignment), index);
627  return ret;
628  }
629 
630  public bool IsVehicleUsed(Assignment assignment, int vehicle) {
631  bool ret = operations_research_constraint_solverPINVOKE.RoutingModel_IsVehicleUsed(swigCPtr, Assignment.getCPtr(assignment), vehicle);
633  return ret;
634  }
635 
636  public IntVarVector Nexts() {
638  return ret;
639  }
640 
643  return ret;
644  }
645 
646  public IntVar NextVar(long index) {
647  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_NextVar(swigCPtr, index);
648  IntVar ret = (cPtr == global::System.IntPtr.Zero) ? null : new IntVar(cPtr, false);
649  return ret;
650  }
651 
652  public IntVar ActiveVar(long index) {
653  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_ActiveVar(swigCPtr, index);
654  IntVar ret = (cPtr == global::System.IntPtr.Zero) ? null : new IntVar(cPtr, false);
655  return ret;
656  }
657 
658  public IntVar VehicleCostsConsideredVar(int vehicle) {
659  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_VehicleCostsConsideredVar(swigCPtr, vehicle);
660  IntVar ret = (cPtr == global::System.IntPtr.Zero) ? null : new IntVar(cPtr, false);
661  return ret;
662  }
663 
664  public IntVar VehicleVar(long index) {
665  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_VehicleVar(swigCPtr, index);
666  IntVar ret = (cPtr == global::System.IntPtr.Zero) ? null : new IntVar(cPtr, false);
667  return ret;
668  }
669 
670  public IntVar CostVar() {
671  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_CostVar(swigCPtr);
672  IntVar ret = (cPtr == global::System.IntPtr.Zero) ? null : new IntVar(cPtr, false);
673  return ret;
674  }
675 
676  public long GetArcCostForVehicle(long from_index, long to_index, long vehicle) {
677  long ret = operations_research_constraint_solverPINVOKE.RoutingModel_GetArcCostForVehicle(swigCPtr, from_index, to_index, vehicle);
678  return ret;
679  }
680 
683  return ret;
684  }
685 
686  public long GetHomogeneousCost(long from_index, long to_index) {
687  long ret = operations_research_constraint_solverPINVOKE.RoutingModel_GetHomogeneousCost(swigCPtr, from_index, to_index);
688  return ret;
689  }
690 
691  public long GetArcCostForFirstSolution(long from_index, long to_index) {
693  return ret;
694  }
695 
696  public long GetArcCostForClass(long from_index, long to_index, long cost_class_index) {
697  long ret = operations_research_constraint_solverPINVOKE.RoutingModel_GetArcCostForClass(swigCPtr, from_index, to_index, cost_class_index);
698  return ret;
699  }
700 
701  public int GetCostClassIndexOfVehicle(long vehicle) {
703 }
704 
705  public bool HasVehicleWithCostClassIndex(int cost_class_index) {
707  return ret;
708  }
709 
710  public int GetCostClassesCount() {
712  return ret;
713  }
714 
717  return ret;
718  }
719 
720  public int GetVehicleClassIndexOfVehicle(long vehicle) {
722 }
723 
724  public int GetVehicleClassesCount() {
726  return ret;
727  }
728 
729  public int[] GetSameVehicleIndicesOfIndex(int node) {
731  CpIntVector tmpVector = null;
732  if (cPtr != global::System.IntPtr.Zero) {
733  tmpVector = new CpIntVector(cPtr, true);
734  int[] outArray = new int[tmpVector.Count];
735  tmpVector.CopyTo(outArray);
736  return outArray;
737  }
738  return null;
739 }
740 
741  public bool ArcIsMoreConstrainedThanArc(long from, long to1, long to2) {
743  return ret;
744  }
745 
746  public string DebugOutputAssignment(Assignment solution_assignment, string dimension_to_print) {
747  string ret = operations_research_constraint_solverPINVOKE.RoutingModel_DebugOutputAssignment(swigCPtr, Assignment.getCPtr(solution_assignment), dimension_to_print);
749  return ret;
750  }
751 
752  public Solver solver() {
753  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_solver(swigCPtr);
754  Solver ret = (cPtr == global::System.IntPtr.Zero) ? null : new Solver(cPtr, false);
755  return ret;
756  }
757 
758  public bool CheckLimit() {
760  return ret;
761  }
762 
763  public SWIGTYPE_p_absl__Duration RemainingTime() {
764  SWIGTYPE_p_absl__Duration ret = new SWIGTYPE_p_absl__Duration(operations_research_constraint_solverPINVOKE.RoutingModel_RemainingTime(swigCPtr), true);
765  return ret;
766  }
767 
768  public int Nodes() {
770  return ret;
771  }
772 
773  public int Vehicles() {
775  return ret;
776  }
777 
778  public long Size() {
780  return ret;
781  }
782 
783  public long GetNumberOfDecisionsInFirstSolution(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters) {
784  long ret = operations_research_constraint_solverPINVOKE.RoutingModel_GetNumberOfDecisionsInFirstSolution(swigCPtr, search_parameters.CalculateSize(), ProtoHelper.ProtoToByteArray(search_parameters));
785  return ret;
786  }
787 
788  public long GetNumberOfRejectsInFirstSolution(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters) {
789  long ret = operations_research_constraint_solverPINVOKE.RoutingModel_GetNumberOfRejectsInFirstSolution(swigCPtr, search_parameters.CalculateSize(), ProtoHelper.ProtoToByteArray(search_parameters));
790  return ret;
791  }
792 
793  public bool IsMatchingModel() {
795  return ret;
796  }
797 
799  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.RoutingModel_MakeGuidedSlackFinalizer(swigCPtr, RoutingDimension.getCPtr(dimension), StoreLongToLong(initializer) );
800  DecisionBuilder ret = (cPtr == global::System.IntPtr.Zero) ? null : new DecisionBuilder(cPtr, false);
801  return ret;
802  }
803 
806  DecisionBuilder ret = (cPtr == global::System.IntPtr.Zero) ? null : new DecisionBuilder(cPtr, false);
807  return ret;
808  }
809 
810  // Status
816 
817  // PickupAndDeliveryPolicy
821 
822 }
823 
824 }
Assignment MutablePreAssignment()
Assignment SolveFromAssignmentWithParameters(Assignment assignment, Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters)
IntVar VehicleVar(long index)
IntVar CostVar()
static bool RoutingModel_CheckLimit(global::System.Runtime.InteropServices.HandleRef jarg1)
static void delete_RoutingModel(global::System.Runtime.InteropServices.HandleRef jarg1)
Definition: IntVar.cs:18
bool RoutesToAssignment(long[][] routes, bool ignore_inactive_indices, bool close_routes, Assignment assignment)
void SetFirstSolutionEvaluator(LongLongToLong evaluator)
static void RoutingModel_AddLocalSearchFilter(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static int RoutingModel_PICKUP_AND_DELIVERY_FIFO_get()
long GetNumberOfDecisionsInFirstSolution(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters)
SWIGTYPE_p_operations_research__LocalDimensionCumulOptimizer GetMutableLocalCumulOptimizer(RoutingDimension dimension)
static bool RoutingModel_AddConstantDimensionWithSlack(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3, long jarg4, bool jarg5, string jarg6)
void Dispose()
Definition: RoutingModel.cs:35
static global::System.IntPtr RoutingModel_GetDimensionOrDie(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2)
bool AddVectorDimension(long[] values, long capacity, bool fix_start_cumul_to_zero, string name)
static void RoutingModel_SetPrimaryConstrainedDimension(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2)
static long RoutingModel_GetDepot(global::System.Runtime.InteropServices.HandleRef jarg1)
delegate long LongToLong(long t)
static readonly int ROUTING_FAIL_TIMEOUT
static int kNoDimension
Definition: RoutingModel.cs:91
static void RoutingModel_SetAmortizedCostFactorsOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3, int jarg4)
static global::System.IntPtr RoutingModel_Solve__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
void SetArcCostEvaluatorOfAllVehicles(int evaluator_index)
static void RoutingModel_AddSearchMonitor(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static int RoutingModel_VehicleIndex(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
bool HasDimension(string dimension_name)
static global::System.IntPtr RoutingModel_PreAssignment(global::System.Runtime.InteropServices.HandleRef jarg1)
static void RoutingModel_SetAssignmentFromOtherModelAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, global::System.Runtime.InteropServices.HandleRef jarg4)
public int CalculateSize()
void AddLocalSearchOperator(LocalSearchOperator ls_operator)
static long RoutingModel_GetNumberOfDecisionsInFirstSolution(global::System.Runtime.InteropServices.HandleRef jarg1, int search_parameters_size, byte[] jarg2)
static int RoutingModel_Vehicles(global::System.Runtime.InteropServices.HandleRef jarg1)
long End(int vehicle)
static int RoutingModel_GetNonZeroCostClassesCount(global::System.Runtime.InteropServices.HandleRef jarg1)
int GetVehicleClassIndexOfVehicle(long vehicle)
static long RoutingModel_GetArcCostForFirstSolution(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3)
static long RoutingModel_GetHomogeneousCost(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3)
static void RoutingModel_SetFirstSolutionEvaluator(global::System.Runtime.InteropServices.HandleRef jarg1, LongLongToLong jarg2)
static void RoutingModel_SetAmortizedCostFactorsOfAllVehicles(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3)
static global::System.IntPtr RoutingModel_CompactAndCheckAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static bool RoutingModel_AddVectorDimension(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, long[] jarg2, long jarg3, bool jarg4, string jarg5)
static global::System.IntPtr RoutingModel_MakePathSpansAndTotalSlacks(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, global::System.Runtime.InteropServices.HandleRef jarg4)
static int RoutingModel_Nodes(global::System.Runtime.InteropServices.HandleRef jarg1)
void AddVariableMinimizedByFinalizer(IntVar var)
static global::System.IntPtr RoutingModel_GetLocalDimensionCumulOptimizers(global::System.Runtime.InteropServices.HandleRef jarg1)
SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__LocalDimensionCumulOptimizer_t_t GetLocalDimensionCumulOptimizers()
long GetDisjunctionMaxCardinality(int index)
long[] GetAmortizedLinearCostFactorOfVehicles()
int GetCostClassIndexOfVehicle(long vehicle)
static void RoutingModel_SetVisitType(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, int jarg3)
int GetStatus()
void SetPrimaryConstrainedDimension(string dimension_name)
bool AddConstantDimensionWithSlack(long value, long capacity, long slack_max, bool fix_start_cumul_to_zero, string name)
static string RoutingModel_GetPrimaryConstrainedDimension(global::System.Runtime.InteropServices.HandleRef jarg1)
delegate void VoidToVoid()
IntVar ActiveVar(long index)
static global::System.IntPtr RoutingModel_Nexts(global::System.Runtime.InteropServices.HandleRef jarg1)
static bool RoutingModel_HasVehicleWithCostClassIndex(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static global::System.IntPtr RoutingModel_ApplyLocks(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, long[] jarg2)
static int RoutingModel_kNoDimension_get()
static bool RoutingModel_CostsAreHomogeneousAcrossVehicles(global::System.Runtime.InteropServices.HandleRef jarg1)
static void RoutingModel_AddVariableMinimizedByFinalizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
int GetPickupAndDeliveryPolicyOfVehicle(int vehicle)
static int RoutingModel_AddDisjunction__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, long[] jarg2, long jarg3)
static bool Pending
static void RoutingModel_AddWeightedVariableMinimizedByFinalizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, long jarg3)
static global::System.IntPtr RoutingModel_GetDisjunctionIndices__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static long RoutingModel_Next(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, long jarg3)
static void RoutingModel_CloseModel(global::System.Runtime.InteropServices.HandleRef jarg1)
Assignment ReadAssignment(string file_name)
static bool RoutingModel_IsStart(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
static string RoutingModel_DebugOutputAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, string jarg3)
static void RoutingModel_AddAtSolutionCallback(global::System.Runtime.InteropServices.HandleRef jarg1, VoidToVoid jarg2)
static global::System.IntPtr RoutingModel_VehicleVar(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
static byte[] ProtoToByteArray(IMessage message)
Definition: ProtoHelper.cs:21
RoutingModel(RoutingIndexManager index_manager, Google.OrTools.ConstraintSolver.RoutingModelParameters parameters)
static int RoutingModel_ROUTING_SUCCESS_get()
void ConsiderEmptyRouteCostsForVehicle(bool consider_costs, int vehicle)
static global::System.IntPtr RoutingModel_RestoreAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
Definition: Assignment.cs:11
void SetPickupAndDeliveryPolicyOfAllVehicles(int policy)
static void RoutingModel_ConsiderEmptyRouteCostsForVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, bool jarg2, int jarg3)
Definition: IntVarVector.cs:18
void AddPickupAndDelivery(long pickup, long delivery)
void SetAllowedVehiclesForIndex(int[] vehicles, long index)
void CloseModelWithParameters(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters)
long GetNumberOfRejectsInFirstSolution(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters)
static long RoutingModel_UnperformedPenalty(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
static long RoutingModel_Size(global::System.Runtime.InteropServices.HandleRef jarg1)
void AssignmentToRoutes(Assignment assignment, long[][] routes)
static void RoutingModel_AddVariableTargetToFinalizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, long jarg3)
bool swigCMemOwn
Definition: RoutingModel.cs:20
int Nodes()
void AddVariableTargetToFinalizer(IntVar var, long target)
void SetFixedCostOfAllVehicles(long cost)
Assignment CompactAndCheckAssignment(Assignment assignment)
static void RoutingModel_SetPickupAndDeliveryPolicyOfAllVehicles(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
int GetNumOfSingletonNodes()
static void RoutingModel_IgnoreDisjunctionsAlreadyForcedToZero(global::System.Runtime.InteropServices.HandleRef jarg1)
long GetDepot()
IntVarVector Nexts()
long Start(int vehicle)
static bool RoutingModel_AddConstantDimension(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3, bool jarg4, string jarg5)
long Size()
static int RoutingModel_GetNumOfSingletonNodes(global::System.Runtime.InteropServices.HandleRef jarg1)
void SetAmortizedCostFactorsOfVehicle(long linear_cost_factor, long quadratic_cost_factor, int vehicle)
Definition: KInt64Vector.cs:11
long UnperformedPenaltyOrValue(long default_value, long var_index)
Definition: RoutingModel.cs:18
bool IsMatchingModel()
IntVar ApplyLocks(long[] locks)
static bool RoutingModel_AddDimensionWithVehicleCapacity(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, long jarg3, int length4, long[] jarg4, bool jarg5, string jarg6)
long GetArcCostForClass(long from_index, long to_index, long cost_class_index)
static global::System.IntPtr RoutingModel_GetMutableGlobalCumulOptimizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
void SetVisitType(long index, int type)
static void RoutingModel_SetAllowedVehiclesForIndex(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, int[] jarg2, long jarg3)
static global::System.IntPtr RoutingModel_solver(global::System.Runtime.InteropServices.HandleRef jarg1)
static readonly int ROUTING_NOT_SOLVED
long UnperformedPenalty(long var_index)
static int RoutingModel_PICKUP_AND_DELIVERY_LIFO_get()
static global::System.IntPtr RoutingModel_SolveWithParameters(global::System.Runtime.InteropServices.HandleRef jarg1, int search_parameters_size, byte[] jarg2)
void SetFixedCostOfVehicle(long cost, int vehicle)
void SetPickupAndDeliveryPolicyOfVehicle(int policy, int vehicle)
static global::System.IntPtr RoutingModel_SolveFromAssignmentWithParameters(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, int search_parameters_size, byte[] jarg3)
int GetNonZeroCostClassesCount()
static int RoutingModel_PICKUP_AND_DELIVERY_NO_ORDER_get()
static bool RoutingModel_ArcIsMoreConstrainedThanArc(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3, long jarg4)
static bool RoutingModel_WriteAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2)
bool CheckLimit()
static global::System.IntPtr RoutingModel_VehicleCostsConsideredVar(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
void SetAssignmentFromOtherModelAssignment(Assignment target_assignment, RoutingModel source_model, Assignment source_assignment)
bool AreEmptyRouteCostsConsideredForVehicle(int vehicle)
static global::System.IntPtr RoutingModel_PackCumulsOfOptimizerDimensionsFromAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static long RoutingModel_GetDisjunctionPenalty(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static int RoutingModel_ROUTING_NOT_SOLVED_get()
static bool RoutingModel_AddDimensionWithVehicleTransitAndCapacity(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, int[] jarg2, long jarg3, int length4, long[] jarg4, bool jarg5, string jarg6)
SWIGTYPE_p_absl__Duration RemainingTime()
static int RoutingModel_ROUTING_INVALID_get()
int[] GetSameVehicleIndicesOfIndex(int node)
void AddSearchMonitor(SearchMonitor monitor)
DecisionBuilder MakeGuidedSlackFinalizer(RoutingDimension dimension, LongToLong initializer)
bool AddDimensionWithVehicleTransits(int[] evaluator_indices, long slack_max, long capacity, bool fix_start_cumul_to_zero, string name)
static int kNoDisjunction
Definition: RoutingModel.cs:84
static void RoutingModel_AddVariableMaximizedByFinalizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static long RoutingModel_End(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static bool RoutingModel_AddDimension(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, long jarg3, long jarg4, bool jarg5, string jarg6)
static bool RoutingModel_ApplyLocksToAllVehicles(global::System.Runtime.InteropServices.HandleRef jarg1, int len2_1, int[] len2_2, long[] jarg2, bool jarg3)
int GetNumberOfDisjunctions()
SWIGTYPE_p_std__vectorT_std__unique_ptrT_operations_research__GlobalDimensionCumulOptimizer_t_t GetGlobalDimensionCumulOptimizers()
static int RoutingModel_RegisterUnaryTransitCallback(global::System.Runtime.InteropServices.HandleRef jarg1, LongToLong jarg2)
static long RoutingModel_GetArcCostForVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3, long jarg4)
int RegisterPositiveUnaryTransitCallback(LongToLong callback)
static void RoutingModel_SetArcCostEvaluatorOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
void SetArcCostEvaluatorOfVehicle(int evaluator_index, int vehicle)
static global::System.IntPtr RoutingModel_MakeGuidedSlackFinalizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, LongToLong jarg3)
void CloseModel()
long[] GetAmortizedQuadraticCostFactorOfVehicles()
bool ApplyLocksToAllVehicles(long[][] locks, bool close_routes)
bool IsEnd(long index)
void CopyTo(int[] array)
Definition: CpIntVector.cs:113
long[] GetDisjunctionIndices(int index)
long GetArcCostForFirstSolution(long from_index, long to_index)
int AddDisjunction(long[] indices)
static long RoutingModel_GetArcCostForClass(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3, long jarg4)
int RegisterPositiveTransitCallback(LongLongToLong callback)
static readonly int PICKUP_AND_DELIVERY_NO_ORDER
SWIGTYPE_p_operations_research__GlobalDimensionCumulOptimizer GetMutableGlobalCumulOptimizer(RoutingDimension dimension)
void SetAmortizedCostFactorsOfAllVehicles(long linear_cost_factor, long quadratic_cost_factor)
static global::System.IntPtr RoutingModel_GetMutableDimension(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2)
bool CostsAreHomogeneousAcrossVehicles()
static int RoutingModel_AddDisjunction__SWIG_2(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, long[] jarg2)
static int RoutingModel_GetStatus(global::System.Runtime.InteropServices.HandleRef jarg1)
RoutingDimension GetDimensionOrDie(string dimension_name)
int VehicleIndex(int index)
Assignment Solve()
static bool RoutingModel_AddDimensionWithVehicleTransits(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, int[] jarg2, long jarg3, long jarg4, bool jarg5, string jarg6)
int GetCostClassesCount()
static readonly int PICKUP_AND_DELIVERY_FIFO
int Count
Definition: CpIntVector.cs:101
static int RoutingModel_GetCostClassesCount(global::System.Runtime.InteropServices.HandleRef jarg1)
Definition: IntervalVar.cs:18
void IgnoreDisjunctionsAlreadyForcedToZero()
static int RoutingModel_ROUTING_FAIL_TIMEOUT_get()
static int RoutingModel_GetNumberOfVisitTypes(global::System.Runtime.InteropServices.HandleRef jarg1)
static void RoutingModel_AssignmentToRoutes(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, int len3_1, int[] len3_2, long[] jarg3)
void AddAtSolutionCallback(VoidToVoid callback)
static void RoutingModel_SetArcCostEvaluatorOfAllVehicles(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
Assignment CompactAssignment(Assignment assignment)
static void RoutingModel_AddIntervalToAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static int RoutingModel_AddDisjunction__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, long[] jarg2, long jarg3, long jarg4)
static global::System.IntPtr RoutingModel_GetAmortizedLinearCostFactorOfVehicles(global::System.Runtime.InteropServices.HandleRef jarg1)
Assignment ReadAssignmentFromRoutes(long[][] routes, bool ignore_inactive_indices)
RoutingModel(RoutingIndexManager index_manager)
Definition: RoutingModel.cs:98
void AddIntervalToAssignment(IntervalVar interval)
bool HasVehicleWithCostClassIndex(int cost_class_index)
static global::System.IntPtr RoutingModel_ActiveVar(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
IntVar VehicleCostsConsideredVar(int vehicle)
bool IsVehicleAllowedForIndex(int vehicle, long index)
long GetDisjunctionPenalty(int index)
int GetVisitType(long index)
IntVar NextVar(long index)
void AddPickupAndDeliverySets(int pickup_disjunction, int delivery_disjunction)
void AddSoftSameVehicleConstraint(long[] indices, long cost)
static long RoutingModel_UnperformedPenaltyOrValue(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3)
static global::System.IntPtr RoutingModel_GetDisjunctionIndices__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
int RegisterUnaryTransitCallback(LongToLong callback)
static bool RoutingModel_IsMatchingModel(global::System.Runtime.InteropServices.HandleRef jarg1)
static global::System.IntPtr RoutingModel_RemainingTime(global::System.Runtime.InteropServices.HandleRef jarg1)
void AddToAssignment(IntVar var)
static long RoutingModel_kNoPenalty_get()
static global::System.IntPtr RoutingModel_CostVar(global::System.Runtime.InteropServices.HandleRef jarg1)
bool IsVehicleUsed(Assignment assignment, int vehicle)
long GetFixedCostOfVehicle(int vehicle)
static bool RoutingModel_IsVehicleUsed(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, int jarg3)
static void RoutingModel_AddLocalSearchOperator(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
int GetNumberOfVisitTypes()
static int RoutingModel_GetVehicleClassesCount(global::System.Runtime.InteropServices.HandleRef jarg1)
int AddDisjunction(long[] indices, long penalty)
static int RoutingModel_GetVehicleClassIndexOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
static global::System.IntPtr RoutingModel_GetSameVehicleIndicesOfIndex(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
bool AddDimension(int evaluator_index, long slack_max, long capacity, bool fix_start_cumul_to_zero, string name)
static int RoutingModel_RegisterPositiveUnaryTransitCallback(global::System.Runtime.InteropServices.HandleRef jarg1, LongToLong jarg2)
void AddLocalSearchFilter(LocalSearchFilter filter)
static readonly int ROUTING_INVALID
static global::System.IntPtr RoutingModel_GetGlobalDimensionCumulOptimizers(global::System.Runtime.InteropServices.HandleRef jarg1)
static long RoutingModel_GetNumberOfRejectsInFirstSolution(global::System.Runtime.InteropServices.HandleRef jarg1, int search_parameters_size, byte[] jarg2)
static int RoutingModel_GetNumberOfDisjunctions(global::System.Runtime.InteropServices.HandleRef jarg1)
static long RoutingModel_GetDisjunctionMaxCardinality(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static bool RoutingModel_HasDimension(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2)
Definition: CpIntVector.cs:18
Assignment PackCumulsOfOptimizerDimensionsFromAssignment(Assignment original_assignment, SWIGTYPE_p_absl__Duration duration_limit)
Assignment PreAssignment()
Definition: Assignment.cs:18
static int RoutingModel_GetPickupAndDeliveryPolicyOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
int GetVehicleClassesCount()
static void RoutingModel_CloseModelWithParameters(global::System.Runtime.InteropServices.HandleRef jarg1, int search_parameters_size, byte[] jarg2)
static long kNoPenalty
Definition: RoutingModel.cs:77
bool AddDimensionWithVehicleTransitAndCapacity(int[] evaluator_indices, long slack_max, long[] vehicle_capacities, bool fix_start_cumul_to_zero, string name)
Definition: KInt64Vector.cs:11
static readonly int ROUTING_SUCCESS
bool ArcIsMoreConstrainedThanArc(long from, long to1, long to2)
static global::System.IntPtr RoutingModel_Solve__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1)
bool IsStart(long index)
static void RoutingModel_AddToAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
IntVarVector VehicleVars()
static int RoutingModel_RegisterPositiveTransitCallback(global::System.Runtime.InteropServices.HandleRef jarg1, LongLongToLong jarg2)
static long RoutingModel_GetFixedCostOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
bool AddDimensionWithVehicleCapacity(int evaluator_index, long slack_max, long[] vehicle_capacities, bool fix_start_cumul_to_zero, string name)
static int RoutingModel_GetCostClassIndexOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
void AddVariableMaximizedByFinalizer(IntVar var)
long GetHomogeneousCost(long from_index, long to_index)
int AddDisjunction(long[] indices, long penalty, long max_cardinality)
static void RoutingModel_SetPickupAndDeliveryPolicyOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static long RoutingModel_Start(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static readonly int ROUTING_FAIL
bool AddConstantDimension(long value, long capacity, bool fix_start_cumul_to_zero, string name)
DecisionBuilder MakeSelfDependentDimensionFinalizer(RoutingDimension dimension)
static global::System.IntPtr RoutingModel_MutablePreAssignment(global::System.Runtime.InteropServices.HandleRef jarg1)
static int RoutingModel_ROUTING_FAIL_get()
static void RoutingModel_SetFixedCostOfAllVehicles(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
static void RoutingModel_SetFixedCostOfVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, int jarg3)
Solver solver()
int Vehicles()
void CopyTo(long[] array)
static global::System.IntPtr RoutingModel_NextVar(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
int[] GetDisjunctionIndices(long index)
static global::System.IntPtr RoutingModel_GetAmortizedQuadraticCostFactorOfVehicles(global::System.Runtime.InteropServices.HandleRef jarg1)
Definition: ProtoHelper.cs:19
Constraint MakePathSpansAndTotalSlacks(RoutingDimension dimension, IntVarVector spans, IntVarVector total_slacks)
static void RoutingModel_AddPickupAndDelivery(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2, long jarg3)
static global::System.IntPtr RoutingModel_ReadAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2)
Assignment RestoreAssignment(Assignment solution)
long ComputeLowerBound()
bool WriteAssignment(string file_name)
static int RoutingModel_kNoDisjunction_get()
static global::System.Exception Retrieve()
int RegisterTransitCallback(LongLongToLong callback)
static long RoutingModel_ComputeLowerBound(global::System.Runtime.InteropServices.HandleRef jarg1)
virtual void Dispose(bool disposing)
Definition: RoutingModel.cs:40
static int RoutingModel_RegisterTransitCallback(global::System.Runtime.InteropServices.HandleRef jarg1, LongLongToLong jarg2)
static bool RoutingModel_AreEmptyRouteCostsConsideredForVehicle(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
long Next(Assignment assignment, long index)
static void RoutingModel_AddSoftSameVehicleConstraint(global::System.Runtime.InteropServices.HandleRef jarg1, int length2, long[] jarg2, long jarg3)
string GetPrimaryConstrainedDimension()
static global::System.IntPtr RoutingModel_VehicleVars(global::System.Runtime.InteropServices.HandleRef jarg1)
static bool RoutingModel_RoutesToAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, int len2_1, int[] len2_2, long[] jarg2, bool jarg3, bool jarg4, global::System.Runtime.InteropServices.HandleRef jarg5)
static global::System.IntPtr RoutingModel_ReadAssignmentFromRoutes(global::System.Runtime.InteropServices.HandleRef jarg1, int len2_1, int[] len2_2, long[] jarg2, bool jarg3)
static global::System.IntPtr RoutingModel_CompactAssignment(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
long GetArcCostForVehicle(long from_index, long to_index, long vehicle)
int Count
Assignment SolveWithParameters(Google.OrTools.ConstraintSolver.RoutingSearchParameters search_parameters)
static readonly int PICKUP_AND_DELIVERY_LIFO
Assignment Solve(Assignment assignment)
static bool RoutingModel_IsEnd(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)
RoutingDimension GetMutableDimension(string dimension_name)
string DebugOutputAssignment(Assignment solution_assignment, string dimension_to_print)
void AddWeightedVariableMinimizedByFinalizer(IntVar var, long cost)
static bool RoutingModel_IsVehicleAllowedForIndex(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, long jarg3)
static global::System.IntPtr RoutingModel_MakeSelfDependentDimensionFinalizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
delegate long LongLongToLong(long t, long u)
static void RoutingModel_AddPickupAndDeliverySets(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static global::System.IntPtr RoutingModel_GetMutableLocalCumulOptimizer(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static int RoutingModel_GetVisitType(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2)