- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# /home/coin/SVN-release/Osi-0.98.1/Osi/src/OsiSym/SymWarmStart.hpp

Go to the documentation of this file.

    00001 /*===========================================================================*/
    00002 /*                                                                           */
    00003 /* This file is part of the SYMPHONY Branch, Cut, and Price Callable         */
    00004 /* Library.                                                                  */
    00005 /*                                                                           */
    00006 /* SYMPHONY was jointly developed by Ted Ralphs (tkralphs@lehigh.edu) and    */
    00007 /* Laci Ladanyi (ladanyi@us.ibm.com).                                        */
    00008 /*                                                                           */
    00009 /* (c) Copyright 2004-2006 Ted Ralphs and Lehigh University.                 */
    00010 /* All Rights Reserved.                                                      */
    00011 /*                                                                           */
    00012 /* The authors of this file are Menal Guzelsoy and Ted Ralphs                */
    00013 /*                                                                           */
    00014 /* This software is licensed under the Common Public License. Please see     */
    00015 /* accompanying file for terms.                                              */
    00016 /*                                                                           */
    00017 /*===========================================================================*/
    00018
    00019 #ifndef SymWarmStart_H
    00020 #define SymWarmStart_H
    00021
    00022 #include "CoinHelperFunctions.hpp"
    00023 #include "CoinWarmStart.hpp"
    00024 #include <iostream>
    00025 #include "symphony.h"
    00026
    00027 using namespace std;
    00028
    00029 //#############################################################################
    00030
    00031 class SymWarmStart : public CoinWarmStart
    00032 {
    00033
    00034 public:
    00035
    00036    /* Default constructor. Will do nothing! */
    00037    SymWarmStart(){}
    00038
    00039    /* Initialize the warmStart_ using the given warm start. If dominate
    00040       WarmStart is set, then, SymWarmStart will take the control of the
    00041       given description, otherwise, will copy everything.
    00042    */
    00043    SymWarmStart(warm_start_desc * ws);
    00044
    00045    /*Get the warmStart info from a file*/
    00046    SymWarmStart(char *f);
    00047
    00048    /* Copy constructor */
    00049    SymWarmStart(const SymWarmStart & symWS);
    00050
    00051    /* Destructor */
    00052    virtual ~SymWarmStart();
    00053
    00054    /* Clone the warmstart */
    00055    virtual CoinWarmStart * clone() const;
    00056
    00057    /* Get the pointer to the loaded warmStart_ */
    00058    virtual warm_start_desc * getCopyOfWarmStartDesc();
    00059
    00060    /* Move the pointer to the rootnode of the warmStart to another
    00061       node which will change the underlying tree
    00062    */
    00063    // virtual void setRoot(bc_node *root) {} //FIX_ME! Ask Prof. Ralphs.
    00064
    00065    /* Write the current warm start info to a file */
    00066    virtual int writeToFile(char * f);
    00067
    00068 private:
    00069
    00070    /* Private warm start desc. to keep everything */
    00071    warm_start_desc *warmStart_;
    00072
    00073 };
    00074
    00075 #endif