Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00033 #ifndef ACADO_TOOLKIT_OPTIONS_HPP
00034 #define ACADO_TOOLKIT_OPTIONS_HPP
00035
00036 #include <acado/utils/acado_utils.hpp>
00037 #include <acado/user_interaction/options_list.hpp>
00038
00039 BEGIN_NAMESPACE_ACADO
00040
00065 class Options
00066 {
00067 friend class AlgorithmicBase;
00068
00069
00070
00071
00072 public:
00073
00076 Options( );
00077
00082 Options( const OptionsList& _optionsList
00083 );
00084
00087 virtual ~Options( );
00088
00093 returnValue addOptionsList( );
00094
00095
00104 returnValue get( OptionsName name,
00105 int& value
00106 ) const;
00107
00116 returnValue get( OptionsName name,
00117 double& value
00118 ) const;
00119
00128 returnValue get( OptionsName name,
00129 std::string& value
00130 ) const;
00131
00143 returnValue get( uint idx,
00144 OptionsName name,
00145 int& value
00146 ) const;
00147
00159 returnValue get( uint idx,
00160 OptionsName name,
00161 double& value
00162 ) const;
00163
00175 returnValue get( uint idx,
00176 OptionsName name,
00177 std::string& value
00178 ) const;
00179
00189 returnValue set( OptionsName name,
00190 int value
00191 );
00192
00202 returnValue set( OptionsName name,
00203 double value
00204 );
00205
00215 returnValue set( OptionsName name,
00216 const std::string& value
00217 );
00218
00231 returnValue set( uint idx,
00232 OptionsName name,
00233 int value
00234 );
00235
00248 returnValue set( uint idx,
00249 OptionsName name,
00250 double value
00251 );
00252
00265 returnValue set( uint idx,
00266 OptionsName name,
00267 const std::string& value
00268 );
00269
00270
00280 returnValue setOptions( const Options &arg
00281 );
00282
00291 returnValue setOptions( uint idx,
00292 const Options &arg
00293 );
00294
00301 Options getOptions( uint idx
00302 ) const;
00303
00304
00309 uint getNumOptionsLists( ) const;
00310
00311
00316 returnValue printOptionsList( ) const;
00317
00324 returnValue printOptionsList( uint idx
00325 ) const;
00326
00327
00328
00329
00330
00331
00332 protected:
00333
00339 virtual returnValue setupOptions( );
00340
00341
00346 returnValue clearOptionsList( );
00347
00348
00354 BooleanType haveOptionsChanged( ) const;
00355
00363 BooleanType haveOptionsChanged( uint idx
00364 ) const;
00365
00366
00371 returnValue declareOptionsUnchanged( );
00372
00379 returnValue declareOptionsUnchanged( uint idx
00380 );
00381
00382
00392 returnValue addOption( OptionsName name,
00393 int value
00394 );
00395
00405 returnValue addOption( OptionsName name,
00406 double value
00407 );
00408
00418 returnValue addOption( OptionsName name,
00419 const std::string& value
00420 );
00421
00433 returnValue addOption( uint idx,
00434 OptionsName name,
00435 int value
00436 );
00437
00449 returnValue addOption( uint idx,
00450 OptionsName name,
00451 double value
00452 );
00453
00465 returnValue addOption( uint idx,
00466 OptionsName name,
00467 const std::string& value
00468 );
00469
00470
00471
00472
00473 protected:
00474
00476 std::vector< OptionsList > lists;
00477 };
00478
00479 CLOSE_NAMESPACE_ACADO
00480
00481 #endif // ACADO_TOOLKIT_OPTIONS_HPP
00482
00483
00484
00485