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
00027
00035 #ifndef ACADO_TOOLKIT_EXPORT_FUNCTION_CALL_HPP
00036 #define ACADO_TOOLKIT_EXPORT_FUNCTION_CALL_HPP
00037
00038 #include <acado/utils/acado_utils.hpp>
00039
00040 #include <acado/code_generation/export_statement.hpp>
00041 #include <acado/code_generation/export_function.hpp>
00042
00043
00044 BEGIN_NAMESPACE_ACADO
00045
00046
00047
00057 class ExportFunctionCall : public ExportStatement
00058 {
00059
00060
00061
00062 public:
00063
00078 ExportFunctionCall( const std::string& _name = "acadoFcn",
00079 const ExportArgument& _argument1 = emptyConstExportArgument,
00080 const ExportArgument& _argument2 = emptyConstExportArgument,
00081 const ExportArgument& _argument3 = emptyConstExportArgument,
00082 const ExportArgument& _argument4 = emptyConstExportArgument,
00083 const ExportArgument& _argument5 = emptyConstExportArgument,
00084 const ExportArgument& _argument6 = emptyConstExportArgument,
00085 const ExportArgument& _argument7 = emptyConstExportArgument,
00086 const ExportArgument& _argument8 = emptyConstExportArgument,
00087 const ExportArgument& _argument9 = emptyConstExportArgument
00088 );
00089
00104 ExportFunctionCall( const ExportFunction& _f,
00105 const ExportArgument& _argument1 = emptyConstExportArgument,
00106 const ExportArgument& _argument2 = emptyConstExportArgument,
00107 const ExportArgument& _argument3 = emptyConstExportArgument,
00108 const ExportArgument& _argument4 = emptyConstExportArgument,
00109 const ExportArgument& _argument5 = emptyConstExportArgument,
00110 const ExportArgument& _argument6 = emptyConstExportArgument,
00111 const ExportArgument& _argument7 = emptyConstExportArgument,
00112 const ExportArgument& _argument8 = emptyConstExportArgument,
00113 const ExportArgument& _argument9 = emptyConstExportArgument
00114 );
00115
00120 ExportFunctionCall( const ExportFunctionCall& arg
00121 );
00122
00125 virtual ~ExportFunctionCall( );
00126
00131 ExportFunctionCall& operator=( const ExportFunctionCall& arg
00132 );
00133
00138 virtual ExportStatement* clone( ) const;
00139
00140
00156 returnValue init( const std::string& _name = "defaultFunctionName",
00157 const ExportArgument& _argument1 = emptyConstExportArgument,
00158 const ExportArgument& _argument2 = emptyConstExportArgument,
00159 const ExportArgument& _argument3 = emptyConstExportArgument,
00160 const ExportArgument& _argument4 = emptyConstExportArgument,
00161 const ExportArgument& _argument5 = emptyConstExportArgument,
00162 const ExportArgument& _argument6 = emptyConstExportArgument,
00163 const ExportArgument& _argument7 = emptyConstExportArgument,
00164 const ExportArgument& _argument8 = emptyConstExportArgument,
00165 const ExportArgument& _argument9 = emptyConstExportArgument
00166 );
00167
00184 returnValue init( const ExportFunction& _f,
00185 const ExportArgument& _argument1 = emptyConstExportArgument,
00186 const ExportArgument& _argument2 = emptyConstExportArgument,
00187 const ExportArgument& _argument3 = emptyConstExportArgument,
00188 const ExportArgument& _argument4 = emptyConstExportArgument,
00189 const ExportArgument& _argument5 = emptyConstExportArgument,
00190 const ExportArgument& _argument6 = emptyConstExportArgument,
00191 const ExportArgument& _argument7 = emptyConstExportArgument,
00192 const ExportArgument& _argument8 = emptyConstExportArgument,
00193 const ExportArgument& _argument9 = emptyConstExportArgument
00194 );
00195
00196
00208 virtual returnValue exportCode( std::ostream& stream,
00209 const std::string& _realString = "real_t",
00210 const std::string& _intString = "int",
00211 int _precision = 16
00212 ) const;
00213
00214
00215
00216
00217
00218 protected:
00219
00224 returnValue clear( );
00225
00226
00233 returnValue setName( const std::string& _name
00234 );
00235
00236
00237 protected:
00238
00239 std::string name;
00240 ExportArgumentList functionArguments;
00241 };
00242
00243
00244 CLOSE_NAMESPACE_ACADO
00245
00246
00247 #endif // ACADO_TOOLKIT_EXPORT_STATEMENT_HPP
00248
00249