export_simulink_interface.hpp
Go to the documentation of this file.
00001 /*
00002  *    This file is part of ACADO Toolkit.
00003  *
00004  *    ACADO Toolkit -- A Toolkit for Automatic Control and Dynamic Optimization.
00005  *    Copyright (C) 2008-2014 by Boris Houska, Hans Joachim Ferreau,
00006  *    Milan Vukov, Rien Quirynen, KU Leuven.
00007  *    Developed within the Optimization in Engineering Center (OPTEC)
00008  *    under supervision of Moritz Diehl. All rights reserved.
00009  *
00010  *    ACADO Toolkit is free software; you can redistribute it and/or
00011  *    modify it under the terms of the GNU Lesser General Public
00012  *    License as published by the Free Software Foundation; either
00013  *    version 3 of the License, or (at your option) any later version.
00014  *
00015  *    ACADO Toolkit is distributed in the hope that it will be useful,
00016  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018  *    Lesser General Public License for more details.
00019  *
00020  *    You should have received a copy of the GNU Lesser General Public
00021  *    License along with ACADO Toolkit; if not, write to the Free Software
00022  *    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
00023  *
00024  */
00025 
00032 #ifndef ACADO_TOOLKIT_EXPORT_SIMULINK_INTERFACE_HPP
00033 #define ACADO_TOOLKIT_EXPORT_SIMULINK_INTERFACE_HPP
00034 
00035 #include <acado/code_generation/export_templated_file.hpp>
00036 
00037 BEGIN_NAMESPACE_ACADO
00038 
00047 class ExportSimulinkInterface
00048 {
00049 public:
00050 
00062         ExportSimulinkInterface(        const std::string& _makefileName,
00063                                                                 const std::string& _wrapperHeaderFileName,
00064                                                                 const std::string& _wrapperSourceFileName,
00065                                                                 const std::string& _moduleName = "acado",
00066                                                                 const std::string& _commonHeaderName = "",
00067                                                                 const std::string& _realString = "double",
00068                                                                 const std::string& _intString = "int",
00069                                                                 int _precision = 16,
00070                                                                 const std::string& _commentString = std::string()
00071                                                                 );
00072 
00074         virtual ~ExportSimulinkInterface()
00075         {}
00076 
00081         returnValue configure(  unsigned N,
00082                                                         unsigned NX,
00083                                                         unsigned NDX,
00084                                                         unsigned NXA,
00085                                                         unsigned NU,
00086                                                         unsigned NP,
00087                                                         unsigned NY,
00088                                                         unsigned NYN,
00089                                                         bool _initialStateFixed,
00090                                                         unsigned _wMatrixType,
00091                                                         bool _hardcodedConstraints,
00092                                                         bool _useArrivalCost,
00093                                                         bool _compCovMatrix,
00094                                                         std::string _qpSolver
00095                                                         );
00096 
00098         returnValue exportCode();
00099 
00100 private:
00101 
00102         ExportTemplatedFile makefile;
00103         ExportTemplatedFile wrapperSource;
00104         ExportTemplatedFile wrapperHeader;
00105         std::string moduleName;
00106 };
00107 
00108 CLOSE_NAMESPACE_ACADO
00109 
00110 #endif  // ACADO_TOOLKIT_EXPORT_SIMULINK_INTERFACE_HPP


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Thu Aug 27 2015 11:58:09