14using System.Runtime.InteropServices;
 
   15using System.Collections;
 
   16using System.Collections.Generic;
 
   19  private global::System.Runtime.InteropServices.HandleRef swigCPtr;
 
   22    swigCPtr = 
new global::System.Runtime.InteropServices.HandleRef(
this, cPtr);
 
   25  internal static global::System.Runtime.InteropServices.HandleRef getCPtr(
ObjectiveMonitor obj) {
 
   26    return (obj == 
null) ? 
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero) : obj.swigCPtr;
 
   29  internal static global::System.Runtime.InteropServices.HandleRef swigRelease(ObjectiveMonitor obj) {
 
   32        throw new global::System.ApplicationException(
"Cannot release ownership as memory is not owned");
 
   33      global::System.Runtime.InteropServices.HandleRef ptr = obj.swigCPtr;
 
   34      obj.swigCMemOwn = 
false;
 
   38      return new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
 
   42  protected override void Dispose(
bool disposing) {
 
   44      if (swigCPtr.Handle != global::System.IntPtr.Zero) {
 
   49        swigCPtr = 
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
 
   51      base.Dispose(disposing);
 
   55  public ObjectiveMonitor(Solver 
solver, SWIGTYPE_p_std__vectorT_bool_t maximize, IntVarVector vars,  
long[]  steps) : this(operations_research_constraint_solverPINVOKE.new_ObjectiveMonitor(Solver.getCPtr(
solver), SWIGTYPE_p_std__vectorT_bool_t.getCPtr(maximize), IntVarVector.getCPtr(vars),  steps.Length, steps ), true) {
 
 
   56    if (operations_research_constraint_solverPINVOKE.SWIGPendingException.Pending) 
throw operations_research_constraint_solverPINVOKE.SWIGPendingException.Retrieve();
 
   61    IntVar ret = (cPtr == global::System.IntPtr.Zero) ? 
null : new 
IntVar(cPtr, false);
 
 
   67    IntVar ret = (cPtr == global::System.IntPtr.Zero) ? 
null : new 
IntVar(cPtr, false);
 
   71  public override long Step(
int index) {
 
 
   76  public override bool Maximize(
int index) {
 
 
   81  public override long BestValue(
int index) {
 
 
   86  public override int Size() {