/build/buildd/clp-1.12.0/Clp/src/MyMessageHandler.hpp
Go to the documentation of this file.
00001 /* $Id: MyMessageHandler.hpp 1525 2010-02-26 17:27:59Z mjs $ */
00002 // Copyright (C) 2003, International Business Machines
00003 // Corporation and others.  All Rights Reserved.
00004 #ifndef MyMessageHandler_H
00005 #define MyMessageHandler_H
00006 
00007 #include <deque>
00008 
00009 #include "CoinPragma.hpp"
00010 #include <stdio.h>
00011 #include "CoinMessageHandler.hpp"
00012 
00021 class ClpSimplex;
00022 
00023 
00024 typedef std::vector<double> StdVectorDouble;
00025 
00026 class MyMessageHandler : public CoinMessageHandler {
00027 
00028 public:
00031      virtual int print();
00033 
00035 
00036      const ClpSimplex * model() const;
00037      void setModel(ClpSimplex * model);
00039      const std::deque<StdVectorDouble> & getFeasibleExtremePoints() const;
00041      void clearFeasibleExtremePoints();
00043 
00047      MyMessageHandler();
00049      MyMessageHandler(ClpSimplex * model,
00050                       FILE * userPointer = NULL);
00052      virtual ~MyMessageHandler();
00054 
00058      MyMessageHandler(const MyMessageHandler&);
00060      MyMessageHandler(const CoinMessageHandler&);
00061 
00062      MyMessageHandler& operator=(const MyMessageHandler&);
00064      virtual CoinMessageHandler * clone() const ;
00066 
00067 
00068 protected:
00072 
00073      ClpSimplex * model_;
00075      std::deque<StdVectorDouble> feasibleExtremePoints_;
00077      int iterationNumber_;
00079 };
00080 
00081 #endif