00001
00002
00003
00004
00005
00006
00007
00008
00009 package org.gecode;
00010
00025 public class SetVarView implements SetView {
00026 private long swigCPtr;
00027 protected boolean swigCMemOwn;
00028
00029 protected SetVarView(long cPtr, boolean cMemoryOwn) {
00030 swigCMemOwn = cMemoryOwn;
00031 swigCPtr = cPtr;
00032 }
00033
00034 protected static long getCPtr(SetVarView obj) {
00035 return (obj == null) ? 0 : obj.swigCPtr;
00036 }
00037
00038 protected void finalize() {
00039 delete();
00040 }
00041
00042 public void delete() {
00043 if(swigCPtr != 0 && swigCMemOwn) {
00044 swigCMemOwn = false;
00045 GecodeJNI.delete_SetVarView(swigCPtr);
00046 }
00047 swigCPtr = 0;
00048 }
00049
00050 public void subscribe(JavaSpace home, JavaPropagator p, PropCond pc) {
00051 if (!(pc instanceof SetPropCond))
00052 throw new IllegalArgumentException("PropCond argument not of type SetPropCond");
00053 subscribe_internal(home, p, pc.toInteger());
00054 }
00055 public void cancel(JavaSpace home, JavaPropagator p, PropCond pc) {
00056 if (!(pc instanceof SetPropCond))
00057 throw new IllegalArgumentException("PropCond argument not of type SetPropCond");
00058 cancel_internal(home, p, pc.toInteger());
00059 }
00060
00061 public SetVarView(JavaSpace home, SetVar i) {
00064 this(GecodeJNI.new_SetVarView(JavaSpace.getCPtr(home), SetVar.getCPtr(i)), true);
00065 }
00066
00067 public SetVarView copy(JavaSpace newHome, boolean share) {
00068 long cPtr = GecodeJNI.SetVarView_copy(swigCPtr, JavaSpace.getCPtr(newHome), share);
00069 return (cPtr == 0) ? null : new SetVarView(cPtr, true);
00070 }
00071
00072 public void subscribe_internal(JavaSpace home, JavaPropagator p, int pc) {
00073 GecodeJNI.SetVarView_subscribe_internal(swigCPtr, JavaSpace.getCPtr(home), JavaPropagator.getCPtr(p), pc);
00074 }
00075
00076 public void cancel_internal(JavaSpace home, JavaPropagator p, int pc) {
00077 GecodeJNI.SetVarView_cancel_internal(swigCPtr, JavaSpace.getCPtr(home), JavaPropagator.getCPtr(p), pc);
00078 }
00079
00080 public boolean assigned() {
00081 return GecodeJNI.SetVarView_assigned(swigCPtr);
00082 }
00083
00084 public long cardMin() {
00085 return GecodeJNI.SetVarView_cardMin__SWIG_0(swigCPtr);
00086 }
00087
00088 public long cardMax() {
00089 return GecodeJNI.SetVarView_cardMax__SWIG_0(swigCPtr);
00090 }
00091
00092 public int lubMin() {
00093 return GecodeJNI.SetVarView_lubMin(swigCPtr);
00094 }
00095
00096 public int lubMax() {
00097 return GecodeJNI.SetVarView_lubMax(swigCPtr);
00098 }
00099
00100 public int lubMinN(int n) {
00101 return GecodeJNI.SetVarView_lubMinN(swigCPtr, n);
00102 }
00103
00104 public int lubMaxN(int n) {
00105 return GecodeJNI.SetVarView_lubMaxN(swigCPtr, n);
00106 }
00107
00108 public int glbMin() {
00109 return GecodeJNI.SetVarView_glbMin(swigCPtr);
00110 }
00111
00112 public int glbMax() {
00113 return GecodeJNI.SetVarView_glbMax(swigCPtr);
00114 }
00115
00116 public long glbSize() {
00117 return GecodeJNI.SetVarView_glbSize(swigCPtr);
00118 }
00119
00120 public long lubSize() {
00121 return GecodeJNI.SetVarView_lubSize(swigCPtr);
00122 }
00123
00124 public long unknownSize() {
00125 return GecodeJNI.SetVarView_unknownSize(swigCPtr);
00126 }
00127
00128 public boolean contains(int i) {
00129 return GecodeJNI.SetVarView_contains(swigCPtr, i);
00130 }
00131
00132 public boolean notContains(int i) {
00133 return GecodeJNI.SetVarView_notContains(swigCPtr, i);
00134 }
00135
00136 public SetModEvent cardMin(JavaSpace home, long m) {
00137 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_cardMin__SWIG_1(swigCPtr, JavaSpace.getCPtr(home), m));
00138 }
00139
00140 public SetModEvent cardMax(JavaSpace home, long m) {
00141 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_cardMax__SWIG_1(swigCPtr, JavaSpace.getCPtr(home), m));
00142 }
00143
00144 public SetModEvent include(JavaSpace home, int i, int j) {
00145 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_include__SWIG_0(swigCPtr, JavaSpace.getCPtr(home), i, j));
00146 }
00147
00148 public SetModEvent exclude(JavaSpace home, int i, int j) {
00149 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_exclude__SWIG_0(swigCPtr, JavaSpace.getCPtr(home), i, j));
00150 }
00151
00152 public SetModEvent include(JavaSpace home, int i) {
00153 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_include__SWIG_1(swigCPtr, JavaSpace.getCPtr(home), i));
00154 }
00155
00156 public SetModEvent exclude(JavaSpace home, int i) {
00157 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_exclude__SWIG_1(swigCPtr, JavaSpace.getCPtr(home), i));
00158 }
00159
00160 public SetModEvent intersect(JavaSpace home, int i, int j) {
00161 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_intersect__SWIG_0(swigCPtr, JavaSpace.getCPtr(home), i, j));
00162 }
00163
00164 public SetModEvent intersect(JavaSpace home, int i) {
00165 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_intersect__SWIG_1(swigCPtr, JavaSpace.getCPtr(home), i));
00166 }
00167
00168 public SetModEvent exclude(JavaSpace home, RangeIterator iter) {
00169 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_exclude__SWIG_2(swigCPtr, JavaSpace.getCPtr(home), new IntSet(iter.toRanges())));
00170 }
00171
00172 public SetModEvent include(JavaSpace home, RangeIterator iter) {
00173 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_include__SWIG_2(swigCPtr, JavaSpace.getCPtr(home), new IntSet(iter.toRanges())));
00174 }
00175
00176 public SetModEvent intersect(JavaSpace home, RangeIterator iter) {
00177 return SetModEvent.swigToEnum(GecodeJNI.SetVarView_intersect__SWIG_2(swigCPtr, JavaSpace.getCPtr(home), new IntSet(iter.toRanges())));
00178 }
00179
00180 }