DotNet Reference

.Net Reference

SymmetryBreaker.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.2
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 SymmetryBreaker : DecisionVisitor {
19  private global::System.Runtime.InteropServices.HandleRef swigCPtr;
20 
21  internal SymmetryBreaker(global::System.IntPtr cPtr, bool cMemoryOwn) : base(operations_research_constraint_solverPINVOKE.SymmetryBreaker_SWIGUpcast(cPtr), cMemoryOwn) {
22  swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
23  }
24 
25  internal static global::System.Runtime.InteropServices.HandleRef getCPtr(SymmetryBreaker obj) {
26  return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
27  }
28 
29  protected override void Dispose(bool disposing) {
30  lock(this) {
31  if (swigCPtr.Handle != global::System.IntPtr.Zero) {
32  if (swigCMemOwn) {
33  swigCMemOwn = false;
35  }
36  swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
37  }
38  base.Dispose(disposing);
39  }
40  }
41 
42  public SymmetryBreaker() : this(operations_research_constraint_solverPINVOKE.new_SymmetryBreaker(), true) {
43  SwigDirectorConnect();
44  }
45 
46  public void AddIntegerVariableEqualValueClause(IntVar var, long value) {
48  }
49 
50  public void AddIntegerVariableGreaterOrEqualValueClause(IntVar var, long value) {
52  }
53 
54  public void AddIntegerVariableLessOrEqualValueClause(IntVar var, long value) {
56  }
57 
58  private void SwigDirectorConnect() {
59  if (SwigDerivedClassHasMethod("ToString", swigMethodTypes0))
60  swigDelegate0 = new SwigDelegateSymmetryBreaker_0(SwigDirectorMethodToString);
61  if (SwigDerivedClassHasMethod("VisitSetVariableValue", swigMethodTypes1))
62  swigDelegate1 = new SwigDelegateSymmetryBreaker_1(SwigDirectorMethodVisitSetVariableValue);
63  if (SwigDerivedClassHasMethod("VisitSplitVariableDomain", swigMethodTypes2))
64  swigDelegate2 = new SwigDelegateSymmetryBreaker_2(SwigDirectorMethodVisitSplitVariableDomain);
65  if (SwigDerivedClassHasMethod("VisitScheduleOrPostpone", swigMethodTypes3))
66  swigDelegate3 = new SwigDelegateSymmetryBreaker_3(SwigDirectorMethodVisitScheduleOrPostpone);
67  if (SwigDerivedClassHasMethod("VisitScheduleOrExpedite", swigMethodTypes4))
68  swigDelegate4 = new SwigDelegateSymmetryBreaker_4(SwigDirectorMethodVisitScheduleOrExpedite);
69  if (SwigDerivedClassHasMethod("VisitRankFirstInterval", swigMethodTypes5))
70  swigDelegate5 = new SwigDelegateSymmetryBreaker_5(SwigDirectorMethodVisitRankFirstInterval);
71  if (SwigDerivedClassHasMethod("VisitRankLastInterval", swigMethodTypes6))
72  swigDelegate6 = new SwigDelegateSymmetryBreaker_6(SwigDirectorMethodVisitRankLastInterval);
73  if (SwigDerivedClassHasMethod("VisitUnknownDecision", swigMethodTypes7))
74  swigDelegate7 = new SwigDelegateSymmetryBreaker_7(SwigDirectorMethodVisitUnknownDecision);
75  operations_research_constraint_solverPINVOKE.SymmetryBreaker_director_connect(swigCPtr, swigDelegate0, swigDelegate1, swigDelegate2, swigDelegate3, swigDelegate4, swigDelegate5, swigDelegate6, swigDelegate7);
76  }
77 
78  private bool SwigDerivedClassHasMethod(string methodName, global::System.Type[] methodTypes) {
79  global::System.Reflection.MethodInfo methodInfo = this.GetType().GetMethod(methodName, global::System.Reflection.BindingFlags.Public | global::System.Reflection.BindingFlags.NonPublic | global::System.Reflection.BindingFlags.Instance, null, methodTypes, null);
80  bool hasDerivedMethod = methodInfo.DeclaringType.IsSubclassOf(typeof(SymmetryBreaker));
81  return hasDerivedMethod;
82  }
83 
84  private string SwigDirectorMethodToString() {
85  return ToString();
86  }
87 
88  private void SwigDirectorMethodVisitSetVariableValue(global::System.IntPtr var, long value) {
89  VisitSetVariableValue((var == global::System.IntPtr.Zero) ? null : new IntVar(var, false), value);
90  }
91 
92  private void SwigDirectorMethodVisitSplitVariableDomain(global::System.IntPtr var, long value, bool start_with_lower_half) {
93  VisitSplitVariableDomain((var == global::System.IntPtr.Zero) ? null : new IntVar(var, false), value, start_with_lower_half);
94  }
95 
96  private void SwigDirectorMethodVisitScheduleOrPostpone(global::System.IntPtr var, long est) {
97  VisitScheduleOrPostpone((var == global::System.IntPtr.Zero) ? null : new IntervalVar(var, false), est);
98  }
99 
100  private void SwigDirectorMethodVisitScheduleOrExpedite(global::System.IntPtr var, long est) {
101  VisitScheduleOrExpedite((var == global::System.IntPtr.Zero) ? null : new IntervalVar(var, false), est);
102  }
103 
104  private void SwigDirectorMethodVisitRankFirstInterval(global::System.IntPtr sequence, int index) {
105  VisitRankFirstInterval((sequence == global::System.IntPtr.Zero) ? null : new SequenceVar(sequence, false), index);
106  }
107 
108  private void SwigDirectorMethodVisitRankLastInterval(global::System.IntPtr sequence, int index) {
109  VisitRankLastInterval((sequence == global::System.IntPtr.Zero) ? null : new SequenceVar(sequence, false), index);
110  }
111 
112  private void SwigDirectorMethodVisitUnknownDecision() {
114  }
115 
116  public delegate string SwigDelegateSymmetryBreaker_0();
117  public delegate void SwigDelegateSymmetryBreaker_1(global::System.IntPtr var, long value);
118  public delegate void SwigDelegateSymmetryBreaker_2(global::System.IntPtr var, long value, bool start_with_lower_half);
119  public delegate void SwigDelegateSymmetryBreaker_3(global::System.IntPtr var, long est);
120  public delegate void SwigDelegateSymmetryBreaker_4(global::System.IntPtr var, long est);
121  public delegate void SwigDelegateSymmetryBreaker_5(global::System.IntPtr sequence, int index);
122  public delegate void SwigDelegateSymmetryBreaker_6(global::System.IntPtr sequence, int index);
123  public delegate void SwigDelegateSymmetryBreaker_7();
124 
125  private SwigDelegateSymmetryBreaker_0 swigDelegate0;
126  private SwigDelegateSymmetryBreaker_1 swigDelegate1;
127  private SwigDelegateSymmetryBreaker_2 swigDelegate2;
128  private SwigDelegateSymmetryBreaker_3 swigDelegate3;
129  private SwigDelegateSymmetryBreaker_4 swigDelegate4;
130  private SwigDelegateSymmetryBreaker_5 swigDelegate5;
131  private SwigDelegateSymmetryBreaker_6 swigDelegate6;
132  private SwigDelegateSymmetryBreaker_7 swigDelegate7;
133 
134  private static global::System.Type[] swigMethodTypes0 = new global::System.Type[] { };
135  private static global::System.Type[] swigMethodTypes1 = new global::System.Type[] { typeof(IntVar), typeof(long) };
136  private static global::System.Type[] swigMethodTypes2 = new global::System.Type[] { typeof(IntVar), typeof(long), typeof(bool) };
137  private static global::System.Type[] swigMethodTypes3 = new global::System.Type[] { typeof(IntervalVar), typeof(long) };
138  private static global::System.Type[] swigMethodTypes4 = new global::System.Type[] { typeof(IntervalVar), typeof(long) };
139  private static global::System.Type[] swigMethodTypes5 = new global::System.Type[] { typeof(SequenceVar), typeof(int) };
140  private static global::System.Type[] swigMethodTypes6 = new global::System.Type[] { typeof(SequenceVar), typeof(int) };
141  private static global::System.Type[] swigMethodTypes7 = new global::System.Type[] { };
142 }
143 
144 }
Definition: IntVar.cs:18
delegate string SwigDelegateSymmetryBreaker_0()
override void Dispose(bool disposing)
delegate void SwigDelegateSymmetryBreaker_5(global::System.IntPtr sequence, int index)
delegate void SwigDelegateSymmetryBreaker_2(global::System.IntPtr var, long value, bool start_with_lower_half)
static void SymmetryBreaker_AddIntegerVariableGreaterOrEqualValueClause(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, long jarg3)
static void SymmetryBreaker_director_connect(global::System.Runtime.InteropServices.HandleRef jarg1, SymmetryBreaker.SwigDelegateSymmetryBreaker_0 delegate0, SymmetryBreaker.SwigDelegateSymmetryBreaker_1 delegate1, SymmetryBreaker.SwigDelegateSymmetryBreaker_2 delegate2, SymmetryBreaker.SwigDelegateSymmetryBreaker_3 delegate3, SymmetryBreaker.SwigDelegateSymmetryBreaker_4 delegate4, SymmetryBreaker.SwigDelegateSymmetryBreaker_5 delegate5, SymmetryBreaker.SwigDelegateSymmetryBreaker_6 delegate6, SymmetryBreaker.SwigDelegateSymmetryBreaker_7 delegate7)
static global::System.IntPtr SymmetryBreaker_SWIGUpcast(global::System.IntPtr jarg1)
static void delete_SymmetryBreaker(global::System.Runtime.InteropServices.HandleRef jarg1)
static void SymmetryBreaker_AddIntegerVariableEqualValueClause(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, long jarg3)
SymmetryBreaker()
void AddIntegerVariableEqualValueClause(IntVar var, long value)
using System
Definition: Program.cs:14
virtual void VisitRankFirstInterval(SequenceVar sequence, int index)
delegate void SwigDelegateSymmetryBreaker_3(global::System.IntPtr var, long est)
delegate void SwigDelegateSymmetryBreaker_1(global::System.IntPtr var, long value)
bool swigCMemOwn
Definition: BaseObject.cs:20
static void SymmetryBreaker_AddIntegerVariableLessOrEqualValueClause(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, long jarg3)
virtual void VisitScheduleOrPostpone(IntervalVar var, long est)
virtual void VisitSplitVariableDomain(IntVar var, long value, bool start_with_lower_half)
delegate void SwigDelegateSymmetryBreaker_7()
delegate void SwigDelegateSymmetryBreaker_4(global::System.IntPtr var, long est)
virtual void VisitUnknownDecision()
virtual string ToString()
Definition: BaseObject.cs:55
delegate void SwigDelegateSymmetryBreaker_6(global::System.IntPtr sequence, int index)
virtual void VisitRankLastInterval(SequenceVar sequence, int index)
void AddIntegerVariableGreaterOrEqualValueClause(IntVar var, long value)
virtual void VisitSetVariableValue(IntVar var, long value)
virtual void VisitScheduleOrExpedite(IntervalVar var, long est)
void AddIntegerVariableLessOrEqualValueClause(IntVar var, long value)