/home/coin/SVN-release/Ipopt-3.9.2/Ipopt/contrib/AsNMPC/src/AsMetadataMeasurement.hpp

Go to the documentation of this file.
00001 // Copyright 2009 Hans Pirnay
00002 // All Rights Reserved.
00003 // This code is published under the Eclipse Public License.
00004 //
00005 // Date   : 2009-07-10
00006 
00007 #ifndef __AS_METADATAMEASUREMENT_HPP__
00008 #define __AS_METADATAMEASUREMENT_HPP__
00009 
00010 #include "AsMeasurement.hpp"
00011 #include "AsSuffixHandler.hpp"
00012 #include "IpAlgStrategy.hpp"
00013 
00014 
00015 namespace Ipopt
00016 {
00017   
00018   class MetadataMeasurement : public Measurement, public SuffixHandler, public AlgorithmStrategyObject
00019   {
00020   public:
00021     MetadataMeasurement();
00022 
00023     virtual ~MetadataMeasurement();
00024 
00025     /* AlgorithmStrategyObject */
00026     virtual bool InitializeImpl(const OptionsList& options,
00027                                 const std::string& prefix);
00028 
00029     /* measurement methods */
00030     virtual std::vector<Index> GetInitialEqConstraints();
00031 
00032     virtual std::vector<Index> GetNmpcState(Index i);
00033 
00034     virtual SmartPtr<DenseVector> GetMeasurement(Index measurement_number);
00035 
00036     virtual void SetSolution(Index measurement_number, SmartPtr<IteratesVector> sol);    
00037 
00040     virtual std::vector<Index> GetIntegerSuffix(std::string suffix_string);
00041 
00042   private:
00043 
00045     Index n_idx_;
00046     
00047     std::string select_step_;
00049     SmartPtr<const DenseVectorSpace> x_owner_space_;
00051     SmartPtr<const DenseVectorSpace> s_owner_space_;
00053     SmartPtr<const DenseVectorSpace> y_c_owner_space_; 
00055     SmartPtr<const DenseVectorSpace> y_d_owner_space_; 
00057     SmartPtr<const DenseVectorSpace> z_L_owner_space_; 
00059     SmartPtr<const DenseVectorSpace> z_U_owner_space_; 
00060 
00061   };
00062 
00063 }
00064 
00065 #endif

Generated on Thu Dec 23 03:09:10 2010 by  doxygen 1.4.7