external_packages/qpOASES-3.2.0/include/qpOASES/MessageHandling.hpp
Go to the documentation of this file.
1 /*
2  * This file is part of qpOASES.
3  *
4  * qpOASES -- An Implementation of the Online Active Set Strategy.
5  * Copyright (C) 2007-2015 by Hans Joachim Ferreau, Andreas Potschka,
6  * Christian Kirches et al. All rights reserved.
7  *
8  * qpOASES is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2.1 of the License, or (at your option) any later version.
12  *
13  * qpOASES is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16  * See the GNU Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with qpOASES; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21  *
22  */
23 
24 
35 #ifndef QPOASES_MESSAGEHANDLING_HPP
36 #define QPOASES_MESSAGEHANDLING_HPP
37 
38 
39 #include <stdio.h>
40 #include <string.h>
41 
42 #ifdef __DEBUG__
43 #include <assert.h>
44 #endif
45 
46 #include <qpOASES/Constants.hpp>
47 
48 
50 
51 
53 extern FILE* stdFile;
54 
55 
65 {
67 /* miscellaneous */
80 /* Indexlist */
87 /* SubjectTo / Bounds / Constraints */
99 /* QProblem */
196 /* SQProblem */
199 /* Utils */
204 /* Options */
206 /* SolutionAnalysis */
208 /* Benchmark */
215 /* Sparse matrices */
218 /* Dropping of infeasible constraints */
220 /* Schur complement computations */
225 /* Simple exitflags */
231 };
232 
233 
244 class MessageHandling
245 {
246  /*
247  * INTERNAL DATA STRUCTURES
248  */
249  public:
257  typedef struct {
258  returnValue key;
259  const char* data;
260  VisibilityStatus globalVisibilityStatus;
262  } ReturnValueList;
263 
264 
265  /*
266  * PUBLIC MEMBER FUNCTIONS
267  */
268  public:
270  MessageHandling( );
271 
273  MessageHandling( FILE* _outputFile
274  );
275 
277  MessageHandling( VisibilityStatus _errorVisibility,
278  VisibilityStatus _warningVisibility,
279  VisibilityStatus _infoVisibility
280  );
281 
283  MessageHandling( FILE* _outputFile,
284  VisibilityStatus _errorVisibility,
285  VisibilityStatus _warningVisibility,
286  VisibilityStatus _infoVisibility
287  );
288 
291  );
292 
294  ~MessageHandling( );
295 
298  );
299 
300 
308  const char* additionaltext,
309  const char* functionname,
310  const char* filename,
311  const unsigned long linenumber,
312  VisibilityStatus localVisibilityStatus
315  );
316 
322  const char* additionaltext,
323  const char* functionname,
324  const char* filename,
325  const unsigned long linenumber,
326  VisibilityStatus localVisibilityStatus
329  );
330 
335  const char* additionaltext,
336  const char* functionname,
337  const char* filename,
338  const unsigned long linenumber,
339  VisibilityStatus localVisibilityStatus
342  );
343 
344 
347  returnValue reset( );
348 
349 
353 
354 
358 
362 
366 
369  inline FILE* getOutputFile( ) const;
370 
373  inline int_t getErrorCount( ) const;
374 
375 
377  inline void setErrorVisibilityStatus( VisibilityStatus _errorVisibility
378  );
379 
381  inline void setWarningVisibilityStatus( VisibilityStatus _warningVisibility
382  );
383 
385  inline void setInfoVisibilityStatus( VisibilityStatus _infoVisibility
386  );
387 
389  inline void setOutputFile( FILE* _outputFile
390  );
391 
395  inline returnValue setErrorCount( int_t _errorCount
396  );
397 
400  static const char* getErrorCodeMessage( const returnValue _returnValue
401  );
402 
403 
404  /*
405  * PROTECTED MEMBER FUNCTIONS
406  */
407  protected:
412  returnValue RETnumber,
413  const char* additionaltext,
414  const char* functionname,
415  const char* filename,
416  const unsigned long linenumber,
417  VisibilityStatus localVisibilityStatus,
420  const char* RETstring
421  );
422 
423 
424  /*
425  * PROTECTED MEMBER VARIABLES
426  */
427  protected:
432  FILE* outputFile;
435 };
436 
437 
438 #ifndef __FILE__
439 
440  #define __FILE__ 0
441 #endif
442 
443 #ifndef __LINE__
444 
445  #define __LINE__ 0
446 #endif
447 
449 /*#define __FUNC__ 0*/
450 #define __FUNC__ ("(no function name provided)")
451 /*#define __FUNC__ __func__*/
452 /*#define __FUNC__ __FUNCTION__*/
453 
454 
456 #define THROWERROR(retval) ( getGlobalMessageHandler( )->throwError((retval),0,__FUNC__,__FILE__,__LINE__,VS_VISIBLE) )
457 
459 #define THROWWARNING(retval) ( getGlobalMessageHandler( )->throwWarning((retval),0,__FUNC__,__FILE__,__LINE__,VS_VISIBLE) )
460 
462 #define THROWINFO(retval) ( getGlobalMessageHandler( )->throwInfo((retval),0,__FUNC__,__FILE__,__LINE__,VS_VISIBLE) )
463 
464 
469 
470 
472 
473 #include <qpOASES/MessageHandling.ipp>
474 
475 #endif /* QPOASES_MESSAGEHANDLING_HPP */
476 
477 
478 /*
479  * end of file
480  */
BEGIN_NAMESPACE_QPOASES FILE * stdFile
returnValue throwError(returnValue Enumber, const char *additionaltext, const char *functionname, const char *filename, const unsigned long linenumber, VisibilityStatus localVisibilityStatus)
VisibilityStatus getInfoVisibilityStatus() const
VisibilityStatus getErrorVisibilityStatus() const
returnValue throwInfo(returnValue Inumber, const char *additionaltext, const char *functionname, const char *filename, const unsigned long linenumber, VisibilityStatus localVisibilityStatus)
Allows to pass back messages to the calling function.
VisibilityStatus getWarningVisibilityStatus() const
void setOutputFile(myFILE *_outputFile)
returnValue throwWarning(returnValue Wnumber, const char *additionaltext, const char *functionname, const char *filename, const unsigned long linenumber, VisibilityStatus localVisibilityStatus)
static const char * getErrorCodeMessage(const returnValue _returnValue)
void setInfoVisibilityStatus(VisibilityStatus _infoVisibility)
returnValue setErrorCount(int _errorCount)
Handles all kind of error messages, warnings and other information.
Data structure for entries in returnValueList.
int getErrorCount() const
void rhs(const real_t *x, real_t *f)
void setErrorVisibilityStatus(VisibilityStatus _errorVisibility)
myFILE * getOutputFile() const
returnValue throwMessage(returnValue RETnumber, const char *additionaltext, const char *functionname, const char *filename, const unsigned long linenumber, VisibilityStatus localVisibilityStatus, const char *RETstring)
void setWarningVisibilityStatus(VisibilityStatus _warningVisibility)


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Mon Jun 10 2019 12:34:53