# SensBuilder.hpp

Go to the documentation of this file.

    00001 // Copyright 2009, 2011 Hans Pirnay
    00002 // All Rights Reserved.
    00003 // This code is published under the Eclipse Public License.
    00004 //
    00005 // Date   : 2009-05-10
    00006
    00007 #ifndef __ASSCHURBUILDER_HPP__
    00008 #define __ASSCHURBUILDER_HPP__
    00009
    00010
    00011 #include "IpReferenced.hpp"
    00012 #include "SensAlgorithm.hpp"
    00013 #include "IpPDSystemSolver.hpp"
    00014 #include "SensUtils.hpp"
    00015 #include "SensReducedHessianCalculator.hpp"
    00016
    00017
    00018 namespace Ipopt
    00019 {
    00020   DECLARE_STD_EXCEPTION(SENS_BUILDER_ERROR);
    00021
    00022   class SensBuilder : public ReferencedObject
    00023   {
    00027   public:
    00028     SensBuilder();
    00029
    00030     ~SensBuilder();
    00031
    00032     SmartPtr<SensAlgorithm> BuildSensAlg(const Journalist& jnlst,
    00033                                          const OptionsList& options,
    00034                                          const std::string& prefix,
    00035                                          IpoptNLP& ip_nlp,
    00036                                          IpoptData& ip_data,
    00037                                          IpoptCalculatedQuantities& ip_cq,
    00038                                          PDSystemSolver& pd_solver);
    00039
    00040     SmartPtr<ReducedHessianCalculator> BuildRedHessCalc(const Journalist& jnlst,
    00041                                                         const OptionsList& options,
    00042                                                         const std::string& prefix,
    00043                                                         IpoptNLP& ip_nlp,
    00044                                                         IpoptData& ip_data,
    00045                                                         IpoptCalculatedQuantities& ip_cq,
    00046                                                         PDSystemSolver& pd_solver);
    00047
    00048   private:
    00049
    00050   };
    00051
    00052 }
    00053
    00054 #endif

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines