00001 // Copyright (C) 2005, 2007 International Business Machines and others. 00002 // All Rights Reserved. 00003 // This code is published under the Common Public License. 00004 // 00005 // $Id: IpSearchDirCalculator.hpp 549 2005-10-24 21:49:13Z andreasw $ 00006 // 00007 // Authors: Andreas Waechter IBM 2005-10-13 00008 00009 #ifndef __IPSEARCHDIRCALCULATOR_HPP__ 00010 #define __IPSEARCHDIRCALCULATOR_HPP__ 00011 00012 #include "IpAlgStrategy.hpp" 00013 00014 namespace Ipopt 00015 { 00016 00020 class SearchDirectionCalculator : public AlgorithmStrategyObject 00021 { 00022 public: 00026 SearchDirectionCalculator() 00027 {} 00028 00030 virtual ~SearchDirectionCalculator() 00031 {} 00033 00035 virtual bool InitializeImpl(const OptionsList& options, 00036 const std::string& prefix) = 0; 00037 00040 virtual bool ComputeSearchDirection()=0; 00041 00042 private: 00052 // SearchDirectionCalculator(); 00053 00055 SearchDirectionCalculator(const SearchDirectionCalculator&); 00056 00058 void operator=(const SearchDirectionCalculator&); 00060 00061 }; 00062 00063 } // namespace Ipopt 00064 00065 #endif