/home/coin/SVN-release/Cbc-2.4.1/Cbc/src/CbcStatistics.hpp

Go to the documentation of this file.
00001 /* $Id: CbcStatistics.hpp 1271 2009-11-05 15:57:25Z forrest $ */
00002 // Copyright (C) 2005, International Business Machines
00003 // Corporation and others.  All Rights Reserved.
00004 #ifndef CbcStatistics_H
00005 #define CbcStatistics_H
00006 
00007 #include "CbcModel.hpp"
00008 
00011 class CbcStatistics {
00012 public:
00013   // Default Constructor 
00014   CbcStatistics ();
00015   // Branch
00016   CbcStatistics(CbcNode * node, CbcModel * model);
00017 
00018   ~CbcStatistics();
00019   // Copy
00020   CbcStatistics(const CbcStatistics & rhs);
00021   // Assignment
00022   CbcStatistics& operator=(const CbcStatistics & rhs);
00023   // Update at end of branch
00024   void endOfBranch(int numberIterations, double objectiveValue);
00025   // Update number of infeasibilities
00026   void updateInfeasibility(int numberInfeasibilities);
00027   // Branch found to be infeasible by chooseBranch
00028   void sayInfeasible();
00029   // Just prints
00030   void print(const int * sequenceLookup=NULL) const;
00031   // Node number
00032   inline int node() const
00033   { return id_;}
00034   // Parent node number
00035   inline int parentNode() const
00036   { return parentId_;}
00037   // depth
00038   inline int depth() const
00039   { return depth_;}
00040   // way
00041   inline int way() const
00042   { return way_;}
00043   // value
00044   inline double value() const
00045   { return value_;}
00046   // starting objective
00047   inline double startingObjective() const
00048   { return startingObjective_;}
00049   // Unsatisfied at beginning
00050   inline int startingInfeasibility() const
00051   { return startingInfeasibility_;}
00052   // starting objective
00053   inline double endingObjective() const
00054   { return endingObjective_;}
00055   // Unsatisfied at end
00056   inline int endingInfeasibility() const
00057   { return endingInfeasibility_;}
00058   // Number iterations
00059   inline int numberIterations() const
00060   { return numberIterations_;}
00061 
00062 protected:
00063   // Data
00065   double value_;
00067   double startingObjective_;
00069   double endingObjective_;
00071   int id_;
00073   int parentId_;
00075   int way_;
00077   int sequence_;
00079   int depth_;
00081   int startingInfeasibility_;
00083   int endingInfeasibility_;
00085   int numberIterations_;
00086 };
00087 
00088 #endif

Generated on Thu Apr 8 03:02:03 2010 by  doxygen 1.4.7