Ipopt  3.11.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
IpAlgBuilder.hpp
Go to the documentation of this file.
1 // Copyright (C) 2004, 2007 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // $Id: IpAlgBuilder.hpp 1861 2010-12-21 21:34:47Z andreasw $
6 //
7 // Authors: Carl Laird, Andreas Waechter IBM 2004-09-29
8 
9 #ifndef __IPALGBUILDER_HPP__
10 #define __IPALGBUILDER_HPP__
11 
12 #include "IpIpoptAlg.hpp"
13 #include "IpReferenced.hpp"
14 #include "IpAugSystemSolver.hpp"
15 
16 namespace Ipopt
17 {
18 
33  {
34  public:
38  AlgorithmBuilder(SmartPtr<AugSystemSolver> custom_solver=NULL);
39 
42  {}
43 
45 
48  virtual void BuildIpoptObjects(const Journalist& jnlst,
49  const OptionsList& options,
50  const std::string& prefix,
51  const SmartPtr<NLP>& nlp,
52  SmartPtr<IpoptNLP>& ip_nlp,
53  SmartPtr<IpoptData>& ip_data,
55 
57  const OptionsList& options,
58  const std::string& prefix);
60 
64  static void RegisterOptions(SmartPtr<RegisteredOptions> roptions);
66 
67  private:
77  //AlgorithmBuilder();
78 
81 
83  void operator=(const AlgorithmBuilder&);
85 
90 
91  };
92 } // namespace Ipopt
93 
94 #endif