qpOASES
3.1.1
|
00001 /* 00002 * This file is part of qpOASES. 00003 * 00004 * qpOASES -- An Implementation of the Online Active Set Strategy. 00005 * Copyright (C) 2007-2015 by Hans Joachim Ferreau, Andreas Potschka, 00006 * Christian Kirches et al. All rights reserved. 00007 * 00008 * qpOASES is free software; you can redistribute it and/or 00009 * modify it under the terms of the GNU Lesser General Public 00010 * License as published by the Free Software Foundation; either 00011 * version 2.1 of the License, or (at your option) any later version. 00012 * 00013 * qpOASES is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00016 * See the GNU Lesser General Public License for more details. 00017 * 00018 * You should have received a copy of the GNU Lesser General Public 00019 * License along with qpOASES; if not, write to the Free Software 00020 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00021 * 00022 */ 00023 00024 00036 #ifndef QPOASES_FLIPPER_HPP 00037 #define QPOASES_FLIPPER_HPP 00038 00039 00040 #include <qpOASES/Bounds.hpp> 00041 #include <qpOASES/Constraints.hpp> 00042 00043 00044 BEGIN_NAMESPACE_QPOASES 00045 00046 00057 class Flipper 00058 { 00059 friend class QProblemB; 00060 friend class QProblem; 00061 00062 /* 00063 * PUBLIC MEMBER FUNCTIONS 00064 */ 00065 public: 00067 Flipper( ); 00068 00070 Flipper( unsigned int _nV, 00071 unsigned int _nC = 0 00072 ); 00073 00075 Flipper( const Flipper& rhs 00076 ); 00077 00079 ~Flipper( ); 00080 00082 Flipper& operator=( const Flipper& rhs 00083 ); 00084 00085 00089 returnValue init( unsigned int _nV = 0, 00090 unsigned int _nC = 0 00091 ); 00092 00093 00096 returnValue get( Bounds* const _bounds, 00097 real_t* const R, 00098 Constraints* const _constraints = 0, 00099 real_t* const _Q = 0, 00100 real_t* const _T = 0 00101 ) const; 00102 00105 returnValue set( const Bounds* const _bounds, 00106 const real_t* const _R, 00107 const Constraints* const _constraints = 0, 00108 const real_t* const _Q = 0, 00109 const real_t* const _T = 0 00110 ); 00111 00112 00113 /* 00114 * PROTECTED MEMBER FUNCTIONS 00115 */ 00116 protected: 00119 returnValue clear( ); 00120 00123 returnValue copy( const Flipper& rhs 00124 ); 00125 00128 unsigned int getDimT( ) const; 00129 00130 00131 /* 00132 * PROTECTED MEMBER VARIABLES 00133 */ 00134 protected: 00135 unsigned int nV; 00136 unsigned int nC; 00138 Bounds bounds; 00139 Constraints constraints; 00141 real_t* R; 00142 real_t* Q; 00143 real_t* T; 00144 }; 00145 00146 00147 END_NAMESPACE_QPOASES 00148 00149 00150 #endif /* QPOASES_FLIPPER_HPP */ 00151 00152 00153 /* 00154 * end of file 00155 */